Der SSH-Dienst wird bei einer Neuinstallation von Cygwin 1.7.15 nicht gestartet

Der SSH-Dienst wird bei einer Neuinstallation von Cygwin 1.7.15 nicht gestartet

Betriebssystem: Windows 7 x64
Cygwin: 1.7.15-1
OpenSSH: 6.0p1-1


Ich versuche, einen SSH-Server unter Windows 7 zu installieren. Das Tutorial, das ich dazu befolge, finden Sie hier:http://www.howtogeek.com/howto/41560/how-to-get-ssh-command-line-access-to-windows-7-using-cygwin/

Das Problem ist, dass ich beim Ausführen des net start sshdBefehls die folgende Ausgabe erhalte:

Der CYGWIN-SSHD-Dienst wird gestartet.
Der CYGWIN-SSHD-Dienst konnte nicht gestartet werden.

Der Dienst hat keinen Fehler gemeldet.

Weitere Hilfe erhalten Sie, indem Sie NET HELPMSG 3534 eingeben.

Hier ist die vollständige Ausgabe des Setups:

AdminUser@DieserComputer ~
$ ssh-host-konfiguration

*** Info: /etc/ssh_host_key wird generiert
*** Info: /etc/ssh_host_rsa_key wird generiert
*** Info: /etc/ssh_host_dsa_key wird generiert
*** Info: /etc/ssh_host_ecdsa_key wird generiert
*** Info: Standarddatei /etc/ssh_config erstellen
*** Info: Standarddatei /etc/sshd_config erstellen
*** Info: Die Rechtetrennung ist seit OpenSSH 3.3 standardmäßig auf „Ja“ eingestellt.
*** Info: Hierzu ist jedoch ein nicht privilegiertes Konto namens „sshd“ erforderlich.
*** Info: Weitere Informationen zur Berechtigungstrennung finden Sie unter /usr/share/doc/openssh/README.privsep.
*** Abfrage: Soll eine Privilegientrennung verwendet werden? (ja/nein) ja
*** Info: Beachten Sie, dass zum Anlegen eines neuen Benutzers das aktuelle Konto
*** Info: Administratorrechte. Sollte dieses Skript versuchen, eine
*** Abfrage: neues lokales Konto 'sshd'? (ja/nein) ja
*** Info: Datei /etc/sshd_config wird aktualisiert

*** Abfrage: Möchten Sie sshd als Dienst installieren?
*** Abfrage: (Sagen Sie „nein“, wenn es bereits als Dienst installiert ist) (ja/nein) ja
*** Abfrage: Geben Sie den Wert von CYGWIN für den Daemon ein: []
*** Info: Unter Windows Server 2003, Windows Vista und höher ist die
*** Info: Das SYSTEM-Konto kann nicht für andere Benutzer eine UID festlegen – eine Fähigkeit
*** Info: sshd erfordert. Sie müssen einen privilegierten
*** Info: Konto. Dieses Skript hilft Ihnen dabei.

*** Info: Sie scheinen Windows XP 64bit, Windows 2003 Server auszuführen,
*** Info: oder später. Auf diesen Systemen ist es nicht möglich, das LocalSystem
*** Info: Konto für Dienste, die die Benutzer-ID ändern können, ohne
*** Info: explizites Passwort (wie passwortlose Logins [zB öffentlicher Schlüssel
*** Info: Authentifizierung] über sshd).

*** Info: Wenn Sie diese Funktion aktivieren möchten, müssen Sie
*** Info: ein neues Konto mit Sonderrechten (es sei denn, ein ähnliches Konto
*** Info: existiert bereits). Dieses Konto wird dann verwendet, um diese speziellen
*** Info: Server.

*** Info: Beachten Sie, dass das Anlegen eines neuen Benutzers voraussetzt, dass das aktuelle Konto
*** Info: verfügt selbst über Administratorrechte.

*** Info: Es konnte kein privilegiertes Konto gefunden werden.

*** Info: Dieses Skript plant die Verwendung von „cyg_server“.
*** Info: „cyg_server“ wird nur von registrierten Diensten verwendet.
*** Abfrage: Möchten Sie einen anderen Namen verwenden? (ja/nein) nein
*** Abfrage: Neues privilegiertes Benutzerkonto „cyg_server“ erstellen? (ja/nein) ja
*** Info: Bitte geben Sie ein Passwort für den neuen Benutzer cyg_server ein. Bitte achten Sie darauf
*** Info: dass dieses Passwort den auf Ihrem System vorgegebenen Passwortregeln entspricht.
*** Info: Wenn Sie kein Passwort eingeben, wird die Konfiguration beendet.
*** Abfrage: Bitte geben Sie das Passwort ein:
*** Abfrage: Erneut eingeben:

