Anzeige:
Anzeige:
Stern inaktivStern inaktivStern inaktivStern inaktivStern inaktiv
 


IRCServices Manual
Überlick aller Services Funktionen
3-1. NickName management (NickServ)
3-1-1. Core NickServ -Funktionen
3-1-2. Nickname Verlinkung
3-1-3. E-mail Autorisation
3-1-4. ZugriffsListe (Access-list)
3-1-5. Diverse Funktionen
3.2. Channel management (ChanServ)
3-2-1. Core Chanserv Funktionen
3-2-2. Channel ZugriffsListe
3-2-3. Diverse Funktionen
3-3. Memos versenden (MemoServ)
3-3-1. Core MemoServ Funktionen
3-3-2. Memos und Chaträume
3-3-3. Memo-Ignore-Liste
3-3-4. Memo - Weiterleitung
3-4 NetzWerk/Services Kontrolle und Aufrechterhaltung(OperServ)
3-4-1. Services previligierte Level
3-4-2. Core OperServ Funktionen
3-4-3. Autokills und S-lines
3-4-4. Session limitierung
3-4-5. News (Neuigkeiten)
3-5. Netzwerk statistische Sammlung (StatServ)
3-6. "Eingebauter" HTTP-Server
3-7. Passwort verschlüsselung



3-1-1 NickName management (NickServ)
IRC Services Funktionen basieren auf das Registrieren von NickNames. Wenn Du einmal einen Namen registriert hast, werden die Services Dich als den Besitzer des NickNames anerkennen und jeden anderen Benutzer warnen, diesen zu nutzen;
Gegebenfalls sind die Services auch in der Lage, den Fremdbenutzer einen anderen Benutzernamen aufzuzwingen oder ihn gar aus dem Netzwerk entfernen.
Der "NickServ" Pseudoklient ( pseudoclient ) bietet ein Interface in Verbindung zur NickName-Registration und Wartung. Der BenutzerName "NickServ" kann in der modules.conf unter NickServName einstellen.
NickServ empfängt die Kommandos über /msg (messages)
Z.B.

/msg NickServ register password

Dieses Beispiel würde NickServ den Befehl "register" senden, welcher den jeweiligen Nick mit dem dazugehörigen Passwort registrieren würde.
Die Kommandos sind nicht "case-insensitiv" , somit ist es egal ob
man register oder gar ReGiSTeR schreiben würde.


Normalerweise registriert man seinen Benutzernamen, mit dem Register -Befehl, sobald man ein neues NetzWerk betritt, sofern dieser noch nicht belegt wurde.
Wenn dieser NickName nun einmal registriert wurde, benutzt man nach jedem reconnect den so genannten identify -Befehl im zusammenhing mit dem bei der Registrierung angegebenen Passwort , um den Services zu übermitteln, dass man der Besitzer des Nicks ist !
Sollte ein Benutzer sich entschieden haben einen NickName nicht mehr weiter benutzen zu wollen , kann er diesen mit dem drop -Befehl löschen lassen. Andernfalls wird der Benutzername, nach 30 unbenutzten Tagen automatisch verfallen.
Diese 30 Tage richten sich nach dem in der modules.conf eingetragenen NSexpire -Wert.

Benutzer koennen ebenso ihre E-Mailadresse angeben, welche gespeichert wird, damit IRCOPs die Benutzer bei bedarf erreichen koennen.
Mit dem setzen der NSRequireEmail Option , kann die E-Mailangabe bei der Registration als eine Vorraussetzung geltend gemacht werden.
In Verbindung mit der E-Mailadresse kann die Zahl der Registrierungen pro E-Mail begrenzt werden.
Diese Begrenzung findet in der modules.conf , unter NSRegEmailMax statt.

Die List und Info Kommandos stehen zur Verfügung, um eine Liste von vorher aussortierten NickNames anzeigen zulassen bzw. detaillierte Informationen über einzelne Nicks.

Der List Befehl zeigt lediglich Infos, wie die zuletzt benutzte Maske eines Nicks, also User@Host an; Der Info - Befehl hingegen, zeigt Infos wie der zuletzt benutzte RealName oder der zuletzt benutzte Host an.

Beispiel:

-NickServ- Schutzgeist ist Dennis Sela
-NickServ- Ist online von: ~Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein!
-NickServ- Registrationsdatum: 30. Mai 19:54:03 2002 MEST -NickServ- Letzte QUIT-Nachricht: Quit: http://www.IRC-Mania.de -NickServ- Optionen: Chatnamen-Übernahmeschutz, Secure Option -NickServ- /msg NickServ INFO Schutzgeist ALL für weitere Informationen

