GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

IRC mit XChat, Irssi und UnrealIRCD auf CentOS 7

Dieses Mal werden wir über den Internet Relay Chat oder einfach IRC sprechen. Im ersten Teil dieses Artikels werden wir dieses Protokoll überprüfen, wie man Irssi oder XChat verwendet, um sich mit Freenode und anderen IRC-Netzwerken zu verbinden, Kanäle zu betreten und mit Leuten zu sprechen. Danach erfahren Sie, wie Sie mit UnrealIRCd Ihren eigenen IRC-Dienst starten.

Inhaltsverzeichnis

  • Einführung
  • Verbinden im IRC
  • Grundlegende IRC-Befehle
  • IRC mit UnrealIRCd bedienen

Einführung

Sie erinnern sich vielleicht an die IRC-Chats, als es so etwas wie Facebook, Google+ oder LinkedIn noch nicht gab und unsere sozialen Netzwerke noch IRC-Chatkanäle waren. Heute haben wir viele Alternativen, um mit jemandem im Internet zu sprechen, zusammen mit den sozialen Netzwerken haben wir viele beliebte Messaging-Dienste wie Whatsapp, Skype, Hangouts und so weiter.

Obwohl IRC nicht das wichtigste Kommunikationsprogramm im Internet ist, ist es immer noch am Leben und ein großartiges Werkzeug. Es ist ein leichtes, weit verbreitetes und standardisiertes Protokoll, das ursprünglich 1988 von BBS-Benutzern als Ersatz und Verbesserung für das Talk-Programm entwickelt wurde und aufgrund seiner Eigenschaften die Geburt und den Tod vieler anderer Messaging-Systeme erlebte.

Verbinden im IRC

Um sich mit einem IRC-Netzwerk zu verbinden, benötigen Sie Client-Software. Hier sind einige gute Clients für Linux.

Irsi

Irssi ist ein auf Flüchen basierender IRC-Client, er ist ziemlich großartig, anpassbar, erlaubt die Verwendung von Skripten und verzichtet auf die Notwendigkeit eines X-Servers.

Installieren

yum install irssi

Stellen Sie mit dem Flag -c eine Verbindung zu einem Netzwerk her,

irssi -c irc.freenode.org

Das Umschalten zwischen Irssi-Fenstern kann beim ersten Mal etwas schwierig sein, Sie können [Strg+n] verwenden um zum nächsten Fenster zu gehen und [Strg+p] für das vorherige. den /window-Befehl.

/window [ next | previous ]

Verwenden Sie den Listenparameter, um eine Liste mit den geöffneten Fenstern anzuzeigen

/window list

