Verwenden von SSH-Schlüsseln im Bash-Skript

Verwenden von SSH-Schlüsseln im Bash-Skript

Ich versuche, mittels OpenSSH und privaten/öffentlichen Schlüsseln eine Verbindung vom Windows 2003-Server zum Unix-Server herzustellen, werde aber ständig nach dem Passphare für den privaten Schlüssel und dem Windows-Passwort gefragt.

Ich habe den öffentlichen Schlüssel bereits zu den autorisierten Schlüsseln unter Linux hinzugefügt (wenn ich mich mit Putty verbinde und der private Schlüssel einwandfrei funktioniert). Aber ich muss mich mit einem Bash-Skript verbinden, ohne Passwort und Passphrase anzufordern.

Dies ist der Befehl:

ssh -v -i privatefile -p 2022 user@server

Dies ist das Protokoll:

OpenSSH_3.7.1p1, SSH protocols 1.5/2.0, OpenSSL 0.9.7b 10 Apr 2003
debug1: Connecting to SERVER port 2022.
debug1: Connection established.
debug1: identity file privatefile type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_7.4
debug1: match: OpenSSH_7.4 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_3.7.1p1
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-cbc hmac-sha1 none
debug1: kex: client->server aes128-cbc hmac-sha1 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Host 'SERVER' is known and matches the RSA host key.
debug1: Found key in /cygdrive/c/Users/PAMA1/.ssh/known_hosts:1
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
D:\Entrada\z_Bkp>NEWKEYS received
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received

Anyone gaining unauthorized access will be subject to PROSECUTION.

debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mi
c,password,keyboard-interactive
debug1: Next authentication method: publickey
debug1: Trying private key: bilaetlopenssh
Enter passphrase for key 'bilaetlopenssh':
debug1: Next authentication method: keyboard-interactive
Enter your Windows password :

Antwort1

Wenn Sie verwenden putty, können Sie verwendenputtygenum den Schlüssel dynamisch zu speichern, den privaten Schlüssel, indem Sie den Kennwortschlüssel einmal eingeben (d. h. bis zum Neustart).

Es wird empfohlen, eine Sitzung mit Remote-Hosts, Remote-Benutzer und verwendetem Schlüssel zu speichern und den Befehl damit auszuführen.Sitzung.

\path\name\to\putty.exe -load "mysession"

So kopieren Sie mit Putty pscp:

\path\name\to\pscp.exe -load "mysession" local-file.txt remote:/path/file.txt
\path\name\to\pscp.exe -load "mysession" remote:/path/file.txt local-file.txt

In der Unix-Welt puttygenheißt es ssh-add, ich habe kein WSL, um es zu testen.

verwandte Informationen