Einleitung
- Telnet (Telecommunication Network) ist ein textbasiertes, bidirektionales Kommunikationsprotokoll aus den 1970er-Jahren.
- Es ist im RFC 854 definiert und arbeitet auf der Anwendungsschicht (Layer 7).
- Telnet diente ursprünglich als allgemeines Terminalprotokoll, um eine Verbindung zwischen einem lokalen Terminal und einem entfernten Host herzustellen.
- Standardport: TCP 23.
Aufgabe
- Das Telnet-Protokoll stellt keine spezielle Anwendung dar, sondern einen Rahmen für den Austausch von Steuer- und Zeichendaten zwischen Terminal und Serverprozess.
- Es kann zur Fernanmeldung, für Geräte- oder Router-Konsolen, aber auch als Transport für andere textbasierte Dienste verwendet werden.
Protokollstruktur
- Telnet arbeitet über eine zuverlässige TCP-Verbindung.
- Alle übertragenen Daten bestehen aus 8-Bit-Zeichen (Oktetten).
- Zeichenwerte < 128 werden als ASCII interpretiert.
- Zeichenwerte ≥ 128 werden als Steuersequenzen interpretiert, wenn sie mit dem Kommando-Byte **IAC (Interpret As Command)** beginnen.
Steuerzeichen
| Kürzel |
Wert (dezimal/hex) |
Bedeutung
|
| IAC |
255 / 0xFF |
Interpret As Command – leitet Telnet-Befehle ein
|
| DO |
253 / 0xFD |
Fordert Option vom Partner an
|
| DONT |
254 / 0xFE |
Verlangt, dass Option deaktiviert wird
|
| WILL |
251 / 0xFB |
Bietet Option an
|
| WONT |
252 / 0xFC |
Lehnt Option ab
|
| SB |
250 / 0xFA |
Beginn Subnegotiation
|
| SE |
240 / 0xF0 |
Ende Subnegotiation
|
Beispiel für eine Aushandlung:
Client → Server: IAC DO ECHO
Server → Client: IAC WILL ECHO
Der Client bittet den Server darum, das Echo-Verhalten zu übernehmen. Der Server stimmt zu.
Optionen
- Telnet-Optionen erweitern die Grundfunktion, indem sie Terminaleigenschaften oder Übertragungsmodi definieren.
- Wichtige standardisierte Optionen:
| Option |
Code |
Bedeutung
|
| ECHO |
1 |
Server sendet eingegebene Zeichen zurück (Terminal-Echo)
|
| SUPPRESS GO AHEAD |
3 |
Unterdrückt „Go-Ahead“-Zeichen bei Vollduplex-Betrieb
|
| TERMINAL-TYPE |
24 |
Überträgt Terminaltyp (z. B. VT100)
|
| NAWS (Negotiate About Window Size) |
31 |
Übergibt Fenstergröße (z. B. 80×24)
|
| LINEMODE |
34 |
Aktiviert zeilenorientierte Eingabe
|
Datenfluss
- Nach Abschluss der Optionsaushandlung werden die reinen Zeichendaten in beide Richtungen übertragen.
- Zeilenenden bestehen aus CR LF (Karikage Return + Line Feed).
- Der Kommunikationskanal ist vollständig bidirektional, es gibt keine getrennten Steuer- und Datenkanäle.
400px
Beispiel einer Sitzung (konzeptuell)
Client → Server: IAC DO SUPPRESS-GO-AHEAD
Server → Client: IAC WILL SUPPRESS-GO-AHEAD
Client → Server: IAC DO ECHO
Server → Client: IAC WONT ECHO
Client → Server: login: admin⏎
Server → Client: Password:
Client → Server: ******⏎
Server → Client: Welcome to Unix (tty1)
Zeichendarstellung
- Das Telnet-Protokoll verwendet 7-Bit-ASCII-Zeichen.
- Bei Bedarf können 8-Bit-Daten durch Verdopplung des IAC-Bytes (0xFF 0xFF) übertragen werden.
- Zeilenendezeichen sind immer „Carriage Return + Line Feed“ (CR LF, 0x0D 0x0A).
Nutzungsschicht
- Telnet definiert weder Authentifizierung noch Verschlüsselung.
- Es stellt lediglich die Terminal-Abstraktion bereit.
- Dienste wie Login-Shells, Router-CLI oder MUD-Server verwenden Telnet als Transportmechanismus.
RFCs
| RFC |
Titel |
Jahr
|
| RFC 854 |
Telnet Protocol Specification |
1983
|
| RFC 855 |
Telnet Option Specifications |
1983
|
| RFC 857–861 |
Diverse Optionen (ECHO, SUPPRESS GO AHEAD, STATUS, TIMING MARK etc.) |
1983
|
Sicherheit
- Telnet überträgt alle Daten im Klartext.
- Weder Authentifizierung noch Verschlüsselung sind Teil des Protokolls.
- Das macht Telnet anfällig für Sniffing- und MITM-Angriffe.
- Moderne Systeme ersetzen Telnet vollständig durch SSH (RFC 4251 ff.).
Verwendung heute
- Analyse und Test textbasierter Dienste (SMTP, POP3, HTTP)
- Einige Netzwerkgeräte unterstützen es noch als Konsolenzugang
- Zu Lehrzwecken, um das Prinzip bidirektionaler Textprotokolle zu zeigen
Fazit
- Telnet war ein grundlegendes Terminalprotokoll und Wegbereiter für interaktive Internetkommunikation.
- Seine Architektur (Option Negotiation, Steuerbytes, Klartext) diente als Vorlage für viele spätere RFC-Protokolle.
- Aus Sicherheitsgründen wird Telnet heute nicht mehr produktiv eingesetzt, ist aber für Protokollanalyse und Lehre weiterhin relevant.
Nur für Demonstrationszwecke