In Zeiten von Facebook, WhatsApp, Telegram, Threema und vielen anderen Messaging Services stellt sich für Firmen und grössere Gruppen von Menschen die Frage, wie man denn nun am Besten ohne einen fremd verwalteten Server miteinander textbasiert kommunizieren kann.
Wie realisiert man textbasierte Kommunikation in einem Unternehmen, die auf allen Endgeräten funktioniert, wenig Ressourcen verbraucht und auch noch einigermassen „sicher“ ist? Die wohl älteste, aber nach wie vor funktionierende Variante ist der Interlay Relay Chat (IRC). Ursprünglich wurde der Relay Chat Anfang der achtziger Jahre im BITNET (Because It’s Time NETwork) genutzt. 1988 wurde das Prinzip durch den finnischen Studenten Jarkko Oikarinen auf das Internet übertragen.
Wenn Sie noch nie etwas von IRC gehört haben, schauen Sie sich New User Introduction auf irchelp.org an. Ein guter Anfang auf Deutsch ist Internet Relay Chat – Eine möglichst kurze Einführung von Kai ‚Oswald‘ Seidler.
Grundsätzlich benötigen Sie einen IRC-Client und einen IRC-Server. Der IRC-Client läuft auf Ihrem Endgerät, der IRC-Server ist entweder öffentlich zugänglich und wird von „jemandem“ betrieben.
Sie können sich aber auch Ihren eigenen IRC-Server auf Ihrem Root-Server installieren und darüber völlig autark passwortgeschützt und verschlüsselt kommunizieren. In diesem Artikel werden wir den UnrealIRC Server instalieren und über verschiedene Clients damit Kontakt aufnehmen.
IRC Server
Die Konfiguration von IRC Servern wie ratbox, die als Installationspaket für Ubuntu vorliegen ist ziemlich aufwändig, daher verwende ich in diesem Beispiel den Unreal IRC Server. Die Installation und Konfiguration ist recht überschaubar.
Installation
Ich lade die Dateien in das Verzeichnis /home/novatrend
Download des Quellcodes
wget https://www.unrealircd.org/downloads/Unreal3.2.10.4.tar.gz
Auspacken des Pakets
tar xfz Unreal3.2.10.4.tar.gz
Dann in das Verzeichnis wechseln und mit ./Config das Konfigurationsprogramm aufrufen.
novatrend@server1:~/Unreal3.2.10.4$ ./Config
Die meisten Fragen können mit der Entertaste und dem vorgeschlagenen Wert beantwortet werden
What directory are all the server configuration files in? [/home/novatrend/Unreal3.2.10.4] -> What is the path to the ircd binary including the name of the binary? [/home/novatrend/Unreal3.2.10.4/src/ircd] -> What should the default permissions for your configuration files be? (Set this to 0 to disable) It is strongly recommended that you use 0600 to prevent unwanted reading of the file [0600] ->
Wenn der Chat verschlüsselt sein soll müssen sie hier Yes eingeben
Do you want to support SSL (Secure Sockets Layer) connections? [No] -> YES
Die nächste Frage können Sie mit Enter bestätigen. Die OpenSSL Library wird unter Ubuntu 14.04. automatisch gefunden
If you know the path to OpenSSL on your system, enter it here. If not leave this blank (in most cases it will be detected automatically). [] ->
Auch bei den weitere Fragen können Sie die Standardwerte übernehmen. Sie können im weiteren Verlauf der Installation auch ein Zertifikat erzeugen, falls Sie noch keins haben.
_______________________________________________________________________ | | | UnrealIRCd Compile-Time Config | |_______________________________________________________________________| |_______________________________________________________________________| | | | Now all you have to do is type 'make' and let it compile. When that's | | done, you will receive other instructions on what to do next. | | | |_______________________________________________________________________| |_______________________________________________________________________| | - The UnrealIRCd Team - | | | | * Syzop syzop@unrealircd.com | |_______________________________________________________________________|
Wenn diese Meldung erscheint ist die Konfiguration beendet und Sie müssen mit dem make Kommando die eigentliche Kompilierung starten
novatrend@server1:~/Unreal3.2.10.4$ make ...
__________________________________________________ | Compile is now complete. | | You should now read the documentation and learn | | how to configure your IRCd. | | | | If you really like UnrealIRCd, and would like to | | make a donation, please read the Donation file in| | this archive. :) | | | | Thanks for using Unreal IRCd! If you are in need | | for any kind of help regarding the IRCd please | | read the Unreal.nfo file. | |__________________________________________________| novatrend@server1:~/Unreal3.2.10.4$
Der IRC Server ist nun auf Ihrem Root-Server installiert.
Konfiguration
Der IRC Server benötigt eine Konfigurationsdatei. Im /doc Vereichnis finden Sie Beispieldateien in mehreren Sprachen.
novatrend@server1:~/Unreal3.2.10.4/doc$ ls -l total 1996 -rw-r--r-- 1 novatrend novatrend 20342 Jul 26 17:42 example.conf -rw-r--r-- 1 novatrend novatrend 20414 Jul 26 17:42 example.de.conf -rw-r--r-- 1 novatrend novatrend 22535 Jul 26 17:42 example.es.conf -rw-r--r-- 1 novatrend novatrend 23120 Jul 26 17:42 example.fr.conf -rw-r--r-- 1 novatrend novatrend 23117 Jul 26 17:42 example.hu.conf -rw-r--r-- 1 novatrend novatrend 19916 Jul 26 17:42 example.nl.conf -rw-r--r-- 1 novatrend novatrend 21650 Jul 26 17:42 example.ru.conf -rw-r--r-- 1 novatrend novatrend 21524 Jul 26 17:42 example.tr.conf
Ich nehme die Datei example.de.conf und kopiere Sie in das /Unreal3.2.10.4 Verzeichnis. Der Name muss unrealircd.conf sein
nano unrealircd.conf
Ein Konfigurationsbeispiel finden Sie hier unter http://irc-guide.de/wiki/Main/UnrealIRCdBeispielkonfigurationsdatei.
Die Konfigurationsdatei ist sehr gut kommentiert (und sehr lang). Hier die Änderungen, die ich vergenommen habe:
Kommentieren Sie diese beiden Zeilen aus
/* FUER *NIX (Unix, Linux, Xenix etc.), sind diese 2 Zeilen auszukommentieren: */ loadmodule "src/modules/commands.so"; loadmodule "src/modules/cloak.so";
Geben Sie dem Server einen Namen
me { name "irc.serverblogger.ch"; info "Serverblogger Server"; numeric 1; };
Legen Sie den Admin fest
admin { "Hagen Graf"; "hagen"; "hagen@novatrend.ch"; };
Legen Sie ein Passwort fest
allow { ip *@*; hostname *@*; class clients; password "geheimespasswort" maxperip 5; };
Legen Sie Channel fest
allow channel { channel "#serverblogger-chat"; channel "#raum1"; channel "#raum2"; channel "#raum3"; };
Verhindern Sie, dass Channel angelegt werden
deny channel { channel "*"; reason "Es gibt schon vier Raeume :) "; };
Netzwerk Konfiguration
set { network-name "IRC"; default-server "serverblogger.ch"; services-server "serverblogger.ch"; stats-server "serverblogger.ch"; ... cloak-keys { "aoAr1HnR6gl3sJ7hVz4Zb7x4YwpW"; "Key eingeben"; "Key eingeben"; }; }
Lesen Sie die restlichen Einstellungen und speichern die Datei ab. Im gleichen Verzeichnis können Sie noch die Willkommensdateien motd.conf und rules.conf erstellen um eine Willkommensnachricht auf dem Client anzuzeigen.
Starten und stoppen können Sie den IRC Server nun mit den Befehlen
./unreal start
und
./unreal stop
IRC Clients
Es gibt ein grosses Angebot für IRC-Clients auf allen denkbaren Plattformen. Hier ein paar Beispiele mit dem gerade aufgesetzten irc.serverblogger.ch Server.
Lime (OSX)
http://limechat.net/mac/
AndroIRC (Android)
http://www.androirc.com/
Adium (OSX)
https://adium.im/
tl;dr: Der Internet Relay Chat ist eine schnelle, einfache und sichere Alternative zu proprietären Messenger Systemen.
Schreibe einen Kommentar