V 1.00
Voraussetzung ist ein funktionierend aufgesetzter RPi und ser2net
. Für den Anschluss an die Firewall (in meinem Fall eine Cisco ASA 5505) wird ein USB nach Seriell Adapter von LogiLink (AU0048) verwendet, da er von Linux unterstützt wird. Falls mehrere Geräte angeschlossen werden sollen, kann auch beispielsweise der KÖNIG USB nach 4x Seriell Adapter verwendet werden. Die Installation ist gleich, lediglich die /etc/ser2net.conf
ist anzupassen.
ser2net
ermöglicht den Zugriff auf serielle Ports über TCP, wodurch der Pi zu einem Terminalserver wird. Die ser2net befindet sich in den Repositorys. Die ser2net
wird heruntergeladen und kompiliert. Nachsehen, ob es eventuell eine neuere Version gibt.
sudo wget http://downloads.sourceforge.net/project/ser2net/ser2net/ser2net-3.5.tar.gz
Tarball extrahieren:
sudo tar -xzvf ser2net-3.5.tar.gz
und installieren:
cd ser2net-3.5/ ./configure make sudo make install
Nach dem Installierendie Überbleibsel löschen:
make clean
Bevor die ser2net.conf
editiert werden kann, muss nachgesehen werden, welchen Port, bzw. welche Ports bei Mehrfachkabel, verwendet wird oder werden. Das folgende Kommando verwenden:
$ dmesg | grep tty [ 0.000000] Kernel command line: 8250.nr_uarts=0 bcm2708_fb.fbwidth=1280 bcm2708_fb.fbheight=1024 bcm2708_fb.fbswap=1 vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000 dwc_otg.lpm_enable=0 console=ttyS0,115200 console=tty1 root=PARTUUID=d112e6c0-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait [ 0.000814] console [tty1] enabled [ 1.028899] 3f201000.serial: ttyAMA0 at MMIO 0x3f201000 (irq = 87, base_baud = 0) is a PL011 rev2 [ 4411.906281] usb 1-1.2: pl2303 converter now attached to ttyUSB0
Hier ist der Anschluss mit ttyUSB0 verbunden. Nun kann die ser2net.conf
editiert, bzw. erstellt werden:
sudo nano /etc/ser2net.conf
Die folgenden zwei Zeilen einfügen:
BANNER:banner:Terminal Server TCP port 4001 CISCO ASA 4001:telnet:0:/dev/ttyUSB0:9600 8DATABITS NONE 1STOPBIT banner
Die erste Zeile zeigt ein Banner bei der Verbindung auf das angeschlossene Gerrät. Es wird nicht unbedingt benötigt, ist aber bei der Administration von mehreren Geräten hilfreich.
Die zweite Zeile beschreibt den TCP Port 4001 und die Verbindung zum Anschluss /dev/ttyUSB0
. Die Baud rate von 9600, 8 databits, no parity and 1 stopbit wird vom Endgerät erwartet. Je nach angeschlossenem Gerät ist das anzupassen.
Am Raspberry ser2net starten:
ser2net -n
Nun kann eine Verbindung von einem am Netzwerk angeschlossenen Computer erfolgen.
Hier wird das Programm Putty verwendet.
Start von ser2net
beim booten des RPi:
$ sudo nano /etc/rc.local
In der letzten Zeile von /etc/rc.local
steht der Eintrag exit 0
. Vor diesem Eintrag die folgende Zeile einfügen:
/usr/local/sbin/ser2net -n
Beim nächsten Start wird der RPi ser2net
automatisch starten. Nun ist der RPi als Terminalserver verwendbar.
Die Logging-Funktion von ser2net konfigurieren
Bevor das Logging konfiguriert wird, sollte die Uhrzeit auf die lokale Zeit eingestellt werden, da ein Zeitstempel in die Logfiles eingetragen wird. Die Zeitzone wird, wenn nicht schon geschehen, auf die mitteleuropäische Zeitzone (CEST - Central European Time) eingestellt.
$ sudo cp /usr/share/zoneinfo/Europe/Amsterdam /etc/localtime
Kontrollieren der Einstellung:
$ date Fre Nov 16 01:23:51 CET 2018
Nun wird ein Ordner erstellt, in den die Log-Files geschrieben werden:
$ sudo mkdir /var/log/ser2net
Nun muss die /etc/ser2net.conf
um die Zeile TRACEFILE:trace1:/var/log/ser2net/ser2net.log
und den Eintrag
tr=trace1 timestamp
ergänzt werden:
BANNER:banner:Terminal Server TCP port 4001 CISCO ASA TRACEFILE:trace1:/var/log/ser2net/ser2net.log 4001:telnet:0:/dev/ttyUSB0:9600 8DATABITS NONE 1STOPBIT banner tr=trace1 timestamp
Dieser Zusatz erzeugt einen Eintrag mit Portnummer und Zeitstempel im Logfile. Das Verzeichnis /var/log/ser2net/
muss über die nötigen Rechte verfügen. Im einfachsten Fall:
sudo chmod -R 777 /var/log/ser2net
Es wird dabei jeder Tastendruck protokolliert. Eventuell die Einstellungen ändern.