Mit [Alt+#] können Sie dann zur aufgelisteten Fensternummer springen , wobei # die Fensternummer zwischen 1-9 ist. Eine andere Möglichkeit, dies zu tun, ist der goto-Parameter

Gute Tipps zur Verwendung von Irssi finden Sie auch auf der Quadpoint-Website.

/window goto [1-9]

XChat

XChat vereinfacht den Prozess für Neulinge, indem es Ihnen Point-and-Click-Optionen für Befehle und die meisten Aktionen gibt.

Sie können XChat mit yum

installieren
yum install xchat

Stellen Sie eine Verbindung zu IRC-Netzwerken her, indem Sie den Dialog verwenden, der Ihnen beim Start von XChat angezeigt wird und auch über das Menü XChat->Netzwerkliste [Strg+s] zugänglich ist

Wenn Sie sich erfolgreich mit dem Netzwerk verbunden haben, können Sie eine der Optionen auswählen, um Kanälen beizutreten. Sie können auch das Menü Server->Kanalliste. verwenden

Grundlegende IRC-Befehle

Jetzt haben Sie einen Client, hier sind einige Befehle, die Sie im IRC verwenden können. Wenn Sie sich zum ersten Mal mit einem Netzwerk verbinden, wird Ihnen vom Client ein Spitzname basierend auf Ihrer Systemanmeldung zugewiesen, und um Ihren Spitznamen beispielsweise in Tuxman zu ändern, versuchen Sie Folgendes.

/nick Tuxman

Mit einem neuen möchten Sie vielleicht einen Kanal betreten. Zum Auflisten Kanäle im Zusammenhang mit Entwicklungsversuchen

/list #devel*

Sobald du den Kanal gefunden hast, der dich interessiert, versuche beizutreten mit /join #channelname.

/join #linux

OK, Sie sind auf einem Kanal, Sie können jetzt anfangen zu sprechen, um zu wissen, wer auf dem Kanal ist, tun Sie dies mit Namen

/names

Vielleicht möchten Sie mehr darüber wissen, wer jemand im Netzwerk ist, versuchen Sie es mit whois.

/whois MrRobot

Möchten Sie mit jemandem ein Chatfenster öffnen? Abfrage.

/query MrRobot

Registriere deinen Nick

Sie müssen kein Konto erstellen, um in IRC-Netzwerken zu chatten. Wenn Sie jedoch verhindern möchten, dass Ihr Spitzname von jemand anderem verwendet wird, müssen Sie Ihren Spitznamen im Netzwerk registrieren. Dadurch erhalten Sie auch Zugriff auf Ressourcen, für die registrierte Spitznamen erforderlich sind, z. B. Cloaking und Zugriff auf mehr Kanäle.

Nehmen wir an, Sie möchten den Spitznamen Tuxman auf Freenode registrieren. Bitten Sie den NickServ, Ihren Spitznamen zu REGISTRIEREN

/msg NickServ REGISTER password [email protected]

Danach müssen Sie Ihren Bestätigungscode abrufen, der an die von Ihnen angegebene E-Mail-Adresse gesendet wurde, und ihn an NickServ senden

/msg NickServ VERIFY REGISTER nickname verifycode

Sie haben Ihren Spitznamen registriert, jetzt können Sie sich gegenüber dem Netzwerk identifizieren

/msg NickServ IDENTIFY password

Verbinden und identifizieren Sie sich beim Start von Irssi mit den Flags -n und -w.

irssi -c irc.freenode.net -n nickname -w password

Sie sollten auch Ihr Passwort von Zeit zu Zeit ändern, verwenden Sie den folgenden Befehl

/msg nickserv set password newpassword

Installieren von UnrealIRCd

Unter anderen Ircd-Implementierungen gibt es das UnrealIRCd. Es ist voll ausgestattet, modular und hochgradig dokumentiert, auch der heutzutage am häufigsten implementierte IRC-Server, was mehr als 50 % der derzeit laufenden IRC-Server entspricht.

Zusätzliche Anforderungen

Hier sind einige Anforderungen, um das Beste aus Ihrem UnrealIRCd herauszuholen, obwohl es nicht erforderlich ist, wird es dringend empfohlen, wie Sie sehen werden.

Ntp - Uhrzeit und Datum müssen korrekt sein, ntp ist die beste Wahl, um Uhrzeit und Datum korrekt zu halten.

Installieren Sie ntp

yum install ntp

ntpd aktivieren

chkconfig ntpd on

OpenSSL - Dies ist ebenfalls optional und wird verwendet, wenn Sie SSL/TLS-Unterstützung wünschen.

yum install openssl

Zlib - Dadurch können Sie die Netzwerkpakete komprimieren und die Last über die Links reduzieren.

yum install zlib

Holen Sie sich UnrealIRCd

Unrealircd herunterladen.

wget --no-check-certificate https://www.unrealircd.org/downloads/Unreal3.2.10.5.tar.gz

Extrahieren Sie den Tarball

tar zxvf Unreal3.2.10.5.tar.gz

Geben Sie den Quellenbaum ein

cd Unreal*

Chroot IRC-Benutzer und IRC-Gruppe aktivieren (empfohlen)

Dieser Schritt ist optional, wird jedoch dringend empfohlen, da er es Ihnen ermöglicht, Superuser-Rechte aufzugeben und UnreadIRCd unter einem nicht privilegierten Benutzerkonto in einer Chroot-Umgebung auszuführen, und somit das gesamte Setup viel sicherer macht.

Dazu müssen Sie include/config.h bearbeiten Datei im Quellverzeichnis.

Die Chroot-Umgebungsfunktion wird durch die folgende Direktive definiert

/* #define CHROOTDIR    */

Definieren Sie die IRC_USER-Konstante

/* #define IRC_USER  "<user name>" */

Definieren Sie die IRC_GROUP-Konstante

/* #define IRC_GROUP "<group name>" */

Gruppe für ircd erstellen

groupadd ircd

Erstellen Sie einen ircd-Benutzer und fügen Sie ihn der ircd-Gruppe hinzu.

useradd ircd -s /bin/false -g ircd

Legen Sie das Passwort für den ircd-Benutzer fest, um sicherzustellen, dass niemand darauf zugreifen kann.

passwd ircd

Konfigurieren Sie den Build

An dieser Stelle folgen Sie den Fragen auf dem Bildschirm und können dann meistens die Standardeinstellungen verwenden. Ich rate Ihnen jedoch, mit Ja zu antworten, wenn Sie gefragt werden, ob Sie die SSL-Unterstützung aktivieren möchten.

./config

Erstellen Sie die Quellen

make

Dateien installieren

make install

Wenn Sie die ircd-Benutzer-, Gruppen- und Chroot-Funktionen aktiviert haben, sollten Sie jetzt den Besitz des UnrealIRCd-Verzeichnisses ändern.

chown -R ircd:ircd /home/ircd/UnrealIRCd

Konfigurieren

Es ist an der Zeit, Ihren IRC-Daemon zum Laufen zu bringen. Bearbeiten Sie dazu die unrealircd.conf , die Konfigurationsdatei für UnrealIRCd. Sie finden die gut dokumentierte Datei doc/sample.conf unter Ihrem UnrealIRCD-Verzeichnisbaum, sie kann Ihnen auf Ihrer Reise helfen. Ich habe diese funktionierenden Snippets mit einer kurzen Beschreibung erstellt.

ich - Dieser Block legt einige grundlegende Servereinstellungen fest, name , grundlegende Informationen und die Zahl Wert, der auf allen Servern im selben Netzwerk eindeutig sein muss.

me {

name "irc.localhost"; info "Mein Server"; Ziffer 1;

};

Administrator - Hier legen Sie fest, wer der Serveradministrator ist, seinen Namen, Spitznamen und seine E-Mail-Adresse.

admin {

„Georg Jedi“; /* Name */ "geroge";/* Spitzname */ "[email protected]"; /* E-Mail */

};

Klassen-Clients/Server - Dies legt fest, wie Clients und andere Server jeweils von unserem Server behandelt werden. Ping-Frequenz, Maximum der Client-Verbindungen, Häufigkeit der Wiederverbindungsversuche, Empfangs- und Sendewarteschlangen.

class clients {

Pingfreq 90; maxclients 500; sendq 100000; recvq 8000;

};' Klassenserver {

Pingfreq 90; maxclients 10; /* Max. Server, die wir gleichzeitig verbinden können */ sendq 1000000; connfreq 100; /* Wie viele Sekunden zwischen jedem Verbindungsversuch */

};

