UnrealIRCd 3.x.x Link-Block - IRC Server verlinken - unrealircd.conf
11. November 2007
Um deinen IRC-Server in ein IRC-Netzwerk zu verwandeln, also einen anderen Server mit deinem UnrealIRCd zu linken, musst du in der unrealircd.conf einen Linkblock einfügen. Dieser Linkblock muss dann auch auf in der Konfiguration des andere IRC-Server zu finden sein.
In diesem Tutorial erkläre ich die Link-Blöcke und zweige wie man zwei Server miteinander verlinkt.
Bevor wir aber die Server verlinken, müssen wir noch Listener-Blöcke anlegen, an den Server gelinkt werden können. Natürlich nur, falls das noch nicht geschehen ist. Der Listener Block dient dazu deinem UnrealIRCd zu sagen auf welchem Port und welcher IP-Adresse er hören muss, um den gelinkten Server finden zu können.
Der Listener-Block:
listen IP:PORT {
options {
option1;
option2;
…;
};
};
Nun musst du dir Gedanken machen, ob du den Server mit SSL oder ohne linken möchtest. Außerdem musst du dir einen Port überlegen über den du linken möchtest. In meinem Beispiel nehme ich dafür 9998, der sollte eigentlich auch auf deinem System frei sein.
Und hier der Linkblock mit SSL:
listen *:9998 {
options {
ssl;
serversonly;
};
};
Als IP-Adresse habe ich hier eine Wildcard benutzt. Das vereinfacht die Sache ein wenig, da jetzt auf jede IP-Adresse des Servers gelinkt werden kann.
Nachdem wir nun den Listener Block angelegt haben fehlt noch das wichtigste. Der Link-Block. Der Standard-Linkblock für den UnrealIRCd:
link SERVERNAME {
username USERMASKE;
hostname IP-MASKE;
bind-ip BIND-IP;
port PORT;
password-connect CONNECTPASSWORT;
password-receive EMPFANGSPASSWORT { AUTHTYPE; };
hub HUBMASKE;
leaf LEAFMASKE;
leafdepth LEAFTIEFE;
class KLASSE;
ciphers SSL-CYPHERS;
options {
option1;
option2;
…;
};
};
Doch nicht alle Funktionen dieses Link-Blocks werden unbedingt benötigt, wenn dein Netzwerk nicht grade die Größe des QuakeNets hat. Nun also der gestripte Link-Block mit den Voreinstellungen:
link irc.linkserver.de {
username *;
hostname linkserver.de;
port 9998;
hub *;
passwort-connect “efU7kF4el3Vbe”;
passwort-receive “SLwe43FOen34″;
class servers;
options {
autoconnect;
ssl;
zip;
};
};
Diese Einstellungen reichen vollkommen um einen Server zu linken, jedoch gibt es keine Verschlüsselungsfunktion und so weiter.
username *;
Hier kann man zu Sicherheitszwecken die Ident eintragen, meist wird hier allerdings zu recht eine Wildcard benutzt.
hostname linkserver.de;
Hier kommt der Hostname des Servers rein, mit dem du linken willst. Wenn du diese nicht weißt, kannst du, während du mit deinem Server verbunden bist
/dns IP-DESLINKSERVERS
tippen. Die Rückgabe sollte die Hostmask sein. Ist sie es nicht, probierst du die IP-Adresse anstelle der Hostmask zu verwenden.
port 9998;
Hier stellst du den Port, auf dem gelinkt werden soll ein.
hub *;
Hier stellst du ein ob der Server als Hub oder Leaf gelinkt werden soll. Ein Leaf-Server ist ein Server, der nur eine einzige Verbindung haben darf, also ein UnrealIRCd der nur dazu kompiliert wurde, um ihn zu linken. Ein Hub dagegen darf mehrere Verbindungen haben.
passwort-connect “efU7kF4el3Vbe”;
passwort-receive “SLwe43FOen34″;
Diese Passwörter bitte KEINESFALLS übernehmen. Die Passwörter müssen sich hier ergänzen. Das heisst das password-connect muss auf deinem Server das Passwort sein, das auf dem Linkserver das password-receive ist und andersrum. Hier kann man zwar auch eine Verschlüsselung anwenden. Dies ist allerdings nicht zweingend notwendig und eher eine kleinere, wenn überhaupt eine Sicherheitslücke.
class servers;
Dies schränkt den Link auf Server ein. Naja, Clients können auch eher schlecht linken.
options {
autoconnect;
ssl;
zip;
};
autoconnect; legt fest, dass der Server selbständig eine Verbindung herstellen kann und wird. ssl; legt fest, dass der Link ein SSL-Link ist. zip; legt fest, dass der Link ein ZIP-Link ist. Wenn du eines oder mehrere dieser Features nicht willst/installiert hast, kannst du sie einfach weglassen. Autoconnect z.B. nervt tierisch, wenn ein Server down geht, da dein Server dann die ganze Zeit versucht diesen zu erreichen.
Nun muss der Server, der gelinkt werden soll, die einstellungen ebenfalls so übernehmen, wie du sie eingetragen hast. Nur der Servername und die Passwörter müssen ausgetauscht werden.
Nach einem Rehash auf beiden Seiten, sollten dann beide Server gelinkt sein.
