Ich habe Windows 10 Anniversary Edition mit "Bash on Ubuntu on Windows" installiert und arbeite. Ich möchte SSH in diese Ubuntu-Instanz einbinden können, aber obwohl ich openssh-server installiert und konfiguriert habe (und Port 2200 abhöre), wird mir beim Versuch, ssh auf "localhost: 2200" zu setzen, unerwartet "Server" angezeigt geschlossene Netzwerkverbindung ".
Hat jemand dies erfolgreich geschafft?
Ich habe es zum Arbeiten gebracht; hier ist wie.
Deinstalliere ssh-server, installiere es neu und stelle sicher, dass es gestartet wird
Sudo service ssh --full-restart
Stellen Sie sicher, dass Sie den Root-Zugriff deaktiviert und der Konfigurationsdatei einen anderen Benutzer hinzugefügt haben.
Ich konnte auf 127.0.0.1:22 wie erwartet eine Verbindung zum Subsystem herstellen. Ich hoffe, dies wird dir helfen.
Sudo apt-get purge openssh-server
Sudo apt-get install openssh-server
Sudo nano /etc/ssh/sshd_config
und Root-Anmeldung nicht zulassen, indem Sie PermitRootLogin no
festlegenFügen Sie dann eine Zeile darunter hinzu, die besagt:
AllowUsers yourusername
und stellen Sie sicher, dass PasswordAuthentication
auf yes
eingestellt ist, wenn Sie sich mit einem Passwort anmelden möchten.
Deaktivieren Sie die Trennung von Berechtigungen, indem Sie Folgendes hinzufügen/ändern: UsePrivilegeSeparation no
Sudo service ssh --full-restart
Stellen Sie unter Windows mit einem ssh-Client wie PuTTY eine Verbindung zu Ihrem Linux-Subsystem her.
Da die Windows-Implementierung kein Chroot bietet, müssen Sie die Datei/etc/ssh/sshd_config ändern
UsePrivilegeSeparation no
Außerdem müssen Sie einen Benutzer mit dem Befehl useradd oder so erstellen.
Die By-Committee-Antworten oben waren großartig. Danke für sie. Und während sie super nahe kamen, hatte ich immer noch Verbindungsabbau von 127.0.0.1 Probleme.
Ich fand und fügte zusätzliche Schritte von diesem Beitrag hinzu, die mich über den Buckel brachten. Insbesondere das erneute Beginnen und Hinzufügen als erster/erster Schritt (beachten Sie das --purge Qualifikationsmerkmal) löste schließlich meine Variation dieses Problems:
Sudo apt-get remove --purge openssh-server
Sudo apt-get install openssh-server
Sudo vi /etc/ssh/sshd_config # Change Port from 22 to 2222 (Just in case MS-Windows is using port 22; which, by the way, SSH on MS-Windows can be disabled if you want to use port 22).
Sudo service ssh --full-restart
Nochmals vielen Dank, ich hoffe, dieser Zusatz hilft anderen. = :)
Ich habe alles getan, wie es Meister Azazel vorgeschlagen hatte und hatte das Problem. Als ich mich mit Port 22
verbunden habe, wurde ich nach einem Passwort gefragt, aber das Passwort, das ich im Linux-Subsystem festgelegt habe, funktionierte nicht.
Lösung 1:
Ändern Sie den SSH-Port in /etc/ssh/sshd_config
und starten Sie den SSH-Server im Subsystem neu
Lösung 2:
Deaktivieren/Stoppen Sie die "SSH Server Broker Services" in der Systemsteuerung der Dienste von Windows und starten Sie den SSH-Server im Subsystem neu.
Der Grund, warum Sie nicht dazu ssh können, wird in der Protokollierung vom Server gezeigt:
chroot ("/ var/run/sshd"): Funktion nicht implementiert
Auf dem Linux-Subsystem scheint chroot nicht implementiert zu sein, und der ssh-Server benötigt es, sodass die Verbindung nicht zulässig ist.