Zum Inhalt springen

WorkShop-ircservices_5_0_27

IRCServices Workshop Tutorial

 

Workshop für die Installation der IRCServices – Tutorial

 

 

Anmerkung:
Dieser IRCServices-WorkShop wurde von einem GastAutor erstellt, weiteres unten. 
Er wurde unzensiert und unbehandelt auf IRC-Mania.de aufgenommen !

Sollte ein hier präsentierter WorkShop extrem viele Fehler aufweisen, bitte ich um eine Benachrichtigung WorkShopKritik@IRC-Mania.de

 

 

Autor: Kokoloris
URL: http://www.IRC-Promotion.de
Email: Kokoloris@IRC-Promotion.de

1. Installation

Zur Installation der ircservices muss ein cc oder gcc Compiler auf dem PC oder der Shell installiert sein.

Dann läd man sich die aktuellen ircservices (5.0.27) von www.ircservices.za.net herunter. Dies machen wir mithilfe von wget mit folgendem Befehl in einem belibigm Verzeichnis:

wget http://www.irc.gr/ircservices/current.tar.gz

Nach kurzer Zeit ist das Archiv komplett herunter geladen und es muss durch folgenden Befehl entpackt werden:

tar fzxv current.tar.gz

Alle Dateien aus dem Archiv wurden nun in das Verzeichnis Unreal3.2 entpackt und wir betreten daher dieses Verzeichnis:

cd ircservices-5.0.27

Um mit der Installation zu beginnen, führen wir das Config-Script aus:

./configure

Das Script stellt sofort die erste Frage:

In what directory do you want the binaries to be installed?
Press Return for the default, or enter a new value.
[/usr/local/sbin] /sonstiges/irc-services

Hier muss man das Installations-Verzeichnis auswählen. Ich möchte die Services nach ‚/sonstiges/irc-services‘. Auf einer shell ist es aber zu empfehlen, dass man /home/USERNAME/ircservices oder ähnliches wählt.

/sonstiges/irc-services does not exist. Create it?
[y]

Da das gewählte Verzeichnis nicht existiert, möchte das Script dieses erstellen und wir bestätigen, indem wir ENTER drücken.

Where do you want the data files to be installed?
[/sonstiges/irc-services/lib]

Jetzt wird ein Verzeichnis für die Datenbanken benötigt. In diesem Verzeichnis werden auch die Konfigutationsdateien abgelegt, daher wird der Pfad in Schritt 2 nocheinmal benötigt. Im Normalfall kann hier ebenfalls ENTER gedrückt werden, da das Script bereits den richtigen Ordner eingetragen hat.

/sonstiges/irc-services/lib does not exist. Create it?
[y]

und nocheinmal die Frage, ob das Verzeichnis erstellt werden soll …. ENTER.

Jetzt sammelt sich das Script noch ein paar Daten aus dem System und eine Option muss man per Hand nachbessern:

Wir geben folgenden Befehl ein, um die Datei ‚defs.h‘ zu öffnen:

vi defs.h

Jetzt Drücken wir Die Pfeil-Runter-Taste, bis wir an folgender Textstelle angelangt sind (Zeile 36):

/* Default language for newly registered nicks; see language.h for
* available languages (LANG_* constants). Unless you’re running a
* regional network, you should probably leave this at LANG_EN_US. */
#define DEF_LANGUAGE LANG_EN_US

und ändern die letzte Zeile folgendermaßen, damit die Standardsprache deutsch ist:

#define DEF_LANGUAGE LANG_DE

Dazu drücken wir die Pfeil-Nach-Rechts-Taste bis wir über ‚LANG_EN_US‘ sind und drücken Entf auf der Tastatur, bis dies weg ist. Dann drücken wir ‚a‘ um den INSERT-Modus aufzurufen und geben ein ‚LANG_DE‘. Um den Editor zu beenden drücken wir Esc und geben ein ‚:wq‘ (mit dem doppelpunkt am anfang).

Dann können wir mit dem Compilen beginnen. Dazu geben wir ein:

make

und danach (dauert ein paar Minuten):

make install

Wenn das auch durchgelaufen ist, können wir uns an die Konfiguration der Servises machen ….

 

 

2. Konfiguration

Jetzt müssen wir eine Konfigurationsdateien bearbeiten. Wir geben folgenden Befehl ein, um in das data-Verzeichnis zu gelangen. Es ist das Verzeichnis, dass ebenfalls bei der Configuration oben angegeben wurde:

cd /sonstiges/irc-services/lib

um die beiden Beispiel-Dateien zu übernehmen, tippen wir nacheinander ein:

mv example-ircservices.conf ircservices.conf

mv example-modules.conf modules.conf

um den Editor mit dem Config-File zu öffnen, tippen wir ein :

vi ircservices.conf

Alle Zeilen, die mit einer # beginnen, sind auskommentiert (werden von den Services nciht gelesen), also gehen wir mit der Pfeil-Nach-Unten-Taste bis in Zeile83, wo steht:

#RemoteServer 127.0.0.1 6667 „password“

