Mit Telnet rufen Sie Webseiten ab, schreiben E-Mails oder News, chatten oder spielen. Einer der ältesten Internet-Dienste nützt in mehr Anwendungsbereichen, als man meint.
London: Regen – Paris: Wind – Frankfurt: Die Sonne brennt. Bekanntermaßen hilft hier nur Drei-Wetter-T. T. hilft, auch wenn sonst nichts hilft. Das Telnet-Protokoll (Teletype Network) dient der Terminal-Fernverbindung, der interaktiven Kommunikation mit entfernten Rechnern. Es ist einer der ältesten, aber auch einer der Dienste im Internet, die am wenigsten Sicherheit bieten. Der Grund: Telnet überträgt Daten im Klartext. Mit Netzwerk-Monitoring-Tools wie Ethereal oder tcpdump kann so jeder, der auf die physikalische Verbindung zugreift, die Übertragung belauschen und Passwörter oder Benutzerkennungen aufzeichnen (Abbildung 1). Das im Hinterkopf und mit Umsicht benutzt haben Sie mit Telnet ein nützliches Werkzeug.
Mailbomben entschärfen
Mit dem Befehl telnet, löschen Sie E-Mails mit zu großen Anhängen aus der Mailbox, ohne den Mailreader neu zu konfigurieren Die Parameter des Befehls sind der Rechnername und der anzusprechende Port. Ein POP-Server läuft gewöhnlich auf Port 110. Im Beispiel wählt Telnet den POP-Server des Freemail-Anbieters GMX an:
[andreas]~ > telnet pop.gmx.net 110 Trying 213.165.64.20… Connected to imap.gmx.net. Escape character is '^]'. +OK GMX POP3 StreamProxy ready <20416.1075119263@mp021>
Nach der Meldung “+OK GMX POP3 StreamProxy ready” erwartet der GMX-Rechner den User-Namen und das Passwort. Geben Sie USER Ihre_Kennung ein und übertragen Sie das mit der Eingabetaste. Danach entsprechend PASS Ihr_Passwort und wiederum die Eingabetaste.
USER (Ihre-Kennung) +OK May I have your password, please?PASS (Ihr-Passwort)
Nach korrekter Kennung (ohne Fehlermeldung "-ERR") zeigt der Server, wieviele E-Mails Sie haben, und wieviel Platz diese insgesamt belegen:
+OK mailbox has 2 messages (36052 octets)
Den einzelnen Platzbedarf ermittelt das Kommando LIST:
LIST +OK mailbox has 2 messages (36052 octets) 1 4919 2 31133
Um heraus zu finden, von welchem Absender die größere Nachricht stammt, benutzen Sie den Befehl TOP 2 10. Er zeigt den Header sowie die ersten zehn Zeilen des Inhalts der zweiten Nachricht an. Die Nachricht löschen Sie bei Bedarf mit dem Kommando DELE 2. Der POP-Server bestätigt:
DELE 2 +OK message deleted
Beenden Sie die Verbindung zur Mailbox, wird die unerwünschte Mail entfernt:
QUIT +OK bye Connection closed by foreign host.
Bis zu diesem Zeitpunkt können Sie jedes Löschkommando aufheben – allerdings nicht einzeln. Der Befehl RSET setzt alle Löschmarkierungen einheitlich zurück.
E-Mails per Kommandozeile
Natürlich können Sie über Telnet auch Mails schreiben: Der passende SMTP-Server lauscht für gewöhnlich auf Port 25.
[andreas]~ > telnet localhost 25 Trying 127.0.0.1… Connected to localhost. Escape character is '^]'. 220 comtwo.comtwo ESMTP Exim 3.35 #1 Tue, 27 Jan 2004 12:05:40 +0100
Die Zeile mit der Eröffnung 220 bedeutet “Service ready”. Die Folgemeldung hängt davon ab, welcher SMTP-Server eingesetzt und wie er konfiguriert ist.
Mit EHLO localhost melden Sie sich am Server an und bekommen die Bestätigung:
EHLO localhost 250-comtwo.comtwo Hello localhost [127.0.0.1]
Jetzt setzen Sie mit dem Befehl MAIL From: Ihre Absende-Adresse in die Nachricht:
MAIL From: Ihre@Mailadres.se
Normalerweise wird die Eingabe mit einer 250er-Meldung beantwortet; das steht für "sender ok" oder "is syntactically correct". Ähnlich wie zuvor beim POP-Server machen Sie eine bereits erteilte Anweing mit RSET rückgängig, wenn Sie sich verschrieben haben.
Jede Mail braucht einem Empfänger. Den erfährt der SMTP-Server mit dem Kommando RCPT To::
RCPT To: Mail@Empfaeng.er
Den Textkörper der Nachricht leitet DATA ein. Das Ende der Mitteilung erkennt der Server an einer Zeile mit einem alleinstehenden Punkt:
DATA 354 Enter message, ending with "." on a line by itselfHallo,na, wie gehts?Gruss,Tux.
Nach der Eingabe des Punktes übernimmt der SMTP-Server die Mail und schickt sie weiter. Sie trennen die Verbindung mit QUIT.
Usenet ohne Newsreader
Telnet kann selbst auf Nachrichten aus dem Usenet zugreifen. News-Server benutzen das Protokoll NNTP auf Port 119. Hier zum Beispiel der News-Server von T-Online:
[andreas]~ > telnet news.t-online.de 119 Trying 62.153.159.134… Connected to news.t-online.com. Escape character is '^]'. 200 T-Online Newsserver bereit [00] (posting ok).
Der Provider T-Online identifiziert seine Kunden bereits über die IP-Adresse, die automatisch beim Verbindungsaufbau übertragen wird. Benutzerkennung und Passwort müssen Sie dort nicht eingeben. Gegenüber anderen Newsservern müssen Sie sich eventuell mit Ihrer User-Kennung ausweisen:
[andreas]~ > telnet News.cis.dfn.de 119 200 The server welcomes pd904284d.dip.t-dialin.net (217.4.40.77). Authorization required for reading and posting.AUTHINFO simple User-Name Passw. 281 Authentication accepted.
Kommen Sie einmal nicht weiter, listet das Kommando HELP alle Befehle auf, die der Server versteht.
Mit LIST erfahren Sie, welche Newsgroups der Server anbietet und mit GROUP wählen Sie eine davon aus. Ein NNTP-Server kann durchaus einige tausend Newsgroups vorhalten.
Sinnvollerweise benutzen Sie das Kommando NEWNEWS. Es listet alle neuen Artikel einer Newsgroup auf, beginnend ab einem bestimmten Datum, das Sie im Format Jahr-Monat-Tag Stunde-Minute-Sekunde festlegen. Die Nachrichten sind anhand der Message-ID unterschieden, im Beispiel die Message-IDs aus der Newsgroup comp.mail.mutt – alle Postings, die ab dem 26.01.2004 um 8:15 Uhr eingeliefert wurden.
NEWNEWS comp.mail.mutt 040126 081500 230 New news follows <2004-01-26T07-10-38@guckes.net> <slrnc1aq9o.1g7.akneib@andreas.kneib.biz> […]
Einzelne Artikel rufen Sie mit den Kommandos ARTICLE, BODY oder HEAD ab. ARTICLE liefert den Artikel samt Header und Textkörper, BODY zeigt ausschließlich den Textkörper und HEAD nur die Header des Postings:
ARTICLE <slrnc1aq9o.1g7.akneib@andreas.kneib.biz> 220 0 article <slrnc1aq9o.1g7.akneib@andreas.kneib.biz> Path: uni-berlin.de!pd9042c21.dip.t-dialin.NET!not-for-mail From: Andreas Kneib <akneib@gmx.net> Newsgroups: comp.mail.mutt Subject: Re: alias file isn't used […]
Eigene Artikel leiten Sie mit POST ein. Auf diesen Befehl antwortet der Server, mit welcher Message-ID er den Artikel versehen wird. Mit den Zeilen Newsgroups:, From: und Subject: legen Sie fest, in welche Newsgroup Ihr Posting gelangt; welche Absenderadresse und welcher Betreff angezeigt wird. Nach einer Leerzeile fügen Sie den Nachrichtentext ein und beenden den Artikel wie eine E-Mail mit einem einzelnen Punkt.
POST 340 Ok, empfohlene ID <…@yx.tld>Newsgroups: de.testFrom: Ihre@Mailadress.seSubject: testhallo. 240 Artikel gepostet mit ID <…@yx.tld>
Geplauder und Geplapper
Auch der Chat im IRC-Netz ist mit Telnet einfach. Der Standard-Port für einen IRC-Server ist 6667. Sobald er sich meldet, geben Sie Ihren Nickname mit dem Befehl nick Ihr_Nickname ein. Darunter folgt eine Zeile, die mit user beginnt und entsprechend dem Schema user User-Name Host Server Ihr_Name faufgebaut ist. Als User-Namen dürfen Sie duch den gewählten Nickname verwenden. Anstelle des Host- und Servernamens geben Sie einfach zweimal “localhost” ein. Sie können auch zwei Punkte oder Nullen eintragen:
[andreas]~ > telnet irc.fu-berlin.de 6667 Trying 130.133.254.2… Connected to IRCnet.irc.fu-berlin.de. Escape character is '^]'.nick _c3po_user _c3po_ . . andreas
Schon rauscht in Ihrem Xterm die Wilkommens-Botschaft des IRC-Servers vorbei. Das schnelle Durchlaufen des Terminal-Outputs ist einer der Gründe, warum IRC via telnet nur hart gesottenen Anwendern oder in kleinen Chats Freude macht.
In einen Chatroom gelangen Sie mit dem Befehl join #Channel-Name. Eine Unterhaltung starten Sie mit dem Kommando privmsg. Mit privmsg #Channel-Name Hallo rufen Sie Ihr “Hallo” in den Chatroom. Der folgende Befehl sendet einen Gruß direkt an den User mit dem Pseudonym Grumbatz:
privmsg Grumbatz Hallo
Da Grumbatz nicht antwortet, beenden Sie die Verbindung mit einem schlichten quit
World Wide Web
Um eine Web-Seite mal ohne Browser zu lesen kontaktieren Sie den HTTP-Port 80 ides Servers. Mit GET / und einem zweimaligen Druck der Enter-Taste fordern Sie das Hauptdokument von www.linux-user.de an:
[andreas]~ > telnet www.linux-user.de 80 Trying 62.245.157.217… Connected to www.linux-user.de. Escape character is '^]'.GET / <html> <head> <base href="http://www.linux-user.de/" /> <title> […]
Weil auch dieser Output zu schnell wieder durchläuft, speichern Sie ihn mit dem Programm tee zusätzlich in eine Datei ab, die sie danach durchsehen oder editieren:
[andreas]~ > telnet www.linux-user.de 80 | tee datei.html
Das Tool html2text konvertiert die Datei datei.html in eine ansehnliche Textdatei (Abbildung 2):
html2text -o datei.txt datei.html
Natürlich holt GET nicht nur Startseiten, sondern jedes Dokument – wenn Sie die genaue URL kennen.
[andreas]~ > telnet www.linux-user.de 80GET /ausgabe/2004/02/080-zubefehl <html> <head> <base href="http://www.linux-user.de/ausgabe/2004/02/080-zubefehl/" /> […]
Ab und an beißt GET auf Granit: Das passiert immer dann, wenn sich mehrere Webserver eine IP-Adresse teilen. In so einem Fall ergänzen Sie GET um das benutzte Protokoll (HTTP/1.1) und den Rechnernamen host:
[andreas]~ > telnet www.tux.tld 80GET / HTTP/1.1host: www.tux.tld[Enter][Enter]
Verspieltes Telnet
Nach all den verstaubten Protokollen, Befehlen und Ports suchen Sie Abwechslung:Sehen Sie sich mit telnet koeln.ccc.de die Namens-Maschine des Chaos Computer Club an oder spielen Sie als Zauberer mit telnet nethack.fukt.bth.se ein paar Runden NetHack. Wem das zu einsam ist, der mag vielleicht über telnet 129.69.221.130 3333 UNItopia besuchen oder andere MUDs [1] erkunden. Egal ob London, Paris oder Frankfurt: Telnet lässt Sie nicht im Regen stehen.
Glossar
-
POP
-
Post Office Protocol. Verfahren zur Übermittlung von E-Mails vom (Mail-)Server zum Benutzer-Rechner.
-
SMTP
-
Simple Mail Transport Protocol. Ein Verfahren zur Verteilung von E-Mails.
-
NNTP
-
Network News Transfer Protocol. Verfahren zur Übertragung von Postings in Newsgroups.
-
Message-ID
-
Header-Zeile, die die einmalige Kennung einer Nachricht bildet.
-
IRC
-
Internet Relay Chat.
-
HTTP
-
HyperText Transfer Protocol. Datenübertragungsverfahren im World Wide Web.
-
MUD
-
Multi User Dungeon. Fantasy-Rollenspiel mit mehreren (menschlichen) Mitspielern im Dungeons & Dragons-Stil.
Infos
[1] Simon Kowalewski, “Spiele über das Netzwerk”, LinuxUser 09/2000, S. 26: http://www.linux-user.de/ausgabe/2000/09/026-mud/mud-artikel.html