Jeder NickBesitzer kann durch die set hide Befehle selbst bestimmen , ob andere User das Privileg haben dürfen diese Informationen über einen abzurufen oder nicht.
Der List Befehl, kann in der modules.conf nur für IRC-Operatoren begrenzt werden, indem man den Wert NSLISTOpersOnly setzt.

Normalerweise melden die Services nur, dass der jeweilige Nick nicht registriert werden kann, wenn dies vorher schon von einer Dritten Person getan wurde.
Die IRCServices hingegen bieten die Möglichkeit über die SET KILL -Funktion, FremdNutzer /killen zu lassen, sofern sie nach Abstreichung der Zeit versuchen den Nick weiter zu nutzen.
Wenn es der IRCD unterstützt, ist es dank der NSForceNickChange - Funktion auch möglich, lediglich den Nick des Fremdbenutzers zu wechseln bzw diesen zu zwingen , den nick zuwechseln.
Ein weiterer PseudoKlient wird dann den jeweiligen Nick schützen, indem er diesen für eine gewisse Zeit einnimmt ( normal 60 Sekunden).
Dies dient dazu, dass der Missbrauch eines Nicks eingeschränkt wird. Die "Kill"-Funktion kann sowohl nach 60 Sekunden als aber auch nach 20 Sekunden erfolgen. Die beiden Zeitabstände kann man mit dem set kill Befehl justieren.

Der set hide und der set kill -Befehl, sind nicht die einzigen Set-Befehle.
Wie oben schon einmal erwähnt kann der Benutzer über die Set Funktion, Informationen über sich preisgeben oder gar unterdrücken. Der Set info -Befehl dient dazu sich eine INFOLine einzurichten, die per /msg NickServ Info <NICKNAME> abgerufen werden kann. Zudem kann man sich selbst noch eine URL oder E-Mailadresse zuweisen, die ebenfalls, wie im vorherigen Beispiel beschrieben, abgerufen werden kann.

Wie es die SET -Funktion gibt, gibt es natürlich auch eine unset -Funktion , die die SET-Anweisung , wieder rückgängig macht. Sollte die NSRequireEmail Funktion in der modules.conf aktiv sein, ist es verständlicherweise nicht möglich , die E-Mail zurücksetzen zulassen. Denn diese ist dann erforderlich.

Sollte der Besitzer eines NickNames bemerken, dass sein Name von einem Fremdling benutzt wird, dann kann er den recover -Befehl benutzen, denn dann wird der jeweilige Nick sofort vom NetzWerk getrennt oder ggf. umbenannt.
Der release Befehl ist nützlich um den enforcer zu entfernen, der den Nick nach einem Missbrauch für 60 Sekunden einnimmt.
Der Ghost -Befehl entfernt den Benutzer eines Nicks sofort nach Ausfuehrung !
Dieser Befehl ist recht nützlich, wenn die eigene Verbindung abbricht und der eigene Geist noch im Netz fest hängt. Der Enforcer wird in dem Fall nicht aktiv;

Ein andere Befehl ist der Status -Befehl dieser kann von allen Klienten aus, abfragen ob ein NickName identifiziert ist oder nicht. Die Ausgabe des Befehls ist eine Zahl.


Darüber hinaus haben Services Operatoren Zugriff auf:

eines bestimmten B Nicknames sperrt

den DropNick -Befehl, welcher es erlaubt jeglichen Nick zu löschen
den set Expire - Befehl, welcher es erlaubt Nicknames so zu setzen, dass diese nicht mehr verfallen.
den GetPass - Befehl, welcher das Passwort eines Channels oder Users anzeigen lässt, sofern in der ircservices.conf die Option ENABLEGETPASS aktiviert ist
den Suspend- Befehl , welcher die Nutzung eines nicks für eine bestimmte Zeit verhindert.
Und den forbid - Befehl , welcher den Gebrauch eines Nicks sperrt.
Je nach dem koennen Services Administratoren auch den SET Befehl auf andere Nick benutzen.
Sollte in der ircservices.conf die jeweilige WallSetPass Funktion aktiviert sein, bekommt jeder IRCOP im Netzwerk eine Nachricht, sobald der Befehl ausgeführt wird

