Ubuntu 10.04 „Lucid Lynx“
NeoRouter ist ein kostenloser sogenannter ZeroConf-VPN-Dienst, der für viele Plattformen (Linux, Mac OSX, Windows, ...) verfügbar ist. Ein solches VPN-Netzwerk ermöglicht es, mit Freunden oder Kollegen eine Art virtuelles LAN über das Internet zu betreiben. So können alle Teilnehmer beispielsweise gegenseitig auf Samba-Freigaben, VNC-Verbindungen, Wake on LAN oder eigene Online-Spiele zugreifen.
Ein ähnlicher Dienst ist Hamachi, wobei NeoRouter aber nach eigenen Aussagen mehr Funktionen bietet. Auf der offiziellen Homepage wird dies durch eine Feature-Matrix dargestellt, welche Hamachi mit NeoRouter vergleicht. Eine weitere Alternative ist RetroShare
.
NeoRouter ist proprietär, der Quelltext ist demnach auch nicht freigegeben. Der Server des kanadischen Herstellers speichert alle notwendigen Daten, damit die Clients eines virtuellen Netzwerks über das Internet ihren jeweiligen Server finden.
Der Client benötigt ein bereits vorhandenes NeoRouter-VPN, mit welchem er sich verbinden kann. Folgende Voraussetzungen müssen für eine Anmeldung erfüllt sein:
Die Adresse (Domäne) muss bekannt sein
Man muss als normaler User "freigeschaltet" sein
Sollte noch kein NeoRouter-VPN vorhanden sein, muss zunächst der NeoRouter-Server aufgesetzt und ein solches VPN eingerichtet werden.
Zunächst lädt man sich die aktuelle Version des Clients als .deb-Paket von der Herstellerseite herunter und installiert sie wie gewohnt[2]. Das Client-Paket beinhaltet die beiden Programme nrservice und nrclientcmd. Ersteres stellt die grundsätzlichen Dienste für NeoRouter bereit und wird automatisch beim Start des PCs ausgeführt. Mittels nrclientcmd verbindet man sich dann zu einer VPN-Domäne.
Fremdpakete können das System gefährden.
Um nun dem VPN-Netzwerk beizutreten, wird der Befehl
nrclientcmd -d domain -u user -p passwort
in einem Terminal [1] eingegeben. Angenommen der Benutzer franz
mit dem Passwort sissy
möchte sich zur Domäne Austria
verbinden, so lautet der Aufruf
nrclientcmd -d Austria -u franz -p sissy
Sind alle Angaben richtig, erscheint folgende Meldung:
Available Commands: addcomputer, deletecomputer, createcategory, renamecategory, deletecategory, wakeonlan, setproxy, changepassword, quit Enter command:
Das bedeutet, dass die Verbindung zum Netz funktioniert. Mit Strg + C kann der Prozess nun abgebrochen werden. Die Verbindung bleibt dabei bestehen.
Mit Hilfe des Befehls
ifconfig nrtap
kann überprüft werden, ob die VPN-Verbindung richtig funktioniert. Die Ausgabe sieht in etwa so aus:
nrtap Link encap:Ethernet HWaddr 06:94:f4:06:d3:c8 inet addr:10.0.1.3 Bcast:10.0.1.255 Mask:255.255.255.0 inet6 addr: fe80::494:f4ff:fe06:d3c8/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1300 Metric:1 RX packets:15 errors:0 dropped:0 overruns:0 frame:0 TX packets:26 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:500 RX bytes:2594 (2.5 KB) TX bytes:4070 (4.0 KB)
Man erkennt, dass der Client mit dem virtuellen LAN über die IP-Adresse 10.0.1.3 verbunden ist.
Auf SourceForge wird das Projekt NRClientX gehostet, welches eine grafische Oberfläche zur Steuerung des Clients beinhaltet.
Zur Verwendung der GUI ist allerdings wxPython-2.8 erforderlich
python-wxgtk2.8
mit apturl
Paketliste zum Kopieren:
sudo apt-get install python-wxgtk2.8
sudo aptitude install python-wxgtk2.8
Jetzt kann man sich die aktuelle Version von NRClientX über Sourceforge herunterladen und entpacken[5]. Anschließend wechselt man per Terminal [1] in das entpackte Verzeichnis und startet die GUI mittels
python PyNRClientX.py
Es ist erforderlich, dass der TCP-Port 32976 an den Server weitergeleitet wird, da sich sonst die Clients nicht verbinden können.
Zunächst lädt man sich die aktuelle Version des Servers als .deb-Paket von der Herstellerseite herunter und installiert das Paket wie gewohnt[2].
Fremdpakete können das System gefährden.
Das Paket beinhaltet das Programm nrserver, welches nach der Installation automatisch gestartet wird.
Derzeit existiert eine Server-GUI nur für Windows, eine Linuxvariante ist aber in Arbeit. Man kann den Server jedoch auch problemlos über Terminal konfigurieren.
Eine neue Domäne (das ist der Name des virtuellen LANs) kann über die folgende Webseite angelegt werden:
https://www.neorouter.com/Dashboard/CreateDomain.aspx .
Man gibt einen Namen und ein Passwort für die Domäne, sowie die Kontaktdaten des Administrators an.
Jetzt wechselt man auf dem Server-PC in ein Terminal[1] und überträgt mit Root-Rechten[4] die neuen Domänedaten. Angenommen man hätte soeben die Domäne foo
mit dem Passwort bar
angelegt, so lautet der Befehl:
sudo nrserver -setdomain foo bar
Als nächstes wird der Serverport festgelegt, welcher standardmäßig auf 32976 liegt:
sudo nrserver -setport 32976
Das Subnet der Domäne wird nun auf den Bereich 10.0.0.0 gelegt:
sudo nrserver -dhcp 10.0.0.0 255.255.255.0
Hierdurch erhalten die Teilnehmer eine IP-Adresse der Form 10.0.0.x.
Die Einstellungen kann man sich nun nochmals anzeigen lassen per:
sudo nrserver -showsettings
Der Server ist nun soweit eingerichtet. Jetzt müssen noch die Teilnehmer angelegt und freigeschaltet werden.
Damit sich die Clients verbinden können, benötigt jeder Teilnehmer einen Benutzernamen auf dem NeoRouter-Server (nicht auf dem Linux-System!).
Im Terminal[1] verbindet man sich zum Server-PC und legt die Benutzer mit Root-Rechten[4] per
sudo nrserver -adduser <USERNAME> <PASSWORD> [admin|user]
an.
Soll zum Beispiel der Benutzer hannes
mit dem Passwort bierchen
angelegt werden, lautet die Eingabe:
sudo nrserver -adduser hannes bierchen user
Anschließend muss der Benutzer noch aktiviert werden:
sudo nrserver -enableuser hannes
Ab jetzt kann Hannes sich mit seinem Client mit dem Netzwerk verbinden.
Eine Liste aller Befehle erhält man im Wiki des Herstellers oder durch Eingabe von
nrserver -help
Die Installation mittels Wine schlägt derzeit fehl, so dass man an dieser Stelle auf einen Windows-PC im LAN bzw. eine Virtualisierung zurückgreifen muss.
Man lädt also von der Herstellerseite zunächst den Windows-Client herunter und installiert ihn unter Windows. Nach der Installation startet man über "Start -> Programme -> NeoRouter -> NeoRouter Configuration Explorer" den NeoRouter Configuration Explorer und verbindet sich mit dem Server. Die IP-Adresse ist hierbei die IP des Servers im lokalen Netz, Benutzername und Passwort entsprechen dem Linux-Account auf dem Server.
Im Konfigurationsfenster wechselt man in der linken Navigationsleiste zum Punkt "Settings".
Unter "Current Domain" wird nun der Name der neuen Domäne eingetragen. Die Einstellungen bei Port, NAT und DHCP müssen nicht verändert werden. Anschließend klickt man links unten auf den Link "Create a new Domain". Hierdurch wird man auf die Webseite von NeoRouter geleitet, auf welcher man nun die neue Domäne anlegen kann.
Ist dies geschehen, kann man sich nun im NeoRouter Configuration Explorer per "Setup Domain" über die neue Domäne anmelden. Nun kann man die ersten Benutzer für die Domäne freischalten.