Putty - Raw, Rlogin und Serial
Ingolf
- netzwerk
- ssh
- telnet
Guten morgen,
ich habe Putty bisher nur mit Telnet und SSH verwendet. Da gibt es auch noch Raw, Rlogin und Serial. Was bedeutet das bzw. könnt ihr mir ein Beispiel nennen, wann man Raw, Rlogin und Serial verwendet?
Hallo Ingolf,
ich habe Putty bisher nur mit Telnet und SSH verwendet. Da gibt es auch noch Raw, Rlogin und Serial. Was bedeutet das bzw. könnt ihr mir ein Beispiel nennen, wann man Raw, Rlogin und Serial verwendet?
„Raw“ bezeichnet eine reine TCP-Verbindung ohne eingebettetes Protokoll. Bei SSH hast du das SSH-Protokoll, das über TCP gesprochen wird. Bei Raw fällt dieser Teil weg und du musst ein eventuellen Protokoll selber sprechen.
„Serial“ ist eine Verbindung über eine serielle Schnittstelle, etwa für die Kommunikation mit einer seriellen Konsole.
„Rlogin“ ist ein veraltetes Protokoll ähnlich zu Telnet. Es ist auch unverschlüsselt. Wird heute, genau wie Telnet, eigentlich nicht mehr benutzt.
LG,
CK
„Raw“ bezeichnet eine reine TCP-Verbindung ohne eingebettetes Protokoll. Bei SSH hast du das SSH-Protokoll, das über TCP gesprochen wird. Bei Raw fällt dieser Teil weg und du musst ein eventuellen Protokoll selber sprechen.
Verstehe ich nicht, TCP ist doch bereits ein Protokoll, deshalb ist TCP in Raw eingebettet? Wann macht die Verwendung von Raw in der Praxis Sinn?
„Serial“ ist eine Verbindung über eine serielle Schnittstelle, etwa für die Kommunikation mit einer seriellen Konsole.
Ist mit serielle Schnittstelle eine Kabelverbindung gemeint die nicht über ein Netzwerk mit Switch oder Router zustande kommt?
„Rlogin“ ist ein veraltetes Protokoll ähnlich zu Telnet. Es ist auch unverschlüsselt. Wird heute, genau wie Telnet, eigentlich nicht mehr benutzt.
Welchen Sinn machte Rlogin, wenn es doch das gleiche wie Telnet machte? Telnet alleine hätte doch ausgereicht? Warum sollte man sich damals für Rlogin entscheiden, wenn man doch alles genauso gut mit Telnet machen konnte?
Hallo Ingolf,
„Raw“ bezeichnet eine reine TCP-Verbindung ohne eingebettetes Protokoll. Bei SSH hast du das SSH-Protokoll, das über TCP gesprochen wird. Bei Raw fällt dieser Teil weg und du musst ein eventuellen Protokoll selber sprechen.
Verstehe ich nicht, TCP ist doch bereits ein Protokoll, deshalb ist TCP in Raw eingebettet? Wann macht die Verwendung von Raw in der Praxis Sinn?
Nee, „Raw“ hat eben kein weiteres Protokoll eingebettet. PuTTy nimmt dir bei „Raw“ nur die TCP-Kommunikation mit dem Kommunikationspartner ab, damit du nicht von Hand TCP-Pakete schreiben musst. Das, was über TCP gesprochen wird, das musst du selbst sprechen. Wenn du dich mit „Raw“ etwa auf Port 80 bei einem Web-Server verbindest, musst du HTTP selber sprechen.
„Serial“ ist eine Verbindung über eine serielle Schnittstelle, etwa für die Kommunikation mit einer seriellen Konsole.
Ist mit serielle Schnittstelle eine Kabelverbindung gemeint die nicht über ein Netzwerk mit Switch oder Router zustande kommt?
Nicht unbedingt. Es gibt auch Serial Over LAN, da wird dann die serielle Verbindung durch TCP getunnelt.
„Rlogin“ ist ein veraltetes Protokoll ähnlich zu Telnet. Es ist auch unverschlüsselt. Wird heute, genau wie Telnet, eigentlich nicht mehr benutzt.
Welchen Sinn machte Rlogin, wenn es doch das gleiche wie Telnet machte? Telnet alleine hätte doch ausgereicht? Warum sollte man sich damals für Rlogin entscheiden, wenn man doch alles genauso gut mit Telnet machen konnte?
Geschichtliche Gründe. Rlogin wurde im Rahmen der Berkeley r-commands in den frühen 80ern entwickelt, als Teil von BSD 4.1. Vermutlich ein Versuch eines Lock-In-Mechanismus.
LG,
CK
Nee, „Raw“ hat eben kein weiteres Protokoll eingebettet. PuTTy nimmt dir bei „Raw“ nur die TCP-Kommunikation mit dem Kommunikationspartner ab, damit du nicht von Hand TCP-Pakete schreiben musst. Das, was über TCP gesprochen wird, das musst du selbst sprechen. Wenn du dich mit „Raw“ etwa auf Port 80 bei einem Web-Server verbindest, musst du HTTP selber sprechen.
Wann macht die Nutzung von Raw in der Praxis Sinn? Es ist doch viel bequemer, wenn Putty die in TCP eingebetteten Pakete erstellt. Warum sollte man das händisch machen?
Tach!
Wann macht die Nutzung von Raw in der Praxis Sinn? Es ist doch viel bequemer, wenn Putty die in TCP eingebetteten Pakete erstellt. Warum sollte man das händisch machen?
TCP ist in der Transport-Schicht angesiedelt. Telnet, SSH und auch HTTP laufen in der darüberliegenden Anwendungsschicht. PuTTY kann in der Anwendungsschicht von Haus aus nur Telnet und SSH (Rlogin schenken wir uns). Man kann aber auch beispielsweise HTTP und SMTP ausführen wollen, weil man ein Problem untersuchen möchte, das mit Webbrowser und Email-Client nicht zu klären ist. Dazu kann man PuTTY nehmen, das bei Raw sich um die Transportschicht TCP kümmert, und dann dem Nutzer freie Hand in der Anwendungsschicht lässt.
dedlfix.
Hallo Ingolf,
Nee, „Raw“ hat eben kein weiteres Protokoll eingebettet. PuTTy nimmt dir bei „Raw“ nur die TCP-Kommunikation mit dem Kommunikationspartner ab, damit du nicht von Hand TCP-Pakete schreiben musst. Das, was über TCP gesprochen wird, das musst du selbst sprechen. Wenn du dich mit „Raw“ etwa auf Port 80 bei einem Web-Server verbindest, musst du HTTP selber sprechen.
Wann macht die Nutzung von Raw in der Praxis Sinn? Es ist doch viel bequemer, wenn Putty die in TCP eingebetteten Pakete erstellt. Warum sollte man das händisch machen?
Nochmal: PuTTy macht dir das TCP. Das, was über TCP liegt (z.B. HTTP oder Telnet oder FTP) musst du selber machen.
Der Sinn von so einer Raw-Verbindung ist Debugging. Du kannst die Eingabeparameter kontrollieren und so die Ausgabe unter definierten Parametern betrachten. Etwa um die Caching-Header zu kontrollieren.
Ein weiterer Einsatzzweck wäre etwa die Kommunikation mit einem Dienst, der nur einen TCP-Socket zur Verfügung stellt.
LG,
CK
Verstehe ich nicht, TCP ist doch bereits ein Protokoll, deshalb ist TCP in Raw eingebettet? Wann macht die Verwendung von Raw in der Praxis Sinn?
Ja. Du siehst z.B. in der Puttyoberfläche bei ssh längst nicht alles. Damit kann man dann eigene Verschlüsselungsalgos (+Protokolle) (nicht empfohlen) oder auch Protokolle wie smtp, pop, imap "fahren".
Das "Raw" ("roh") (in Putty) dient also vor allem Entwicklern. Wenn Du mehr darüber wissen willst, dann fange beim OSI-Schichtenmodell zu lesen an. "Raw" lässt alle Schichten über 4 weg - die muss man dann selbst "bauen".
„Serial“ ist eine Verbindung über eine serielle Schnittstelle, etwa für die Kommunikation mit einer seriellen Konsole.
Ist mit serielle Schnittstelle eine Kabelverbindung gemeint die nicht über ein Netzwerk mit Switch oder Router zustande kommt?
Klares "Ja". Die Schnittstelle (regelmäßig RS-232) ist bei Desktop-Rechnern und Laptops zwar nicht mehr verbaut, aber bei Servern häufig noch vorhanden. Die darüber zu übertragende Datenrate ist zwar gering (2400 bis 115000 Byte/Sekunde; je kürzer die Leitung so höher die mögliche Rate), reicht aber aus, um Text-Terminals zu betreiben. Das wird verwendet um sich über elektrische/elektronische Umschalter (da hätten wird doch einen "Switch") mit Servern in Rechenzentren zu verbinden um z.B. den Boot-Prozess beobachten zu können. Zu diesem Zeitpunkt gibt es ja noch kein Netzwerk.
Für "moderne" Rechner gibt es aber "serielle Schnittstellen" via USB und Treibern.
Das angeführte "Serial over Lan" bedeutet, dass zwischen zwei Geräten (Rechnern) die serielle Verbindung nicht über echte Drähte erfolgt sondern einpackt wird um es als Pakete über das Netzwerk zu übertragen. Die Anfangs- und Endpunkte behaupten aber gegenüber dem Benutzer, ebenso wie die USB-Geräte, ganz normale serielle Schnittstellen zu sein. Man macht das um Leitungen zu sparen und weil die Übertragungslänge (und die Datenrate) arg begrenzt ist.
„Rlogin“ ist ein veraltetes Protokoll ähnlich zu Telnet. Es ist auch unverschlüsselt. Wird heute, genau wie Telnet, eigentlich nicht mehr benutzt.
Welchen Sinn machte Rlogin, wenn es doch das gleiche wie Telnet machte? Telnet alleine hätte doch ausgereicht? Warum sollte man sich damals für Rlogin entscheiden, wenn man doch alles genauso gut mit Telnet machen konnte?
Nicht alles "genau so".
Telnet:
Benutzername und Passwort werden auf dem entfernten Server verglichen.
rlogin:
Benutzername und Passwort werden auf dem Host verglichen, an dem der Benutzer sitzt. Der entfernte Server vertraut dem Host, der natürlich konfigurierbar ist.
rlogin mit kerberos:
Benutzername und Passwort werden auf einem Dritten Host (kerberos = Wachhund vor der Hölle nach altgriechischer Vorstellung) verglichen. Der entfernte Server vertraut dem Kerberos-Server, der natürlich konfigurierbar ist.
telnet und rlogin übertragen alle Daten unveschlüsselt. Das will man heute so nicht mehr haben. Nicht mal im eigenen Netz, weil ein infizierter Host oder ein böswilliger Mitarbeiter dann ausreicht um die Datensicherheit (Vertraulichkeit, Integrität und Verfügbarkeit der Daten) ganzer Firmen oder Rechenzentren zu beschädigen.
Tach!
Das "Raw" ("roh") (in Putty) dient also vor allem Entwicklern. Wenn Du mehr darüber wissen willst, dann fange beim OSI-Schichtenmodell zu lesen an. "Raw" lässt alle Schichten über 4 weg - die muss man dann selbst "bauen".
OSI ist zu komplex und passt nicht ganz aufs Internet. Besser man verwendet das einfachere TCP/IP-Referenzmodell mit seinen 4 Schichten. Alles darüber wird meist nicht benötigt, wenn man über Netzwerkkommunikation spricht.
dedlfix.
Das "Raw" ("roh") (in Putty) dient also vor allem Entwicklern.
Stellt man in Putty auf "Raw" muss man irgendwie die Bezeichnung für die Schnittstelle angeben. Das steht so was komisches wie /dev/ttyS0.
Was ist /dev? Was ist ttyS0? Woher weiß ich was ich da angeben muss wenn ich ein USB-Kabel verwende?
Tach!
Das "Raw" ("roh") (in Putty) dient also vor allem Entwicklern.
Stellt man in Putty auf "Raw" muss man ja irgendwie die Bezeichnung für die Schnittstelle angeben. Das steht so was komisches wie /dev/ttyS0.
Nein, muss man nicht. Das braucht nur den Hostnamen oder die IP-Adresse vom Ziel und einen Port. Raw hat eine TCP/IP-Verbindung als Grundlage.
Was ist /dev? Was ist ttyS0? Woher weiß ich was ich da angeben muss wenn ich ein USB-Kabel verwende?
Wenn du eine V.24- bzw. RS-232-Verbindung aufbauen möchtest, die über einen USB-zu-Seriell-Adapter geht, dann gibst du den Namen der simulierten COM-Schnittstelle an, die du im USB-Treiber eingestellt hast. Da PuTTY aber unter Windows läuft, haben Linux-Geräte-Bezeichnungen /dev/... keine Bedeutung, sondern das ist COMx mit x von 1 bis 255.
dedlfix.