Banning Foreign Users in Hypergrid/de

From OpenSimulator

(Difference between revisions)
Jump to: navigation, search
(Created page with "{{Quicklinks|Banning_Foreign_Users_in_Hypergrid}} '''Please note that none of the mechanisms on this page are foolproof. Banning a specific IP address on the firewall may be...")
 
Line 1: Line 1:
 
{{Quicklinks|Banning_Foreign_Users_in_Hypergrid}}
 
{{Quicklinks|Banning_Foreign_Users_in_Hypergrid}}
  
'''Please note that none of the mechanisms on this page are foolproof. Banning a specific IP address on the firewall may be more effective, though then there is a danger of blocking large numbers of addresses hiding behind a NAT.'''
+
'''Bitte beachten Sie, dass keiner der Mechanismen auf dieser Seite narrensicher ist. Das Sperren einer bestimmten IP-Adresse auf der Firewall kann effektiver sein, obwohl dann die Gefahr besteht, dass eine große Anzahl von Adressen blockiert wird, die sich hinter einem NAT verstecken.'''
  
= Banning Foreign Users =
+
= Verbot ausländischer Benutzer =
  
'''It may now be possible to ban known Hypergrid user names (of the form Joe Bloggs@somegrid.net) directly in certain third party viewer dialogs. This needs to be ascertained.'''
+
'''Es ist jetzt möglicherweise möglich, bekannte Hypergrid-Benutzernamen (in der Form Joe Bloggs@somegrid.net) direkt in bestimmten Viewer-Dialogen von Drittanbietern zu sperren. Dies muss festgestellt werden.'''
Even though the current viewers are incapable of dealing with foreign users in the estate dialogs that they present to the user, it is possible to ban specific foreign users from your estates. For now, you have to do it on the backend, i.e. directly editing the database and reviewing the log. Not easy for the faint of heart, but any sys admin should be able to do this with their eyes shut. What follows are instructions for adding a foreign user to the estate's ban list.  
+
wenn die aktuellen Zuschauer nicht in der Lage sind, mit fremden Benutzern in den Nachlassdialogen umzugehen, die sie dem Benutzer präsentieren, ist es möglich, bestimmte ausländische Benutzer aus Ihren Nachlässen zu sperren. Im Moment müssen Sie dies im Backend tun, dh die Datenbank direkt bearbeiten und das Protokoll überprüfen. Nicht einfach für schwache Nerven, aber jeder Systemadministrator sollte in der Lage sein, dies mit geschlossenen Augen zu tun. Im Folgenden finden Sie Anweisungen zum Hinzufügen eines ausländischen Benutzers zur Sperrliste des Anwesens.
  
== Via the Database ==
+
== Über die Datenbank ==
  
'''Note that this relies on the foreign user not changing their UUID. This is difficult to do for an existing user but, of course, it is not hard to create a completely new account.'''
+
'''Beachten Sie, dass dies davon abhängt, dass der fremde Benutzer seine UUID nicht ändert. Dies ist für einen bestehenden Benutzer schwierig, aber natürlich ist es nicht schwierig, ein völlig neues Konto zu erstellen. '''
  
The first thing you need to do is to find out the UUID and IP address of the user you want to ban. For that you need to look at OpenSim.log. Search for log messages like this:
+
Das erste, was Sie tun müssen, ist, die UUID und die IP-Adresse des Benutzers herauszufinden, den Sie sperren möchten. Dazu müssen Sie sich OpenSim.log ansehen. Suchen Sie nach Protokollmeldungen wie diesen:
  
 
  2009-01-23 03:45:11,995 INFO  - OpenSim.Region.Communications.Hypergrid.HGGridServicesGridMode [HGrid]: Incoming HGrid Agent
 
  2009-01-23 03:45:11,995 INFO  - OpenSim.Region.Communications.Hypergrid.HGGridServicesGridMode [HGrid]: Incoming HGrid Agent
