Die meisten modernen Desktops und Laptops sind nicht mehr mit seriellen Anschlüssen ausgestattet. Doch praktisch alle Systeme der Server-Klasse verfügen immer noch über diese Anschlussart. Um zwei Linux-Systeme über eine serielle Schnittstelle zu verbinden, braucht man ein Nullmodem-Kabel.
Das erste System wird so eingerichtet, dass es an einem Ende des Kabels auf eine Verbindung wartet. Das zweite wird am anderen Ende dafür eingesetzt, sich als Client in das System einzuloggen. Dabei kann diese Rollenverteilung leicht umgekehrt werden, denn schließlich funktioniert ein Nullmodem-Kabel in beide Richtungen.
Warum sollte man eine serielle Konsole verwenden? Einmal kann das sehr nützlich für Debugging-Zwecke sein, besonders wenn das Netzwerk ausgefallen ist und eines der Systeme weder Monitor noch Tastatur hat, also „headless“ ist. Zum anderen kann man diese Methode zur Umgehung von Sicherheitsrichtlinien verwenden. Ein Netzwerk lässt sich mit einem anderen verbinden – rein zu Einlogzwecken und nicht etwa zum Kopieren von Dateien -, um einen Shell-Zugriff auf das andere System zu haben.
Wenn beispielsweise ein Server in einer Demilitarized Zone (DMZ) liegt, lassen sich so möglicherweise komplizierte Netzwerkanforderungen für einen Shell-Zugriff auf den Server vom LAN aus umgehen. Das heißt auch, dass man keinen von außen zugänglichen sshd-Dienst mehr auf dem DMZ-Server laufen lassen muss.
Um loszulegen, sind nur das Nullmodem-Kabel und zwei Rechner mit seriellem Anschluss vonnöten, wobei es darauf zu achten gilt, dass die seriellen Anschlüsse im BIOS aktiviert sind. Auf dem Server wird dann die Datei /etc/inittab geöffnet und folgende Zeile hinzugefügt:
S0:12345:respawn:/sbin/agetty -L 115200 ttyS0 vt102
Damit wird dem init-Prozess mitgeteilt, agetty zu starten und auf eine Verbindung mit /dev/ttyS0 (dem ersten seriellen Anschluss) bei einer Baudrate von 115.200 Bit/s zu warten sowie die Terminalemulation vt102 zu verwenden. Auf dem Client gibt man nach Anschluss des Nullmodem-Kabels und dem Starten von agetty den Befehl screen ein, damit eine Verbindung aufgebaut wird.
$ screen /dev/ttyS0 115200
Betätigt man die Eingabetaste, sobald der screen-Befehl ausgeführt wird, erscheint der vertraute Log-in-Prompt auf dem entfernten System. Um die Verbindung zu trennen, muss einfach [Strg-A]+K in screen eingegeben werden, nachdem man sich abgemeldet hat.
Wer will, kann syslog dazu gebrauchen, alle Logmeldungen auch an den seriellen Anschluss zu senden, um die Meldungen darüber zu verfolgen. Das lässt sich durch Modifizieren der Datei /etc/syslog.conf erreichen, indem man die folgende Zeile hinzufügt:
*.* /dev/ttyS0
Sollte man also einmal in die Verlegenheit kommen, eine Verbindung zu einem Hardwaregerät über die Konsole herstellen zu müssen, etwa zu einem Netzwerk-Router oder einem Switch, dann ist es eine hervorragende und einfache Möglichkeit, hierzu eine serielle Verbindung und screen zu verwenden. Praktisch alle Linux-Distributionen bringen screen von Haus aus mit. Ansonsten lässt es sich einfach per apt-get, urpmi oder yum nachinstallieren. Und bei den meisten Linux-Distributionen ist agetty übrigens bereits vorinstalliert.
Erstmals liegen Preise für Verbraucher vor. Sie zahlen weniger als Geschäftskunden. Dafür beschränkt Microsoft den…
Die Entwickler arbeiten noch an weiteren „Verfeinerungen“. Windows Insider erhalten nun wohl eine erste Vorschau…
Laut Bitkom-Umfrage werden in jedem dritten Unternehmen in Deutschland private KI-Zugänge genutzt. Tendenz steigend.
2023 erlitten neun von zehn Unternehmen in der DACH-Region Umsatzverluste und Kurseinbrüche in Folge von…
Der Report „Pacific Rim“ von Sophos beschreibt Katz-und-Maus-Spiel aus Angriffs- und Verteidigungsoperationen mit staatlich unterstützten…
NVIDIA DGX SuperPOD soll voraussichtlich Mitte 2025 in Betrieb genommen und für Forschungsberechnungen genutzt werden.