zulassen - Definieren Sie, wer sich wie mit dem Server verbinden darf. Der erste Block erlaubt Benutzerverbindungen von jeder IP oder jedem Hostnamen und begrenzt die Verbindungen auf 5 pro IP. Der zweite Block erlaubt nur eine authentifizierte Verbindung zu Personen von ugly.people.com

allow {

ip *; Hostname *; Klasse Kunden; maxperip 5;

}; zulassen {

ip *@*; Hostname *@*.ugly.people.com; Klasse Kunden; Passwort „jayajaya“; maxperip 1;

};

hören - Welche Ports auf Verbindungen überwacht werden sollen. Auf dem Block lauschen wir an Port 6697 auf Benutzer-Clients, die sich über Secure Socket Layer (SSL) verbinden. Beachten Sie auch die line simple-Anweisung für Klartext-Verbindungen auf Port 6667

listen *:6697 {

Optionen {

SSL; Nur Clients;

};

}; #hören *:8067; hören *:6667; #listen *:6660-6669;

Oper - Operatorattribute, in diesem Beispiel verwenden wir einen Operator mit dem Spitznamen George, der sich von überall her mit dem "fuba"-Passwort verbinden kann

oper george { Klasse Kunden; von { Benutzerhost *@*; };

Passwort "fuba"; Flaggen {

netadmin; can_gkline; can_kline; can_unkline; can_gzline; can_zline; can_restart; kann_sterben; can_rehash; global;

};

swhois "Beispiel einer Whois-Maske"; snomask cFfkoSsqNG;

};

Lademodul - Lädt Module, dies sind die empfohlenen Mindestanforderungen

loadmodule "modules/commands.so";
loadmodule "modules/cloak.so";

