SSH-Script Routerabfrage
Hallo zusammen,
ich muss in regelmäßigen Abständen per SSH eine Abfrage im Netzwerkrouter durchführen. Auf den Router kann nur per Benutzername/Passwort zugegriffen werden. Die Überlegung ist nun, per cron in regelmäßigen Abständen die Abfrage durchzuführen und das Ergebnis abzuspeichern, wobei für die Passwortübergabe das Tool sshpass genutzt werden soll. Dies würde dann wie folgt aussehen:
Dieser Befehl schlägt jedoch fehl mit dem Hinweis "Permission denied (password)". Wo liegt mein Denkfehler? Ändere ich den Befehl ab in
so funktioniert alles wie erwartet; nur eben leider nicht im Batchmodus.
Viele Grüße
Michael
ich muss in regelmäßigen Abständen per SSH eine Abfrage im Netzwerkrouter durchführen. Auf den Router kann nur per Benutzername/Passwort zugegriffen werden. Die Überlegung ist nun, per cron in regelmäßigen Abständen die Abfrage durchzuführen und das Ergebnis abzuspeichern, wobei für die Passwortübergabe das Tool sshpass genutzt werden soll. Dies würde dann wie folgt aussehen:
sshpass -p<Passwort> ssh -oBatchMode=yes admin@10.20.... ip arp status
Dieser Befehl schlägt jedoch fehl mit dem Hinweis "Permission denied (password)". Wo liegt mein Denkfehler? Ändere ich den Befehl ab in
sshpass -p<Passwort> ssh admin@10.20....
so funktioniert alles wie erwartet; nur eben leider nicht im Batchmodus.
Viele Grüße
Michael
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 511764
Url: https://administrator.de/contentid/511764
Ausgedruckt am: 22.11.2024 um 12:11 Uhr
4 Kommentare
Neuester Kommentar
Wo liegt mein Denkfehler?
Die Option ist überflüssg, denn SSHPASS übergibt ja das Passwort zur entsprechender Abfrage. Mit der Option deaktivierst du die Abfrage und die Anmeldung schlägt somit mit der o.a. Fehlermeldung, die das ja schon sagt, fehl, weil im SSH Kontext eben überhaupt kein Kennwort abgefragt wird und somit die Authentifizierung logischerweise fehlschlägt weil es geht bei dir ja nur Username/Pass. Die Option ist was für PublicKey Auth und lokal hinterlegtem private Key.Sollte eine Abfrage über ein unknown host (identity) kommen das lässt sich über die SSH-Option StrictHostKeyChecking=no abschalten, oder mit Hinzufügen in die knownhosts erledigen.
https://linux.die.net/man/5/ssh_config