Telnet

Telnet (Teletype Network) ist der Name eines im Internet verbreiteten Netzwerkprotokolls. Dieses alte und bekannte Client/Server-Protokoll basiert auf einem zeichenorientierten Datenaustausch üblicherweise über eine TCP-Verbindung. Neben dem Protokoll wird der Name Telnet auch für die Dienste Telnet-Server und insbesondere für Telnet-Client verwendet. Beide Dienste verwenden das Telnet-Protokoll zur Kommunikation. SSH ersetzt heutzutage den Dienst, verwendet aber weiterhin das Telnet-Protokoll zum Austausch von Konsolendaten wie z. B. Terminal-Typ und Höhe und Weite des Konsolen-Fensters.

Das Telnet-Protokoll besteht aus einem Satz von Kernfunktionen sowie einigen Erweiterungen. Das Kernprotokoll wird in den IETF-Dokumenten RFC 854 und RFC 855 (STD 8) beschrieben. STD 8 beschreibt einige grundsätzliche Arbeitsweisen des Protokolls und Erweiterungsmöglichkeiten.

Es gibt zahlreiche Erweiterungen des Protokolls, einige davon wurden als Internetstandards aufgenommen. Die IETF-STD-Dokumente 27–32 beschreiben diese Erweiterungen.

Telnet-Clients sind auf allen gängigen Betriebssystemen wie Linux, Unix, macOS und auf allen netzwerkfähigen Versionen von Windows standardmäßig unter dem Namen telnet aufrufbar. Seit macOS High Sierra wird Telnet vom Betriebssystem nicht mehr nativ unterstützt, kann aber via Homebrew nachinstalliert und dann wie gewohnt verwendet werden. Ein bekannter freier Open-Source-Client ist PuTTY.

Unter Microsoft Windows muss seit Vista der Telnet-Client erst aktiviert werden. Auf einem Windows Server 2008 muss der Dienst zunächst installiert und gestartet werden. Für den Fernzugriff muss zudem der Benutzer in die definierte Gruppe „TelnetClients“ hinzugefügt und die Firewall so eingestellt werden, dass der Standardport 23 nicht blockiert wird.

Geschichte 
Entwickelt wurde Telnet 1969 im Rahmen des Projektes ARPANET (Advanced Research Projects Agency Network), mit dem Ziel, teure Rechenzeit, Anwendungsprogramme und Datenbanken auch entfernt nutzen zu können. Es kam aber erst 1974 zum ersten Einsatz.

Einsatzzweck 
Telnet wird typischerweise zur Fernsteuerung von Computern in Form von textbasierten Ein- und Ausgaben eingesetzt. Hierzu baut der Telnet-Client eine unverschlüsselte Verbindung zu einem Telnet-Server auf. In dieser Phase wird ein notwendiges Kennwort im Klartext übergeben. Nach dem Verbindungsaufbau wird das Telnet-Protokoll optional initiiert. Auf diese Art können Programme ohne grafische Benutzeroberfläche bedient werden. Üblicherweise handelt es sich um eine Login-Konsole mit voller Befehlsgewalt. Durch die hohe Befehlsgewalt und die unverschlüsselte Übertragung gilt dieses Verfahren als unsicher und sollte durch eine SSH-Verbindung ersetzt werden, die auch das Telnet-Protokoll umsetzt, aber verschlüsselt überträgt.

Die Verbindung eines Telnet-Clients mit einem Telnet-Server wird häufig auch Telnet-Dienst genannt.

Dabei kann die steuernde Einheit sowohl ein abgesetztes Gerät als auch ein auf einem Computer installiertes Programm sein. Die Darstellung der übertragenen Informationen kann je nach Endgerät variieren.

Sobald die Verbindung zwischen dem Telnet-Client und dem Telnet-Server hergestellt wurde, werden die Tastatureingaben vom steuernden Endgerät zum fernen Computer gesendet und von dort wiederum Texte an das Endgerät zurück übertragen. Der ferne Computer überträgt so z. B. die textbasierten Ausgaben eines Programmes, etwa eine Schnittstelle zur Eingabe von Befehlen an das Betriebssystem. Auf diese Weise lässt sich von einem Computer aus ein anderer Computer fernbedienen. Dieser Fernzugriff kann sogar über mehr als zwei Stufen erfolgen.

Heutzutage gibt es wenige wesentliche Einsatzgebiete für einen Telnet-Client:
 Ansprechen eines Telnet-Server und Anmeldung am Server-System. Hierbei wird, wie bereits erwähnt, das Kennwort im Klartext übertragen. Daher sollte vorzugsweise der verschlüsselte Dienst Secure Shell (SSH) verwendet werden, sofern verfügbar.
 Verbindungs-Test mit beliebigen TCP/IP-Servern, z. B. mit HTTP-, SMTP- oder IMAP-Servern. Hierbei wird in der Regel nur das Zustandekommen einer TCP-Verbindung und der Handshake überprüft, aber keinerlei sicherheitskritische Information übertragen. Eine Verbindung zu diesen Servern, die eigentlich keine Telnet-Server sind, ist auch mit Netcat möglich.
 Zugriff auf netzwerkfähige Firmwares verschiedenster Geräte im lokalen Netzwerk.

Der Telnet-Dienst (Zusammenspiel zwischen Client und Server) wird u. a. für folgende Einsatzgebiete verwendet:
 Zugang zu einer entfernten Konsole (z. B. UNIX- oder DOS-Shell) mit Möglichkeit zur Nutzung sämtlicher Kommandos und Programme, die im Textmodus laufen.
 Zugang zu Textbasierten Anwendungen auf einem Applikationsserver.
 Datenbankabfragen, so zum Beispiel die Suche in Bibliothekskatalogen.
 Fernkonfiguration von Geräten und Ausgabe von Betriebsdaten.

Viele dieser Anwendungen sind nur einem versierten Fachpublikum bekannt. Z. B. benutzen Internet-Schachspieler oft den Free Internet Chess Server und Gospieler den Internet Go Server, auch Pandanet genannt. Deren grafische Benutzeroberfläche (GUI) interpretiert die Textausgabe der Konsole und zeigt den Spielzug des Gegners auf dem Schach- bzw. Go-brett an. Der eigene Spielzug wird mit der Maus durchgeführt, aber die Information darüber wird wiederum als Text übermittelt. Blindschach wird dann ohne GUI gespielt.

Vorteile 
 Das Client-Programm ersetzt viele Programme von Diensten, die man im Internet nutzen will.
 Eine Verbindung zwischen zwei Rechnern wird aufgebaut, auch wenn diese unter verschiedenen Betriebssystemen laufen.
 Zugriff auf alle Ressourcen ist möglich, wenn die Berechtigung dazu vorhanden ist.

Nachteile 
 Keine Sicherheitsfunktionalitäten – z. B. werden Passwörter im Klartext geschickt.
 Wegen des Vollzugriffs können Hacker leichtes Spiel haben.

Siehe auch 
 Tn3270, eine Telnet-Variante für die Kommunikation zwischen IBM 3270-Terminals und Großrechnern
 Telnet 5250, eine Telnet-Variante für die Kommunikation zwischen IBM 5250-Terminals und IBM System i mit OS/400
 PuTTY, ein Paket mit frei verfügbaren Telnet- und SSH-Clients
 Secure Shell (ssh)
 Remote Shell (rsh)
 Kermit (Software)

Weblinks 
 
 
 
 Liste von Telnet-Optionen. iana.org

Einzelnachweise 

Internet-Anwendungsprotokoll