protokollieren - Wie Protokolldateien geschrieben werden, im Beispiel protokollieren wir Ereignisse, die als Fehler, Kills und so gekennzeichnet sind

log ircd.log {

maximale Größe 5 MB; Flaggen {

Fehler; tötet; Oper; tkl;

};

};

eingestellt - Sie können hier viele andere Dinge einstellen, in unserem Beispiel haben wir ein Netzwerk bei der Domain gaia.net namens gaianet, das Leute mit dem #Willkommenskanal verbindet, wir setzen 3 verschiedene alphanumerische Tarnschlüssel, legen die Hosts im Netzwerk fest, erstellen a #help channel und andere Optionen, die auf nrealircd.org detailliert beschrieben werden.

set {

kline-Adresse [email protected]; automatisch beitreten #willkommen; op

Optionen {

Hide-ulines;

};

maxchannelsperuser 10; Dienste-Server „services.gaia.net“; Standardserver "localhost"; Netzwerkname "gaianet"; Hilfekanal "#help"; hiddenhost-prefix "gaia";

Tarnschlüssel {

"aoAr1O6fh3Q6w4Hnl3J7hVz4Zb7x4YwpW"; "andaoAr1HnR6gl3sJ7uhVzO6fh3Q6w4oN3"; "a2Ja2JO6fh3Q6w4oNs7O6fh3Q6w4oN3s7";

};

Gastgeber {

lokal "locop.gaia.net"; global "ircop.gaia.net"; coadmin "coadmin.gaia.net"; Administrator "admin.gaia.net"; servicesadmin "csops.gaia.net"; netadmin "netadmin.gaia.net"; host-on-oper-up "no";

};

};

UnrealIRCd starten

Wenn alles eingerichtet ist, können Sie jetzt Ihren IRC-Daemon starten. Fügen Sie den folgenden Befehl zu rc.local hinzu, um UnrealIRCd zu starten, wenn Ihr System startet.

/home/ircd/UnrealIRCd/unreal start

Es sollte ohne Probleme laufen, wenn jedoch während des Starts ein Problem auftritt, lesen Sie die Fehlermeldungen auf dem Terminal und auch in der Datei ircd.log, um herauszufinden, was falsch ist.

Schlussfolgerung

Sie sind vorerst fertig, Ihr Client und Server sollten jetzt laufen, Sie können mit Menschen auf der ganzen Welt sprechen, indem Sie einige der globalen Netzwerke oder Ihr eigenes Netzwerk verwenden. Es ist jedoch eine gute Idee, mehr über das IRC-Protokoll, die Verwaltung von Netzwerken, Kanälen und Benutzern usw. zu erfahren. Die folgenden Dokumente sollten Ihnen dabei helfen.

RFC-Dokumente

Der folgende RFC definiert die Standards für das IRC-Protokoll. Sie sollten dies lesen, bevor Sie IRC optimal nutzen können.

RFC-1459, RFC-2810, RFC-2811, RFC-2812, RFC-2813, RFC-7194

UnrealIRCd-Support und -Dokumentation

Weitere Informationen finden Sie in der offiziellen Dokumentation von UnrealIRCd. Es enthält alle Details, die nicht auf diesem Dokument beschrieben sind. Sie können auch Hilfe vom IRC erhalten, indem Sie sich auf irc.unrealircd.org:6667 im Kanal #unreal-support anmelden. Danke fürs Lesen!


Cent OS
  1. Serverüberwachung mit Icinga 2 und Icingaweb 2 auf CentOS 7

  2. Centos 4.8 und Glibc 2.5?

  3. Installieren Sie Ruby on Rails mit Apache und Passenger unter CentOS 6

  4. Richten Sie einen Mailserver mit Exim und Dovecot auf einem CentOS 7 ein

  5. Richten Sie einen Mailserver mit PostfixAdmin und MariaDB auf CentOS 7 ein

So installieren und konfigurieren Sie OpenLiteSpeed ​​mit PHP 7 unter CentOS 7

Serverüberwachung mit munin und monit auf CentOS 5.2

Serverüberwachung mit Munin und Monit auf CentOS 7

Serverüberwachung mit Munin und Monit auf CentOS 7.2

Installation und Konfiguration von PhpMyAdmin mit Nginx unter CentOS 7

So installieren Sie OwnCloud 8 mit Nginx und PHP-FPM auf CentOS 6