Sie müssen die Kennworteingabe im Skript überspringen

373
Artem Shelukhin

Verfügen Sie über ein Shellskript auf dem Unix-Server, das von einem anderen Skript von einem Windows-Computer aus gestartet werden muss. Und das Problem ist, dass das Skript auf einem Windows-Computer einen Fingerabdruck (auf dem FTP-Server) abrufen muss, um die Kennworteingabe zu überspringen. Ich weiß nicht, wie das geht. Brauche deine Hilfe, Jungs!

0
Können Sie die sinnvollen Informationen verbergen, können Sie die Zeile zum Starten des Unix-Skripts aus dem Windows-Fenster hinzufügen? Hastur vor 8 Jahren 0
Hab eine gute Schneiderei. Hastur vor 8 Jahren 0

1 Antwort auf die Frage

1
Hastur

Es scheint, dass [ 1 ] putty normalerweise mit dem Dienstprogramm "Plink" geliefert wird.

Dies ist im Wesentlichen der Befehlszeilenbefehl "ssh", der als Windows-EXE-Datei implementiert ist.
Es ist ziemlich gut im Putty-Handbuch unter " Kommandozeilen-Tool Plink " dokumentiert . Sie müssen nur einen Befehl wie folgt einpacken:

plink root @ myserver /etc/backups/do-backup.sh

Aus dem Kommentar derselben Antwort geht das hervor

Außerdem können Sie mit pageant den Schlüssel laden und verwenden, so dass Sie nicht jedes Mal die Passphrase des Schlüssels eingeben müssen.

In einer anderen Antwort wird berichtet [ 2 ], eine Befehlszeile als zu verwenden

putty.exe -ssh -2 -l username -pw password -m c:remote.cmd remote_host 

Natürlich können Sie die Spezifikation hinzufügen, die Sie für die benötigten SSH-Schlüssel benötigen.

Weitere Informationen zum Manual of Putty finden Sie in diesem Kapitel, z. B. in Abschnitt 4.17 [ 3 ], ein Beispiel [ 4 ], das ssh-Manual [ 5 ] ... und last but not least "Wie man ssh zwingt, eine bestimmten privaten Schlüssel " [ 6 ] berichtete sie unten:

ssh -o "IdentitiesOnly=yes" -i <private key filename> <hostname>