Secure Shell (SSH)

Secure Shell (SSH) ermöglicht Es Ihnen, Ihr Windows IoT Core-Gerät remote zu verwalten und zu konfigurieren.

Verwenden des Windows 10 OpenSSH-Clients

Wichtig

Der Windows OpenSSH-Client erfordert, dass Ihr SSH-Clienthostbetriebssystem Windows 10 Version 1803(17134) ist. Außerdem muss das Windows 10 IoT Core Gerät RS5 Windows Insider Preview Version 17723 oder höher ausführen.

Der OpenSSH-Client wurde 1803 (Build 17134) als optionales Feature zu Windows 10 hinzugefügt. Um den Client zu installieren, können Sie in Windows 10 Einstellungen nach "Optionale Features verwalten" suchen. Wenn der OpenSSH-Client nicht in der Liste der installierten Features aufgeführt ist, wählen Sie " Feature hinzufügen" aus.

Add a feature

Wählen Sie als Nächstes "OpenSSH-Client " in der Liste aus, und klicken Sie auf "Installieren".

OpenSSH Client Install

Um sich mit einem Benutzernamen und Kennwort anzumelden, verwenden Sie den folgenden Befehl:

ssh administrator@host

Dabei handelt es sich entweder um die IP-Adresse des Windows IoT Core-Geräts oder den Gerätenamen.

Beim ersten Herstellen einer Verbindung wird eine Meldung wie folgt angezeigt:

The authenticity of host 'hostname (192.168.0.12)' can't be established.
ECDSA key fingerprint is SHA256:RahZpBFpecRiPmw8NGSa+7VKs8mgqQi/j2i1Qr9lUNU.
Are you sure you want to continue connecting (yes/no)?

Geben Sie ja ein , und drücken Sie die EINGABETASTE.

Wenn Sie sich als DefaultAccount und nicht als Administrator anmelden müssen, müssen Sie einen Schlüssel generieren und den Schlüssel zum Anmelden verwenden. Öffnen Sie auf dem Desktop, von dem Sie eine Verbindung mit Ihrem IoT-Gerät herstellen möchten, öffnen Sie ein PowerShell-Fenster, und ändern Sie sich in Ihren persönlichen Datenordner (z. B. cd ~)

cd ~
ssh-keygen -t rsa -f id_rsa

Registrieren Sie den Schlüssel bei ssh-agent (optional, für einmaliges Anmelden). Beachten Sie, dass ssh-add from a folder that is ACL'd to you as the signed-in user (Builtin\Administrators and the NT_AUTHORITY\System user are also ok). Standardmäßig sollte cd ~ von PowerShell wie unten dargestellt ausreichend sein.

cd ~
net start ssh-agent
ssh-add id_rsa

Tipp

Wenn Sie eine Nachricht erhalten, dass der SSH-Agent-Dienst deaktiviert ist, können Sie es mit sc.exe config ssh-agent start=auto aktivieren.

Um single sign zu aktivieren, fügen Sie den öffentlichen Schlüssel an das Windows IoT Core-Gerät authorized_keys Datei an. Oder wenn Sie nur einen Schlüssel haben, kopieren Sie die Öffentliche Schlüsseldatei in die Remote-authorized_keys-Datei .

net use X: \\host\c$ /user:host\administrator
if not exist x:\data\users\defaultaccount\.ssh md x:\data\users\defaultaccount\.ssh
copy .\id_rsa.pub x:\data\users\defaultaccount\.ssh\authorized_keys

Wenn der Schlüssel nicht bei ssh-agent registriert ist, muss er in der Befehlszeile angegeben werden, um sich anzumelden:

ssh -i .\id_rsa DefaultAccount@host

Wenn der private Schlüssel bei ssh-agent registriert ist, müssen Sie nur DefaultAccount@host angeben:

ssh DefaultAccount@host

Beim ersten Herstellen einer Verbindung wird eine Meldung wie folgt angezeigt:

The authenticity of host 'hostname (192.168.0.12)' can't be established.
ECDSA key fingerprint is SHA256:RahZpBFpecRiPmw8NGSa+7VKs8mgqQi/j2i1Qr9lUNU.
Are you sure you want to continue connecting (yes/no)?

Geben Sie ja ein , und drücken Sie die EINGABETASTE.

Sie sollten jetzt als DefaultAccount verbunden sein.

Um einmaliges Anmelden mit dem Administratorkonto zu verwenden, fügen Sie ihren öffentlichen Schlüssel an c:\data\ProgramData\ssh\administrators_authorized_keys auf dem Windows IoT Core-Gerät an.

