Previous Topic

Next Topic

Book Contents

Book Index

SSH - Specific Clients - OpenSSH Windows

Vorbereitung

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.

Anweisungen

  1. Wählen Sie ein Verzeichnis aus oder ERSTELLEN Sie ein Verzeichnis, in dem die OpenSSH known_hosts- und Schlüsseldateien gespeichert werden (\Programme\OpenSSH\bin\ssh eignet sich dazu optimal). In dieser Anleitung wird dieses Verzeichnis nachfolgend als SSHDIR bezeichnet. Wenn auf dieses Verzeichnis in einem Befehl verwiesen wird, stellen Sie sicher, dass Sie diesen Wert gegen Ihren Wert austauschen.
  2. Öffnen Sie eine Eingabeaufforderung, navigieren Sie zum Verzeichnis \Programme\OpenSSH\bin und führen Sie den folgenden Befehl aus:

    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>

  3. Führen Sie den folgenden Befehl aus:

    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>

  4. Führen Sie den folgenden Befehl aus:

    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>

  5. Der Fingerabdruck des neuen Schlüssels sollte nun auf dem MOVEit Transfer-Host protokolliert sein. Melden Sie sich über die Webschnittstelle als Administrator an, klicken Sie auf das Benutzerprofil, rufen Sie die SSH-Richtlinie des Benutzers auf und AKZEPTIEREN Sie den SSH-Schlüssel im Client-Schlüsselhaltetank. (Der Fingerabdruck des Schlüssels ist in der Abbildung unten ROT umrandet.)

    Embedded OLE File Template, D75, H100

    Ö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:

    Embedded OLE File Template, D75, H100

    Embedded OLE File Template, D75, H100

  6. Sie sollten nun in der Lage sein, automatisch eine Verbindung zum MOVEit Transfer-Host über SFTP anhand des folgenden Befehls herzustellen:

    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>

  7. Zur Verwendung von SFTP in einer automatisierten Umgebung verwenden Sie die Befehlszeilenoption „-b“, um SFTP eine Liste mit einzugebenden Befehlen bereitzustellen.

    Beispiel:

    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