Diese Anleitung geht davon aus, dass Sie bereits eine Kopie von OpenSSH for Windows installiert haben.
Wenn Sie OpenSSH for Windows noch nicht installiert haben, stellen Sie sicher, dass Sie das Kontrollkästchen Server im Abschnitt Choose Components (Komponenten auswählen) während der Installation dieses Clients DEAKTIVIEREN.
sftp -oUserKnownHostsFile=SSHDIR\known_hosts user@host
Dies gibt eine Warnung zurück, dass der Host nicht bekannt ist. Geben Sie als Antwort auf die Frage yes (ja) ein. Dadurch wird der Schlüssel des Hosts der known_hosts-Datei hinzugefügt. Drücken Sie dann einfach die Tastenkombination STRG+C, um die Anwendung zu beenden.
Beispiel:
C:\Program Files\OpenSSH\bin>sftp -oUserKnownHostsFile=C:\Progra~1\OpenSSH\bin\ssh\known_hosts
sshkeyboy@dotnet.corp.stdnet.com
Connecting to dotnet.corp.stdnet.com...
The authenticity of host 'dotnet.corp.stdnet.com (192.168.3.15)' can't be established.
RSA key fingerprint is ce:08:6f:28:87:b6:50:f4:84:e5:37:c2:68:89:33:2a.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'dotnet.corp.stdnet.com,192.168.3.15' (DSA)
to the list of known hosts.
sshkeyboy@dotnet.corp.stdnet.com's password:
(CONTROL+C)
C:\Program Files\OpenSSH\bin>
ssh-keygen -t rsa
Wenn Sie aufgefordert werden, eine Datei einzugeben, in der der Schlüssel gespeichert werden soll, verwenden Sie den folgenden Wert:
SSHDIR\id_rsa
Wenn Sie zur Eingabe eines Kennworts aufgefordert werden, drücken Sie die Eingabetaste (und erneut, wenn Sie zur Bestätigung aufgefordert werden). Dadurch wird ein RSA-Schlüssel erzeugt, der zur Authentifizierung am Server verwendet wird. Das Programm „ssh-keygen“ sollte den Schlüsseldateien automatisch die richtigen Berechtigungen zuweisen.
Beispiel:
C:\Program Files\OpenSSH\bin>ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (P7 $"/.ssh/id_rsa): c:\progra~1\OpenSSH\bin\ssh\id_rsa
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in c:\progra~1\OpenSSH\bin\ssh\id_rsa.
Your public key has been saved in c:\progra~1\OpenSSH\bin\ssh\id_rsa.pub.
The key fingerprint is:
44:a8:8c:88:3f:3f:91:8a:16:07:e4:c6:4a:6e:b8:df xxxx@jglshuttle
C:\Program Files\OpenSSH\bin>
sftp -oUserKnownHostsFile=SSHDIR\known_hosts -oIdentityFile=SSHDIR\id_rsa user@host
Sie werden zur Eingabe des Benutzerkennworts aufgefordert. Beenden Sie das Programm an diesem Punkt mit STRG+C.
Beispiel:
C:\Program Files\OpenSSH\bin>sftp -oUserKnownHostsFile=c:\progra~1\OpenSSH\bin\ssh\known_hosts -oIdentityFile=c:\progra~1\OpenSSH\bin\ssh\id_rsa sshkeyboy@dotnet.corp.stdnet.com
Connecting to dotnet.corp.stdnet.com...
sshkeyboy@dotnet.corp.stdnet.com's password:
(CONTROL+C)
C:\Program Files\OpenSSH\bin>
Öffnen Sie das Benutzerprofil und fügen Sie diesen Fingerabdruck unter User Authentication > SSH Policy > Current SSH Keys (Benutzerauthentifizierung > SSH-Richtlinie > Aktuelle SSH-Schlüssel) hinzu. Ein ordnungsgemäß konfigurierter Benutzer weist ein Profil auf, das dem folgenden ähnlich sein sollte:
sftp -oUserKnownHostsFile=SSHDIR\known_hosts -oIdentityFile=SSHDIR\id_rsa user@host
Beispiel:
C:\Program Files\OpenSSH\bin>sftp -oUserKnownHostsFile=c:\progra~1\OpenSSH\bin\ssh\known_hosts -oIdentityFile=c:\progra~1\OpenSSH\bin\ssh\id_rsa sshkeyboy@dotnet.corp.stdnet.com
Connecting to dotnet.corp.stdnet.com...
sftp> pwd
Remote working directory: /Home/SSH Key Boy
sftp> cd ..
sftp> cd ..
sftp> dir
Distribution
Home
WebPost
sftp>
C:\>type sftp_commands.txt
cd /Home/Steve
put certreq.txt
dir
quit
C:\>c:\progra~1\openssh\bin\sftp
-oUserKnownHostsFile=c:\progra~1\openssh\bin\ssh\known_hosts -oIdentityFile=c:\progra~1\openssh\bin\ssh\id_rsa -b sftp_commands.txt steve@dotnet.corp.stdnet.com
Connecting to dotnet.corp.stdnet.com...
sftp> cd /Home/Steve
sftp> put certreq.txt
Uploading certreq.txt to /Home/Steve/certreq.txt
sftp> dir
DecSet_6858908.exe
MIFreelyInst_9971297.exe
brain_1731860.wav
certreq_1140952.txt
decryptedFile_5848271.dat
dmz_backups_2157003.html
webpost_bundle_4594384.xml
sftp> quit