Bei ssh Verbindungen werden die Kennworte lesbar dargestellt

Problem:
Wenn man beim Kunden sitzt und sich per ssh auf einen Server verbindet, möchte man in der Regel nicht, dass die eingegebenen Kennworte lesbar dargestellt werden.

Bei folgenden Beispielen ist dies aber der Fall:

Beipiel1:
ssh benutzer@server ‚mysql -u benutzer -p‘

Beispiel2:
ssh benutzer@server „sudo ls“

In der jetzt kommenden Kennwortabfrage  wird in beiden Fällen das Kennwort gut lesbar angezeigt.

Lösung:
Um die Passworteingabe wieder zu verstecken, muss man lediglich die Option ‚-t‘ mitgeben.  Also:
ssh -t benutzer@server ‚mysql -u benutzer -p‘
bzw.
ssh -t benutzer@server „sudo ls“

Dadurch wird die Kennworteingabe wieder „unsichtbar“ gemacht.

In dem Manpages zu ssh findet man folgende Beschreibung:
-t      Force pseudo-terminal allocation.  This can be used to execute arbitrary screen-based programs on a remote machine, which can be very useful, e.g. when
             implementing menu services.  Multiple -t options force tty allocation, even if ssh has no local tty.

Normalerweise wird bei einer ssh-Verbindung kein Pseudoterminal geöffnet, welche die Ein- und Ausgabe mit einem Prozess verbindet.
Daher werden die Kennworteingaben auch nicht maskiert.

Wenn man das dauerhaft haben möchte, ohne jedes Mal das ‚-t‘ eingeben zu müssen, kann man die ‚~/.ssh/config‘ entsprechend bearbeiten. Mehr dazu ist in den Manpages zu lesen:
man 5 ssh_config im Bereich RequestTTY

Last updated by at .

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

*

Diese Seite verwendet Akismet, um Spam zu reduzieren. Erfahre, wie deine Kommentardaten verarbeitet werden..