Zuerst halten wir den Cursor über die # und drücken Entf auf der Tastatur, damit diese verschwindet. dann gehen wir nach Rechts über die ‚1‘ von der IP und drücken Entf bis der Rest der Zeile verschwunden ist. Jetzt gehen wir durch drücken der Taste ‚a‘ in den INSERT-Modus und geben die Verbindungsdaten zum IRC-Server ein. Wenn der IRC-Server auf dem Selben Rechner installiert ist, kann als IP 127.0.0.1 verwendet werden. In diesem Beispiel nehmen wir folgende Konfiguration:

RemoteServer 127.0.0.1 6667 „SeRVLiNK“

Das Passwort kann hier frei gewählt werden und muss später in den Einstellungen vom IRC-Server (UnrealIRCd) eingegeben werden. Dann wird Esc gedrückt um den INSERT-Modul zu beenden und es kann weiter nach unten gesprungen werden. (Der Edit-Vorgang wird nciht nochmal beschrieben!)

Wir gehen weiter runter bis ‚ServerName‘ und ändern die Zeile in folgende:

ServerName „services.MusterIRC.net“

Diese muss natürlich wieder dem gelinkten Server angepasst werden, kann aber frei gewählt werden.

Die nächste zu editierende Stelle ist ‚ServiceUser‘. Diese könnte so aussehen:

ServiceUser „services@MusterIRC.net“

In dieser Klasse werden später alle gelinkten Server zugeordnet und es gelten die folgenden Regeln: Die gelinkten Server werden ebenfalls alle 90 Sekunden gepinged; Es können maximal 50 Server gleichzeitig verbunden sein; Der Send-Puffer beträgt 1000000; Wenn autoconnect eingeschaltet ist, versucht der Server alle 100 Sekunden zu dem jeweiligen Server zu verbinden.

Die nächste Stelle ist in Zeile 499:

#LoadModule protocol/(insert protocol name here)

Da ich die Services zu einem UnrealIRCd linke, ändern wir diese in

LoadModule protocol/unreal

Folgende Zeilen werden durch eine # am Anfang auskommentiert oder einfach vollständig gelöscht, da diese nicht benötigt werden:

#LoadModule mail/main
#LoadModule mail/smtp

und ein paar Zeilen weiter unten wird olgendes auskommentiert bzw. gelöscht:

#LoadModule nickserv/mail-auth
#LoadModule nickserv/oldlink
#LoadModule nickserv/sendpass

Und wieder ein paar Zeilen weiter folgende Zeile:

#LoadModule chanserv/sendpass

Und wieder ein paar Zeilen weiter folgende Zeile:

#LoadModule memoserv/forward

Und wieder ein paar Zeilen weiter folgende Zeilen:

#LoadModule h
ttpd/main
#LoadModule httpd/auth-ip
#LoadModule httpd/auth-password
#LoadModule httpd/dbaccess
#LoadModule httpd/debug
#LoadModule httpd/redirect
#LoadModule httpd/top-page
[…]
#LoadModule misc/xml-export
#LoadModule misc/xml-import

Jetzt kann (nachdem wir Esc gedrückt haben) :wq eingegeben werden, um die Datei zu speichern und wir bearbeiten die modules.conf. Um den Editor wieder zu öffnen, geben wir ein:

vi modules.conf

zuerst muss wieder der IRC-Server eingegeben werden:

Module protocol/unreal

und gehen dann runter zu ‚ServerNumeric‘. Da beim UnrealIRCd alle Server eines Netzwerkes nummeriert sein müssen und das Netzwerk nur aus einem Server besteht, geben wir hier 2 ein. So bildet der UnrealIRCd den Server1 und die ircservices den Server2:

ServerNumeric 2

Dann wird die absender-Adresse für E-Mails bestimmt (# am Anfang muss entfernt werden):

FromAddress services@MusterIRC.net

Etwas weiter unten muss der ServicesRoot bestimmt werden, er kann der höchste Admin im IRC-Netz sein, da dieser durch die Services überall vollen Zugriff haben kann:

ServicesRoot kokoloris

nachdem Esc gedrückt wurde, kann der Editor durch den Befehl :wq wieder beendet werden.

 

Jetzt muss der UnrealIRCd so Konfiguriert werden, dass er die Verbindung von den Services annimmt. Dazu wechselt man in das Verzeichnis des Servers (cd /home/USERNAME/Unreal3.2 etc) und öffnet die config (vi unrealircd.conf). Hier fügt man folgenden Block ein:

link services.MusterIRC.net {
      username   *;
      hostname   127.0.0.1;
      bind-ip    *;
      port       6667;
      password-connect „SeRVLiNK“;
      password-receive „SeRVLiNK“;
      class servers;
};

Außerdem sollten die Services eine uline bekommen, damit sie vollen Zugriff haben (ansonnsten funktionieren sie nicht richtig). Dazu fügt man folgenden Block ein:

ulines {
      services.MusterIRC.net;
};

Auch diese Datei kann (nachdem Esc gedrückt wurde) durch :wq verlassen werden.

ACHTUNG: Der benutzte Port (6667) darf im listen-Block nicht die option ‚clientsonly‘ haben !

 

3. Starten

Um den IRC-Server zu starten wird nur folgender Befehl eingegeben:

./unreal start

 

Jetzt wechseln wir wieder in das Verzeichnis von den ircservices:

cd /sonstiges/irc-services

und starten die services durch folgenden Befehl:

./ircservices