Howto:Network:SerialConsoleServer

Serial Console Server

Manchmal ist es hilfreich, bei einem Server die serielle Schnittstelle zu überwachen. Wenn diese dann über das Netzwerk zugreifbar sein soll, kann man dies mit ser2net realsieren. Damit kann man dann per telnet auf die serielle Schnittstelle zugreifen, als wenn man mit einem Terminalprogramm auf dieser verbunden wäre.

Die Konfiguration erfolgt in "/etc/ser2net".

BANNER:banner:\r\nser2net port \p device \d [\s] (Debian GNU/Linux)\r\n\r\n

# <TCP port>:<state>:<timeout>:<device>:<options>
4000:telnet:600:/dev/ttyS0:115200 8DATABITS NONE 1STOPBIT banner

Alternativ kann man auch ser2net in der Kommandozeile starten:

sudo ./ser2net -C "BANNER:banner:\r\nPress enter to activate console\r\n" -C "4000:telnet:600:/dev/ttyUSB0:115200 8DATABITS NONE 1STOPBIT banner" -n

Leider ist die Verbindung unverschlüsselt. Dieses Problem kann man mit SSH und eigenen Benutzerzugang realisieren. Hierzu verwendet man ein Shellskript als Shell des Benutzers, z.B. "/usr/local/bin/serial_login.sh":

#!/bin/sh
/usr/bin/telnet 127.0.0.1 4000
exit

Benutzer erstellen und Shell setzen:

adduser --shell /usr/local/bin/serialtest.sh -q serialtest
Geben Sie ein neues UNIX-Passwort ein:
Geben Sie das neue UNIX-Passwort erneut ein:
passwd: Passwort erfolgreich geändert
Ändere Benutzerinformationen für serialtest
Geben Sie einen neuen Wert an oder drücken Sie ENTER für den Standardwert
        Vollständiger Name []:
        Raumnummer []:
        Telefon geschäftlich []:
        Telefon privat []:
        Sonstiges []:
Is the information correct? [Y/n] y

Man kann sich dann per SSH mit dwm neuen Benutzer einloggen und wird dann mit der seriellen Konsole verbunden:

ssh serialtest@192.168.2.12
serialtest@192.168.2.12's password:
Linux develop 3.2.2 #1 SMP PREEMPT Fri Jan 27 15:21:21 CET 2012 x86_64

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Sat Feb 25 10:56:05 2012 from 192.168.2.12
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.

Press enter to activate console

# pwd
/root

telnet> q
Connection closed.
Connection to 192.168.2.12 closed.

Von "http://www.lug-wr.de/wiki/index.php/Howto:Network:SerialConsoleServer"

Diese Seite wurde bisher 3876 mal abgerufen. Diese Seite wurde zuletzt geändert um 16:05, 25. Feb 2012. Inhalt ist verfügbar unter der GNU Free Documentation License 1.2.