*** Info: Der Benutzer „cyg_server“ wurde mit dem Passwort „[ZENSIERT]“ erstellt.
*** Info: Wenn Sie das Passwort ändern, denken Sie bitte daran, auch das
*** Info: Passwort für die installierten Dienste, die Sie verwenden (oder bald verwenden werden)
*** Info: das „cyg_server“-Konto.

*** Info: Beachten Sie auch, dass der Benutzer 'cyg_server' Leseberechtigungen benötigt
*** Info: zu allen relevanten Dateien des Benutzers für die Dienste, die als „cyg_server“ ausgeführt werden.
*** Info: Insbesondere für den SSHD-Server alle .ssh/authorized_keys der Benutzer
*** Info: Dateien müssen über die entsprechenden Berechtigungen verfügen, um den öffentlichen Schlüssel zuzulassen
*** Info: Authentifizierung. Das (erneute) Ausführen von ssh-user-config für jeden Benutzer setzt
*** Info: diese Berechtigungen korrekt. [Ähnliche Einschränkungen gelten für
*** Info: Instanz, für .rhosts-Dateien, wenn der rshd-Server läuft usw.].


*** Info: Der SSHD-Dienst wurde unter „cyg_server“ installiert.
*** Info: Konto. Um den Dienst jetzt zu starten, rufen Sie `net start sshd' auf oder
*** Info: `cygrunsrv -S sshd'. Andernfalls wird es automatisch gestartet
*** Info: nach dem nächsten Neustart.

*** Info: Host-Konfiguration abgeschlossen. Viel Spaß!

AdminUser@DieserComputer ~
$ net start sshd
Der CYGWIN-SSHD-Dienst wird gestartet.
Der CYGWIN-SSHD-Dienst konnte nicht gestartet werden.

Der Dienst hat keinen Fehler gemeldet.

Weitere Hilfe erhalten Sie, indem Sie NET HELPMSG 3534 eingeben.

Beachten Sie, dass ich in dieser Zeile *** Query: Enter the value of CYGWIN for the daemon: []nichts eingegeben habe. In Tutorials wird oft empfohlen, hier ntsecoder zu verwenden ntsec tty, aber diese Optionen wurden aus der neuesten Version von OpenSSH entfernt. Ich habe trotzdem versucht, sie zu verwenden, und das Ergebnis ist dasselbe.

Die Datei /var/log/sshd.logist leer. Wenn ich versuche, einfach den Befehl auszuführen, /usr/sbin/sshderhalte ich die Ausgabe /var/empty must be owned by root and not group or world-writable.. Das Verzeichnis /var/empty hat die folgenden Berechtigungen: drwxr-xr-x+ 1 cyg_server root 0 May 29 15:28 empty. Google-Suchen nach diesem Fehler haben keine funktionierenden Lösungen ergeben. Eine Person scheint das Problem mithilfe des Befehls gelöst zu haben, chown SYSTEM /var/emptyaber in meinem Fall hat das das Problem nicht behoben.

Antwort1

Versuchen Sie, die Privilegientrennung zu deaktivieren in/etc/sshd_config

Antwort2

Unter Cygwin /var/emptymussdurch den Benutzer ausgeführtsshd. (Es sei denn, Sie deaktivieren die Berechtigungstrennung!)

Auseine hilfreiche E-Mail an die Cygwin-Mailingliste im Jahr 2012 von Corinna Vinschen

Normalerweise prüft sshd, ob /var/empty der UID 0 gehört. Unter Cygwin, wo es normalerweise keinen Benutzer mit UID 0 gibt,Der Code wurde geändert, um zu testen, ob /var/empty dem Benutzer gehört, der sshd ausführt.. Wenn Sie also sshd auf der Befehlszeile starten, müssen Sie /var/empty auf das aktuelle Benutzerkonto chownen. Dasselbe gilt für die ssh-bezogenen Dateien unter /etc. Die Fehlermeldung ist die Standard-Upstream-Fehlermeldung. Sie wurde für Cygwin nicht geändert, um das Cygwin-bezogene Upstream-Patchset klein zu halten.

Antwort3

In meinem Fall gab es einen Konflikt mit einem anderen Dienst. Ich habe die Bitvise-Testversion installiert, um das Hosten eines SSH-Servers auszuprobieren.

Wenn ich Cygwin OpenSSH installiert habe, muss ich den Bitvise-Dienst herunterfahren, um Cygwin sshd starten zu können.

verwandte Informationen