Line 19: Line 19:
 
  Annoying.Person http://problematic.domain.org:9002 c3c9ecbf-bfb3-43eb-8dce-140afad7995f (circuit code 1896255323)
 
  Annoying.Person http://problematic.domain.org:9002 c3c9ecbf-bfb3-43eb-8dce-140afad7995f (circuit code 1896255323)
  
In this case, the information you need is: UUID = c3c9ecbf-bfb3-43eb-8dce-140afad7995f and IPAddress = problematic.domain.org
+
In diesem Fall benötigen Sie folgende Informationen: UUID = c3c9ecbf-bfb3-43eb-8dce-140afad7995f und IPAddress = problematic.domain.org
  
Next, let's add this foreign user to the ban list. Note that the estate information and ban lists are kept at the region server, not in the Robust services. If you are using local storage for your regions, this information is stored in bin/OpenSim.db. So, open that DB with whatever tool you use to access your DBs. The instructions here assume a local sqlite database; if you're using MySql or other DB technologies for the regions' storage, the instructions are almost identical, but may need adjustments.
+
Als Nächstes fügen wir diesen fremden Benutzer der Sperrliste hinzu. Beachten Sie, dass die Grundstücksinformationen und Sperrlisten auf dem Regionsserver gespeichert werden, nicht in den Robust-Diensten. Wenn Sie lokalen Speicher für Ihre Regionen verwenden, werden diese Informationen in bin/OpenSim.db gespeichert. Öffnen Sie diese DB also mit einem beliebigen Tool, mit dem Sie auf Ihre DBs zugreifen. Die Anweisungen hier gehen von einer lokalen SQLite-Datenbank aus; Wenn Sie MySql oder andere DB-Technologien für die Speicherung der Regionen verwenden, sind die Anweisungen fast identisch, müssen jedoch möglicherweise angepasst werden.
  
SqlLite usually comes with a common Linux installation. In Linux, just type:
+
SqlLite wird normalerweise mit einer gewöhnlichen Linux-Installation geliefert. Geben Sie unter Linux einfach Folgendes ein:
  
 
   $ sqlite3 OpenSim.db
 
   $ sqlite3 OpenSim.db
  
