PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : SSH Key prüfen auf Gültigkeit



boesi666
23.05.14, 11:59
kann man irgendwie prüfen, ob ein ssh key gültig ist?

ich teste in einem skript ob mit einem bereits hinterlegten ssh key eine verbindung erfolgreich aufgebaut werden kann, bevor der rest dann im skript abgearbeitet wird.


echo -n "SSH Verbinungstest... "
if ssh -i $SSH_KEY root@$MASTER 'exit;'; then echo "Verbinungstest erfolgreich"; else echo "ACHTUNG: Verbinungstest fehlgeschlagen! Exit."; ende; fi;

Problem ist: wenn lokaler key vorhanden, aber verkehrt ist, dann würde der test nicht false zurück geben, denn es erscheint dann die Passwort Eingabe Aufforderung und bleibt dann ganz lange stehen.

kann man das irgendwie besser lösen?

DrunkenFreak
23.05.14, 12:44
Meines Wissens nach kannst du ssh sagen, dass es nur mit Key versuchen soll. Guck dazu mal in die Manpage. Irgendwas mit PreferredAuthentication.

boesi666
23.05.14, 14:10
jepp recht hast Du :-)

hab das vorher nicht richtig aus dem manual erkannt.
hab noch mal explizit nach dem Schlüsselwort gesucht und jetzt die Lösung gefunden:

so ist jetzt mein ergebnis um eine ssh verbindung zu testen bevor sie genutzt wird:


if ssh -i $path_to_KEYFILE -o "PreferredAuthentications publickey" -o StrictHostKeyChecking=no root@$MASTER_HOST 'exit;'; then echo "Verbinungstest erfolgreich"; else echo "ACHTUNG: Verbinungstest fehlgeschlagen! Exit."; exit; fi;