Ich musste eine TK-Anlage konfigurieren. Leider hat die Anlage nur einen seriellen Anschluss dafür. Daher hätte ich hinfahren müssen. Keine Lust! Zum Glück steht gleich daneben ein Linux Server. Damit ist es kein Problem einen Konsolen Server in Eigenbau aufzusetzen. Was brauch ich also für meinen Plan? Gar nicht viel:
- einen USB Adapter USB auf Seriell Adapter (die anderen Schnittstellen waren belegt)
- socat
Jetzt nur noch auf dem Server in /etc/inittab folgende Zeile ergänzen:
con:23:respawn:/usr/bin/socat TCP4-LISTEN:4001,reuseaddr,fork \
/dev/ttyUSB1,raw,echo=0,crnl
Fertig! Jetzt lässt sich die entfernte serielle Schnittstelle einfach per telnet auf Port 4001 ansprechen. Wem Telnet zu unsicher ist, der kann auch socat ssl sprechen lassen. Braucht man auf der anderen Seite für die Administrationssoftware auch eine serielle Schnittstelle, so kann man auch socat nehmen und einfach die beiden Seiten der Parameter vertauschen. Etwa:
/usr/bin/socat PTY,link=$HOME/dev/serial,raw,echo=0,waitslave \
TCP4:ip-des-servers.de:4001
So lässt sich übrigens wirklich ganz einfach ein Konsolenserver mit fast beliebig vielen seriellen Schnittstellen bauen. Wenn man noch beim Kauf des Adapters aufpasst und einen mit Seriennummer kauft, dann hat die USB-Schnittstelle dank udev auch immer die gleiche Bezeichnung.