3-1-2 NickName -Verlinkungen
Eine besondere Aufmerksamkeit gilt den Funktionen, die durch so genannte add-ons, also Modulen, hinzugefügt werden.
Auch die HauptFunktionen dieser "NickName Verlinkungen" wird durch das nickserv/link Modul zur Verfügung gestellt
Die meisten Chatnutzer wollen mehrere Chatnamen besitzen.
Zum Beispiel will ein User mit dem NickName "Alice" möglicherweise auch Alice|away heißen, während sie im away-Modus ist , oder gar "Alice|zzzZZZ" während sie schläft.
Da es möglich ist, jeden einzelnen NickName separat zu registrieren , müsste sie nach jedem Nickwechsel diesen auch wieder separat identifizieren.
Auch die ChannelZugriffsListe müsste dann pro User (NickName) mehrere Einträge verwalten. Um jedem Nick dieselben Infos hinzuzufügen, müssten auch die URL, E-Mail und ggf die INFOLines , individuell hinzugefügt werden .

Um dieses Problem zu beseitigen, verfügen die Services über einen speziellen Weg, mehrere NickNames parallel zu verbinden , so dass alle verlinkten Namen als ein und den selben Nick(owner) repräsentieren. Dies gilt für die "Nickname last seen, address, Real Name, QuitMessage " - Einträge, ohne größeren Aufwand betreiben zu müssen.

NickName-Besitzer können über den link -Befehl andere unregistrierte NickNames zu Ihrer Gruppe hinzufügen. Der unlink -Befehl bewirkt das genaue Gegenteil.
Ein bestimmter NickName wird somit aus der Gruppe herausgenommen. Zudem stellt der Listlinks -Befehl eine Liste von bereits verlinkten NickNames zur Verfügung. Der mit einem * (Sternchen) markierten NickName ist der HauptNick der Gruppe.

Man beachte das der drop -Befehl sämtliche NickNames löschen würde, einschließlich den zudem Zeitpunkt benutzten Nick. Um einen einzelnen Nick aus der Gruppe auszuschließen, muss der unlink - Befehl benutzt werden.

Zudem ist noch ein Modul namens nickserv/oldlink enthalten, welches die Verlinkung der NickNames der älteren Services steuert. Dieses Modul soll den Benutzern der älteren IRC-Services-Generationen nur helfen mit dem neuen Format klarzukommen. In späteren Versionen wird dieses Module nicht mehr zur Verfügung stehen.
3-1-3. E-mail Autorisation
Um ein wenig Verantwortung in Bezug auf NickNames zu erschaffen, können die Services die werdenden Benutzer dazu zwingen, Ihren Account erst zu autorisieren.
Dies geschieht, indem man nach der NickName Registrierung einen Nummereschen Code per e-Mail zugeschickt bekommt. Damit der NickOwner den kompletten Zugriff auf den registrierten NickName in Anspruch nehmen kann, hat er sich vorher dem jeweiligen Autorisierungscode bei den Services zurückzumelden.
Dies ist eine einmalige Aktion, um die Richtigkeit der angegebenen E-Mailadresse zu gewährleisten. Diese Funktionen basieren auf das NickServ/mail-Auth - Modul
Wenn dieses Modul in Funktion genommen wird, läuft der RegistrierungsProzess wie folgt ab:
Der sendet den gewöhnlichen **register** Befehl zum NickServ(inkl. Passwort und E-Mailadresse).
Die normalen RegistrierungsChecks werden absolviert. Das heißt es wird überprüft , ob der NickName ggf. gesperrt ist, ob die E-Mailadresse das richtige Format hat, oder ob sich sonstige Syntax-Fehler eingeschlichen haben.
Eine zufällige 9stellige Zahl wird generiert und dem jeweiligen NickName zugesprochen. Dieser wird dann ebenfalls an die gegebene E-Mailadresse geschickt.
Die E-Mail koennte wie folgt aussehen:
Der AutorisierungsKode für den NickName (Schutzgeist) lautet:978457898 Bitte autorisieren Sie sich wie folgt : /msg NickServ AUTH 978457898
Diese E-Mail wurde von NickServ in Verbindung mit der Adresse Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein! Ihnen zugesandt.
Die Services informieren also den Benutzer, dass er sich beim NickServ mit dem zugeschickten Code autorisieren lassen muss, bevor er den NickName endgültig benutzen kann.
Der Benutzer sendet den Code mit Hilfe des **Auth -Befehls an NickServ
Die IRCServices werden diesen Code dann auf seine Gültigkeit checken und falls dies positiv ausfällt, wird der Nick komplett freigegeben und kann somit normal genutzt werden
Selbe Prozedur findet dann noch einmal statt, wenn man die jeweilige E-Mail über den set E-Mail Befehl ändert.