net use X: \\host\c$ /user:host\administrator
copy .\id_rsa.pub x:\data\ProgramData\ssh\administrators_authorized_keys
icacls x:\data\ProgramData\ssh\administrators_authorized_keys /remove "NT AUTHORITY\Authenticated Users"
icaclsx:\data\ProgramData\ssh\administrators_authorized_keys /inheritance:r

Außerdem müssen Sie die ACL für administrators_authorized_keys so festlegen, dass sie der ACL von ssh_host_dsa_key im selben Verzeichnis entspricht.

icacls x:\data\ProgramData\ssh\administrators_authorized_keys /remove "NT AUTHORITY\Authenticated Users"
icacls x:\data\ProgramData\ssh\administrators_authorized_keys /inheritance:r

So legen Sie die ACL mithilfe von PowerShell fest

get-acl x:\data\ProgramData\ssh\ssh_host_dsa_key | set-acl x:\data\ProgramData\ssh\administrators_authorized_keys

Hinweis

Wenn nach dem Vornehmen von Änderungen am Windows 10 IoT Core Gerät eine REMOTEHOST-IDENTIFIKATIONSmeldung angezeigt wird, bearbeiten Sie C:\Users<username.ssh>\known_hosts, und entfernen Sie den geänderten Host.

Siehe auch: Win32-OpenSSH

Verwenden von PuTTY

Herunterladen eines SSH-Clients

Um eine Verbindung mit Ihrem Gerät mithilfe von SSH herzustellen, müssen Sie zuerst einen SSH-Client herunterladen, z. B. PuTTY.

Herstellen der Verbindung mit dem Gerät

  • Um eine Verbindung mit Ihrem Gerät herzustellen, müssen Sie zuerst die IP-Adresse des Geräts abrufen. Nach dem Starten Ihres Windows IoT Core-Geräts wird eine IP-Adresse auf dem Bildschirm angezeigt, der an das Gerät angefügt ist:

    DefaultApp on Windows IoT Core

  • Starten Sie Nun PuTTY, und geben Sie die IP-Adresse in das Host Name Textfeld ein, und stellen Sie sicher, dass die SSH Optionsfläche ausgewählt ist. Klicken Sie dann auf Open.

    PuTTY Configuration

  • Wenn Sie zum ersten Mal von Ihrem Computer aus eine Verbindung mit Ihrem Gerät herstellen, wird möglicherweise die folgende Sicherheitswarnung angezeigt. Klicken Sie einfach, Yes um fortzufahren.

    PuTTY Security Alert

  • Wenn die Verbindung erfolgreich war, sollten Sie auf dem Bildschirm angezeigt login as: werden, indem Sie aufgefordert werden, sich anzumelden.
    Geben Sie die EINGABETASTE Administrator ein, und drücken Sie die EINGABETASTE. Geben Sie dann das Standardkennwort als Kennwort p@ssw0rd ein, und drücken Sie die EINGABETASTE.

    PuTTY Login

    Wenn Sie sich erfolgreich anmelden konnten, sollten Sie folgendes sehen:

    PuTTY Console

Kontokennwort aktualisieren

Es wird dringend empfohlen , das Standardkennwort für das Administratorkonto zu aktualisieren.

Geben Sie hierzu den folgenden Befehl in die PuTTY-Konsole ein, indem [new password] Sie ein sicheres Kennwort ersetzen:

    net user Administrator [new password]

Konfigurieren Ihres Windows IoT Core-Geräts

  • Um Anwendungen aus Visual Studio 2017 bereitstellen zu können, müssen Sie sicherstellen, dass die Visual Studio Remote Debugger auf Ihrem Windows IoT Core-Gerät ausgeführt wird. Der Remotedebugger sollte beim Computerstart automatisch gestartet werden. Um die Überprüfung zu überprüfen, verwenden Sie den tlist-Befehl, um alle ausgeführten Prozesse von PowerShell auflisten zu können. Es sollte zwei Instanzen von msvsmon.exe auf dem Gerät ausgeführt werden.

  • Es ist möglich, dass die Visual Studio Remote Debugger nach langen Inaktivitätsperioden zeitüberschreitungen. Wenn Visual Studio keine Verbindung mit Ihrem Windows IoT Core-Gerät herstellen können, versuchen Sie, das Gerät neu zu starten.

  • Wenn Sie möchten, können Sie Ihr Gerät auch umbenennen. Verwenden Sie das setcomputername Hilfsprogramm, um den Computernamen zu ändern:

        setcomputername <new-name>

Sie müssen das Gerät neu starten, damit die Änderung wirksam wird. Sie können den shutdown Befehl wie folgt verwenden:

        shutdown /r /t 0

Häufig verwendete Dienstprogramme

Eine Liste der Befehle und Dienstprogramme, die Sie mit SSH verwenden können, finden Sie auf der Befehlszeilenseite "Utils ".