Wir unterscheiden zwei Anwendungen für den Befehl login:
| | tunnel login <secret key> | |
| <secret key>: | | der geheime Schlüssel, mit dem Sie sich an der gesteuerten Instanz anmelden | |
| Ort der Wirkung: | | gesteuerte Instanz | |
| Dauer der Wirkung: | | Kommandozeile | |
| benötigtes login: | | nie | |
| wird beeinflusst von: | | password | |
| beeinflusst Befehle: | | alle, die ein lokales login benötigen | |
|
| |
| login erteilt die Berechtigung, in der laufenden Kommandozeile Befehle einzugeben. | |
|
Wird der geheime Schlüssel der gesteuerten Instanz mitgegeben, erteilt login die Berechtigung, in der laufenden Kommandozeile Befehle einzugeben.
Wird ein anderer Schlüssel mitgegeben, entzieht login nur die Berechtigung für scramble und descramble, für andere Befehle bleibt die Berechtigung unverändert.
Der Befehl login ist immer erfolgreich, auch wenn ein unbekannter Schlüssel mitgegeben wurde. Die Berechtigung kann nur daran erkannt werden, dass nachfolgende Befehle ausgeführt oder verweigert werden.
| | tunnel login <secret key> | |
| <secret key>: | | der geheime Schlüssel, mit dem sich listen, send und receive bei der Gegenstelle identifizieren sollen. | |
| Ort der Wirkung: | | a) gesteuerte Instanz b) das andere Ende des Tunnels | |
| Dauer der Wirkung: | | a) Kommandozeile b) mit listen: die laufende Instanz; mit send und receive: sofort | |
| benötigtes login: | | nie | |
| wird beeinflusst von: | | password und grant am anderen Ende des Tunnels | |
| beeinflusst Befehle: | | alle, die ein entferntes login benötigen: listen, send und receive | |
|
| |
| a) login speichert den geheimen Schlüssel, solange die TCP-Verbindung zur gesteuerten Instanz besteht (d.h. nur innerhalb einer Kommandozeile). | |
| b) Der zuletzt gespeicherte geheimen Schlüssel wird bei send und receive verwendet und bei listen gespeichert, um die Berechtigung bei der Gegenstelle zu erlangen. | |
|
Jetzt zeigt sich, warum login immer erfolgreich sein muss: Die Prüfung des geheimen Schlüssels findet oft erst später an anderer Stelle statt.
Beispiel:
tunnel | | login my_key | | für die Berechtigung, hier Befehle eigeben zu dürfen |
| | login your_key | | für die Berechtigung, dort Verbindungen zu tätigen |
| | listen 21 connect * THERE 21 | | nimmt hier Port 21 entgegen, und merkt sich als Ziel dort und den geheimen Schlüssel your_key. |
|