Sollte es zur Zeit der Emailzusendung bei Problemen mit dem MailServer oder sonstiges kommen, so dass man diese Mail nicht empfangen kann, ist es möglich , eine Kopie dieser e-Mail ein weiteres mal zugesendet zu bekommen. Die Default-Einstellungen lässt diesen so genannten sendauth Befehl nur einmal pro Tag zu. . Diese genaue Einstellung dieser Zeitspanne ist in der modules.conf setzbar. Der Eintrag hierfür lautet NSSendpassDelay.

Die Services sind somit auch fähig, NickNames, die die über eine gewisse Zeit nicht identifiziert worden sind zu droppen. Auch diese ZeitEinstellung ist in der modul.conf, unter NSNoAuthExpire editierbar.
Zudem haben die Services Admins noch folgende Befehle zur Verfügung,
setauth, getauth und clearauth, welche es ihnen erlaubt,
dem Benutzer etwas entgegen zu kommen.
Sethauth generiert einen neuen AutorisierungsCode für einen
bestimmten NickName ( Benutzer), der Besitzer des Nicks muss diesen also zum Autorisieren benutzen.
GetAuth lässt den jeweiligen Auth-Code eines NickNames zusenden.
Der ClearAuth- Befehl löscht sämtliche AutorisierungsKodes und lässt den
jeweiligen NickName wie gewohnt benutzen, als wenn er den Auth - Befehl genutzt hätte
3-1-4.Access-Liste ( ZugriffsListe)
In der Regel muss ein IRC-Benutzer sich beim NickServ identifizieren, bis die Services ihm die vollen Nick-Rechte zugestehen.
Die ZugriffsListe (Access-list) "verfügen über einen Weg", der den Benutzer erlaubt sich über seine Hostadresse ( User@Host ) zu identifizieren.

Die NickName-ZugriffsListe ( hier auch AccessListe - genannt) enthält mehrere Masken. Diese Masken dürfen so genannte Wildcards enthalten, vergleichbar mit der BanMaske in einem Channel, also für den Usernamen und den HostName. Wenn ein NickName das erste mal registriert wird, wird dieser ZugriffsListe automatisch der aktuelle Username und Host zugewiesen.
Wenn die NSFirstAccessWild Option gesetzt wurde, wird ein Teil des HostNames (IP) mit Wildcards belegt. Nach der Registrierung kann jeder User selbst die ZugriffsListe einsehen bzw. verändern. Dies geschieht dann über den access Befehl.

Die Standardeinstellung lässt den jeweiligen Nick keine besonderen Rechte in einem ChatRaum, nur weil er auf diese bestimmte ZufriffsMaske passt, ohne das Nick-Passwort eingegeben zu haben. Die set secure Einstellung kann diese SicherheitsFunktion disablen.
Somit ist es dann möglich dem USER, der auf eine bestimmte NickServ-ZugriffsMaske passt, auch ChanServ-Zugriffe zu gewähren.

Die kill Option kann benutzt werden um User die für einen NickName keinen gültigen Access-Eintrag haben und welche sich nicht manuell identifizieren,
automatisch killen zu lassen oder ggf. einen anderen Namen aufzwingen.
Diese Option kann über den set kill Befehl auf "quick" oder "immediate" gesetzt werde.
Bei der "Quick-Einstellung" hat der User der einen Nickname benutzt, indem seine Maske nicht in der AccessListe aufgeführt wird, 20 Sekunden Zeit diesen zu identifizieren, andernfalls wird er nach abstreichen dieser Zeit geforced (gekillt oder umbenannt).
Die Immediate-Einstellung greift sofort ein, wenn die Maske nicht auf eine in der ZufriffsListe (Access-List) vorhanden ist.
Sollte die kill immediate Funktion aktiv sein, die Access-Liste jedoch leer, wird niemand mehr fähig sein den jeweiligen Nick benutzen zu koennen.
Der ServicesAdmin muss diesen Nick dann droppen.

Warnung: Sollte ein NickName-Besitzer diese AccessListe in Anspruchnehmen und keine statische IP/host besitzen,
so sollte er bei der ZugriffsListe mit Wildcards arbeiten!
Aus port-212-202-196-252.reverse.qdsl-home.de kann man port-*.reverse.qdsl-home.de machen.
Auch hier sei anzumerken, dass mit dieser Maske jeder qdsl-Kunde automatisch in der ZugriffsListe steht.
Daher sollte die Secure Option immer eingeschaltet sein, um die privilegierte Benutzung von Channel und NickOptionen zu verhindern.
3-1-5. Diverse Funktionen