In Windows, you need to get it from [http://www.sqlite.org/download.html here]. Once installed, run it on your OpenSim.db, like this, for example (on a command shell):
+
Unter Windows müssen Sie es von [http://www.sqlite.org/download.html hier]. Führen Sie es nach der Installation auf Ihrer OpenSim.db aus, z. B. wie folgt (auf einer Befehlsshell):
  
 
   $ C:/Opt/SQLite3/sqlite3.exe OpenSim.db
 
   $ C:/Opt/SQLite3/sqlite3.exe OpenSim.db
  
Once you are connected to the database, you can explore as much as you want. What follows are the concrete interactions you need for adding that foreign user into an estate ban list. Change the data for your situation.
+
Sobald Sie mit der Datenbank verbunden sind, können Sie so viel erkunden, wie Sie möchten. Was folgt, sind die konkreten Interaktionen, die Sie benötigen, um diesen fremden Benutzer zu einer Grundstücksverbotsliste hinzuzufügen. Ändern Sie die Daten für Ihre Situation.
  
 
  [opensim@ucigrid04 bin]$ sqlite3 OpenSim.db
 
  [opensim@ucigrid04 bin]$ sqlite3 OpenSim.db
Line 66: Line 66:
 
  sqlite> .quit
 
  sqlite> .quit
  
Once this data is entered you need to restart OpenSim, so that it gets loaded.
+
Sobald diese Daten eingegeben sind, müssen Sie OpenSim neu starten, damit es geladen wird.
  
== On the Network Level ==
+
== Auf Netzwerkebene ==
  
'''Note: This is a ban by MAC address on the firewall level. It is possible for advanced users to change their MAC address.'''
+
'''Hinweis: Dies ist ein Verbot nach MAC-Adresse auf Firewall-Ebene. Fortgeschrittene Benutzer können ihre MAC-Adresse ändern.'''
  
The following guide is an excerpt from the [http://was.fm/opensim:banning_agents full article at Wizardry and Steamworks]. The principle is that all viewers are meant to send a MAC address that is hashed using a hex digest algorithm. Since under linux iptables understands only MAC addresses, we can use ipt_string to match the MAC address.
+
Die folgende Anleitung ist ein Auszug aus dem [http://was.fm/opensim:banning_agents full article at Wizardry and Steamworks]. Das Prinzip ist, dass alle Zuschauer eine MAC-Adresse senden sollen, die mit einem Hex-Digest-Algorithmus gehasht wird. Da iptables unter Linux nur MAC-Adressen versteht, können wir ipt_string verwenden, um die MAC-Adresse abzugleichen.
  
For example, when a user connects to a grid, whether it is a direct login or a hypergrid teleport, a string like the following is displayed:
+
Wenn sich ein Benutzer beispielsweise mit einem Grid verbindet, unabhängig davon, ob es sich um eine direkte Anmeldung oder einen Hypergrid-Teleport handelt, wird eine Zeichenfolge wie die folgende angezeigt:
  
 
<pre>
 
<pre>
Line 87: Line 87:
 
</pre>
 
</pre>
  
the segment that reads '''d6812bb4d7625027d53c2e9715410caf''' is the hashed MAC address which gets sent by the viewer.
+
Das Segment, das '''d6812bb4d7625027d53c2e9715410caf''' liest, ist die gehashte MAC-Adresse, die vom Betrachter gesendet wird.
 +
 
 +
Wir können das mit iptables blockieren:
  
We can block that with iptables:
 
 
<pre>
 
<pre>
 
iptables -A INPUT -m string --string 'd6812bb4d7625027d53c2e9715410caf' --algo bm -p tcp --dport 9000 -j DROP
 
iptables -A INPUT -m string --string 'd6812bb4d7625027d53c2e9715410caf' --algo bm -p tcp --dport 9000 -j DROP
 
</pre>
 
</pre>
  
Additionally, we can even block the agent using their firstname and lastname:
+
Darüber hinaus können wir den Agenten sogar anhand seines Vor- und Nachnamens blockieren:
 
<pre>
 
<pre>
 
iptables -A INPUT -m string --string 'Jaine' --algo bm -m string --string 'Mariolack' --algo bm -p tcp --dport 9000 -j DROP
 
iptables -A INPUT -m string --string 'Jaine' --algo bm -m string --string 'Mariolack' --algo bm -p tcp --dport 9000 -j DROP
 
</pre>
 
</pre>
  
The result is that the viewer will time-out while trying to teleport or while logging in.
+
Das Ergebnis ist, dass der Betrachter beim Versuch, sich zu teleportieren oder sich anzumelden, eine Zeitüberschreitung erleidet.
  
 
[[Category:Hypergrid]]
 
[[Category:Hypergrid]]
 
[[Category:German Translations]]
 
[[Category:German Translations]]

Revision as of 09:04, 19 May 2022

Bitte beachten Sie, dass keiner der Mechanismen auf dieser Seite narrensicher ist. Das Sperren einer bestimmten IP-Adresse auf der Firewall kann effektiver sein, obwohl dann die Gefahr besteht, dass eine große Anzahl von Adressen blockiert wird, die sich hinter einem NAT verstecken.

Verbot ausländischer Benutzer

Es ist jetzt möglicherweise möglich, bekannte Hypergrid-Benutzernamen (in der Form Joe Bloggs@somegrid.net) direkt in bestimmten Viewer-Dialogen von Drittanbietern zu sperren. Dies muss festgestellt werden. wenn die aktuellen Zuschauer nicht in der Lage sind, mit fremden Benutzern in den Nachlassdialogen umzugehen, die sie dem Benutzer präsentieren, ist es möglich, bestimmte ausländische Benutzer aus Ihren Nachlässen zu sperren. Im Moment müssen Sie dies im Backend tun, dh die Datenbank direkt bearbeiten und das Protokoll überprüfen. Nicht einfach für schwache Nerven, aber jeder Systemadministrator sollte in der Lage sein, dies mit geschlossenen Augen zu tun. Im Folgenden finden Sie Anweisungen zum Hinzufügen eines ausländischen Benutzers zur Sperrliste des Anwesens.

Über die Datenbank

Beachten Sie, dass dies davon abhängt, dass der fremde Benutzer seine UUID nicht ändert. Dies ist für einen bestehenden Benutzer schwierig, aber natürlich ist es nicht schwierig, ein völlig neues Konto zu erstellen.

Das erste, was Sie tun müssen, ist, die UUID und die IP-Adresse des Benutzers herauszufinden, den Sie sperren möchten. Dazu müssen Sie sich OpenSim.log ansehen. Suchen Sie nach Protokollmeldungen wie diesen:

2009-01-23 03:45:11,995 INFO  - OpenSim.Region.Communications.Hypergrid.HGGridServicesGridMode [HGrid]: Incoming HGrid Agent
Annoying.Person http://problematic.domain.org:9002
2009-01-23 03:45:11,995 DEBUG - OpenSim.Region.Environment.Scenes.Scene [CONNECTION BEGIN]: Region Gateway 3000 told of incoming client
Annoying.Person http://problematic.domain.org:9002 c3c9ecbf-bfb3-43eb-8dce-140afad7995f (circuit code 1896255323)

In diesem Fall benötigen Sie folgende Informationen: UUID = c3c9ecbf-bfb3-43eb-8dce-140afad7995f und IPAddress = problematic.domain.org

Als Nächstes fügen wir diesen fremden Benutzer der Sperrliste hinzu. Beachten Sie, dass die Grundstücksinformationen und Sperrlisten auf dem Regionsserver gespeichert werden, nicht in den Robust-Diensten. Wenn Sie lokalen Speicher für Ihre Regionen verwenden, werden diese Informationen in bin/OpenSim.db gespeichert. Öffnen Sie diese DB also mit einem beliebigen Tool, mit dem Sie auf Ihre DBs zugreifen. Die Anweisungen hier gehen von einer lokalen SQLite-Datenbank aus; Wenn Sie MySql oder andere DB-Technologien für die Speicherung der Regionen verwenden, sind die Anweisungen fast identisch, müssen jedoch möglicherweise angepasst werden.

SqlLite wird normalerweise mit einer gewöhnlichen Linux-Installation geliefert. Geben Sie unter Linux einfach Folgendes ein:

 $ sqlite3 OpenSim.db

Unter Windows müssen Sie es von hier. Führen Sie es nach der Installation auf Ihrer OpenSim.db aus, z. B. wie folgt (auf einer Befehlsshell):

 $ C:/Opt/SQLite3/sqlite3.exe OpenSim.db

Sobald Sie mit der Datenbank verbunden sind, können Sie so viel erkunden, wie Sie möchten. Was folgt, sind die konkreten Interaktionen, die Sie benötigen, um diesen fremden Benutzer zu einer Grundstücksverbotsliste hinzuzufügen. Ändern Sie die Daten für Ihre Situation.

[opensim@ucigrid04 bin]$ sqlite3 OpenSim.db
  SQLite version 3.3.6
  Enter ".help" for instructions
sqlite> .tables
  estate_groups    estate_users     migrations       regionban
  estate_managers  estateban        primitems        regionsettings
  estate_map       land             prims            terrain
  estate_settings  landaccesslist   primshapes
sqlite> .schema estateban
  CREATE TABLE estateban (
     EstateID int(10) NOT NULL,
     bannedUUID varchar(36) NOT NULL,
     bannedIp varchar(16) NOT NULL,
     bannedIpHostMask varchar(16) NOT NULL,
     bannedNameMask varchar(64) default NULL
  );
  CREATE INDEX estate_ban_estate_id on estateban(EstateID);
sqlite> select EstateID, EstateName from estate_settings;
  100|My Estate
  101|My Estate
  102|My Estate
  103|My Estate
sqlite> insert into estateban values (100, 'c3c9ecbf-bfb3-43eb-8dce-140afad7995f', 'problematic.domain.org', ' ', ' ');
sqlite> insert into estateban values (101, 'c3c9ecbf-bfb3-43eb-8dce-140afad7995f', 'problematic.domain.org', ' ', ' ');
sqlite> insert into estateban values (102, 'c3c9ecbf-bfb3-43eb-8dce-140afad7995f', 'problematic.domain.org', ' ', ' ');
sqlite> insert into estateban values (103, 'c3c9ecbf-bfb3-43eb-8dce-140afad7995f', 'problematic.domain.org', ' ', ' ');
sqlite> select * from estateban;
  100|c3c9ecbf-bfb3-43eb-8dce-140afad7995f|problematic.domain.org||
  101|c3c9ecbf-bfb3-43eb-8dce-140afad7995f|problematic.domain.org||
  102|c3c9ecbf-bfb3-43eb-8dce-140afad7995f|problematic.domain.org||
  103|c3c9ecbf-bfb3-43eb-8dce-140afad7995f|problematic.domain.org||
sqlite> .quit

Sobald diese Daten eingegeben sind, müssen Sie OpenSim neu starten, damit es geladen wird.

Auf Netzwerkebene

Hinweis: Dies ist ein Verbot nach MAC-Adresse auf Firewall-Ebene. Fortgeschrittene Benutzer können ihre MAC-Adresse ändern.

Die folgende Anleitung ist ein Auszug aus dem full article at Wizardry and Steamworks. Das Prinzip ist, dass alle Zuschauer eine MAC-Adresse senden sollen, die mit einem Hex-Digest-Algorithmus gehasht wird. Da iptables unter Linux nur MAC-Adressen versteht, können wir ipt_string verwenden, um die MAC-Adresse abzugleichen.

Wenn sich ein Benutzer beispielsweise mit einem Grid verbindet, unabhängig davon, ob es sich um eine direkte Anmeldung oder einen Hypergrid-Teleport handelt, wird eine Zeichenfolge wie die folgende angezeigt:

OpenSim.Services.HypergridService.GatekeeperService [GATEKEEPER SERVICE]: 
Login request for Jaine Mariolack @ http://virtualrealmsgrid.com:8002/ 
(0a009e79-7c56-11e2-b122-000c76240986) at VIBE using viewer 
Imprudence 1.3.2.0, channel Imprudence, 
IP 109.112.128.89, 
Mac d6812bb4d7625027d53c2e9715410caf, 
Id0 dd76693a887c545f4d65c2ff2da3a4d7 
Teleport Flags 0

Das Segment, das d6812bb4d7625027d53c2e9715410caf liest, ist die gehashte MAC-Adresse, die vom Betrachter gesendet wird.

Wir können das mit iptables blockieren:

iptables -A INPUT -m string --string 'd6812bb4d7625027d53c2e9715410caf' --algo bm -p tcp --dport 9000 -j DROP

Darüber hinaus können wir den Agenten sogar anhand seines Vor- und Nachnamens blockieren:

iptables -A INPUT -m string --string 'Jaine' --algo bm -m string --string 'Mariolack' --algo bm -p tcp --dport 9000 -j DROP

Das Ergebnis ist, dass der Betrachter beim Versuch, sich zu teleportieren oder sich anzumelden, eine Zeitüberschreitung erleidet.

General
About This Wiki