2013-07-19 25 views
24

Ho inserito ssh-host-config nel prompt cygwin (avviato con privilegi di amministratore), ha detto sì alla separazione dei privilegi, nuovo account locale sshd, installa sshd come servizio; Non ho inserito alcun valore per CYGWIN per demone; Ho inserito no per usare un nome diverso; sì per creare un nuovo account utente privilegiato.Impossibile avviare il servizio cygwin sshd

Nel mio services.msc non sono in grado di avviare il servizio:

The CYGWIN sshd service on Local Computer started and then stopped. 
Some services stop automatically if they are not in use by other services 
or programs. 

Nel cygwin pronta, net start sshd produce:

The CYGWIN sshd service could not be started. 
The service did not report an error. 
More help is available by typing NET HELPMSG 3534 

Nel cygwin pronta, cygrunsrv -S sshd produce:

cygrunsrv: Error starting a service: QueryServiceStatus: Win32 error 1062: 
The service has not been started. 

Il mio /var/log/sshd.log dice il seguente ng:

Unable to initialize device PRN 

Ho cercato le domande sul SO collegate a questo tema, così come Internet in generale, e credo che ciò che rende unica la mia domanda ha a che fare con la sshd.log. Non riesco a trovare nessun altro che abbia ricevuto questo.

Lo sto facendo per installare Hadoop sul mio Windows. Non riesco a eseguire una macchina virtuale su questo computer lento dato che tutto si impantana.

+0

Ho esattamente lo stesso problema in Windows 7. Ho seguito vari link, ma il problema esiste ancora. Alcuni dei link che ho seguito sono: http://ebiquity.umbc.edu/Tutorials/Hadoop/00%20-%20Intro.html, https://gist.github.com/tariqmislam/2159173. Chiunque legga questo gentilmente fornisce una soluzione. –

risposta

15

Ho avuto lo stesso problema ed ecco la soluzione che ha funzionato per me.

Soluzione 1

Riavviare la macchina dopo aver impostato le variabili d'ambiente percorso per puntare a Cygwin directory bin e quindi avviare il servizio.

Soluzione 2

  1. Prima aggiungere l'account che esegue il Cygwin sshd servizio di demone per gruppo di amministratori (questo è per impostazione predefinita)

  2. Vai alla cartella di installazione di Cygwin (la mia è a c: \ cygwin64 e il tuo potrebbero differire)

    • aggiungere il gruppo di amministratori come controllo completo.rimuovere la proprietà
    • Rimuovere sola lettura per la cartella di installazione di Cygwin in modo chiunque può scrivere in esso
  3. Eseguire il terminale di cygwin come amministratore e rimuovere il servizio digitando

    cygrunsrv -R sshd 
    
  4. Riavviare il sistema

  5. Eseguire il terminale cygwin come amministratore e reinstallare di nuovo il servizio digitando

    ssh-host-config -y 
    
  6. Eseguire il terminale di cygwin come amministratore e avviare il servizio digitando

    net start sshd 
    

Il vostro servizio ora essere in esecuzione!

17

Ho seguito i passaggi in questo argomento e il problema si stava ancora verificando, quindi ho controllato il file di log sshd e mi lamentavo che i privilegi della chiave privata ssh dovessero aprirsi.

ho eseguito il seguente comando:

chmod 400 /etc/ssh_host_ecdsa_key 

Poi ho eseguito il servizio:

net start sshd 

E alla fine ha funzionato (BTW: sto usando di Windows 8)

+2

questo ha funzionato per me, grazie. : D –

+1

Grazie per la risposta. Funziona anche su Windows 8.1. Sopravverò la risposta. – 030

+2

'chmod -v 600/etc/ssh _ * _ tasto; ls -altr/etc/ssh * key' nel mio caso, ce n'erano quattro. Qualcosa sulla versione polacca di Win 8.1 porta a rw permanenti globalmente per gruppo, in Cygwin. 'CYGWIN = ntsec' – Marcos

2

seguito la i passaggi forniti da Andrea Soluzione 1 e soluzione 2, non ha funzionato. Il visualizzatore eventi non ha fornito alcuna informazione.

quindi preso uno sguardo al log var/log/sshd.log primo è lamentato del fatto che non era in grado di caricare la DLL:

/usr/sbin/sshd.exe: error while loading shared libraries: cygcrypto-1.0.0.dll 

Soluzione:

  • reinstallato il pacchetto e assicurato che la DLL era in lib.
  • Avviato nuovamente il servizio, ma non è riuscito, ma questa volta si è lamentato della mancanza della chiave host.

    Impossibile caricare la chiave host:/etc/ssh_host_dsa_key Impossibile caricare la chiave host:/etc/ssh_host_ecdsa_key Disattivazione protocollo versione 2. Impossibile caricare ospitare chiave sshd: nessun hostkeys disponibile - in uscita.

Soluzione:

  • andare al prompt di Cygwin Comando (con Esegui come amministratore) e
  • immettere ssh-keygen -A
    la chiave host mancante sono stati generati.

Finalmente ho potuto avviarlo.

Si consiglia di esaminare ulteriormente il file di registro se la soluzione di cui sopra non funziona.

+2

Sì !!! ** Sicuramente dare un'occhiata ** a 'var/log/sshd.log!' Il mio errore era "Privilege separation user sshd non esiste" quindi ho eseguito ssh-host-config di nuovo per abilitare la separazione Privilege :) – Bloke

5

Ho provato sopra le soluzioni ma nulla ha funzionato per me. Sto usando Windows 8 e sono riuscito a risolverlo. Il mio file sshd.log dice: "sshd utente separazione dei privilegi non esiste FALLITO"

Quindi, per rimuovere questo errore durante l'avvio sshd come servizio solo seguendo i passaggi qui sotto:

  1. Modificare il file/etc/passwd -
    aggiungi "sshd: x: 74: 74: SSH separato da privilegi:/var/vuoto/sshd:/sbin/nologin".

  2. Modificare il file/etc/group - aggiungere "sshd: x: 74:".

Ora avviare il servizio come net start sshd

Ha funzionato per me!

+0

Do sai perché funziona? Come l'hai scoperto? – EML

+0

Modifica (creando acuitamente) il file passwd ha funzionato per me per risolvere questo problema per lo sshd fornito con (2.7.3) versione a 64 bit di Git per Windows. (Dopo 15 anni di utilizzo di Cygwin l'ho abbandonato qualche mese fa a favore delle utility fornite con Git e non mi manca affatto) Non ho dovuto modificare/creare un file di gruppo. L'unica cosa addizionale che dovevo fare era mkdir/var/empty – wytten

0

Nel mio caso (utilizzando una versione polacca di Windows 8) ho dovuto modificare manualmente i file/etc/passwd e/etc/group.

Alcune linee per Amministratore, Amministratore, Ospite, Ospiti, ecc. Mancavano, quindi le ho semplicemente inserite e copiato tutti gli altri campi dalle loro versioni non inglesi. Per esempio.

nano /etc/passwd 

SYSTEM:*:18:544:,S-1-5-18:: 
LocalService:*:19:544:U-NT AUTHORITY\LocalService,S-1-5-19:: 
NetworkService:*:20:544:U-NT AUTHORITY\NetworkService,S-1-5-20:: 
Administrators:*:544:544:,S-1-5-32-544:: 
Administratorzy:*:544:544:,S-1-5-32-544:: 
TrustedInstaller:*:4294967294:4294967294:U-NT SERVICE\TrustedInstaller,S-1-5-80-956008885-3418522649-1831038044-1853292631-2271478464:: 
Administrator:unused:500:513:U-gordito\Administrator,S-1-5-21-580982140-4090956935-1935414389-500:/home/Administrator:/bin/bash 
Guest:unused:501:513:U-gordito\Gość,S-1-5-21-580982140-4090956935-1935414389-501:/home/Gość:/bin/bash 
Gość:unused:501:513:U-gordito\Gość,S-1-5-21-580982140-4090956935-1935414389-501:/home/Gość:/bin/bash 
HomeGroupUser$:unused:1004:513:HomeGroupUser$,U-gordito\HomeGroupUser$,S-1-5-21-580982140-4090956935-1935414389-1004:/home/HomeGroupUser$:/bin/bash 
sshd:unused:1006:513:sshd privsep,U-gordito\sshd,S-1-5-21-580982140-4090956935-1935414389-1006:/var/empty:/bin/false 
cyg_server:unused:1007:513:Privileged server,U-gordito\cyg_server,S-1-5-21-580982140-4090956935-1935414389-1007:/var/empty:/bin/false 


nano /etc/group 

root:S-1-5-32-544:0: 
SYSTEM:S-1-5-18:18: 
TrustedInstaller:S-1-5-80-956008885-3418522649-1831038044-1853292631-2271478464:4294967294: 
Administrators:S-1-5-32-544:544: 
Administratorzy:S-1-5-32-544:544: 
Czytelnicy dzienników zdarzeń:S-1-5-32-573:573: 
Guests:S-1-5-32-546:546: 
Goście:S-1-5-32-546:546: 
IIS_IUSRS:S-1-5-32-568:568: 
Users:S-1-5-32-545:545: 
Users DCOM:S-1-5-32-562:562: 
Użytkownicy:S-1-5-32-545:545: 
Użytkownicy DCOM:S-1-5-32-562:562: 
Użytkownicy dzienników wydajności:S-1-5-32-559:559: 
Użytkownicy monitora wydajności:S-1-5-32-558:558: 
Użytkownicy zarządzania zdalnego:S-1-5-32-580:580: 
HomeUsers:S-1-5-21-580982140-4090956935-1935414389-1003:1003: 
TelnetClients:S-1-5-21-580982140-4090956935-1935414389-1005:1005: 
WinRMRemoteWMIUsers__:S-1-5-21-580982140-4090956935-1935414389-1000:1000: 
None:S-1-5-21-580982140-4090956935-1935414389-513:513: 
Brak:S-1-5-21-580982140-4090956935-1935414389-513:513: 

Solo dopo questo, sono stato finalmente in grado di chmod g-rwx tutti i file che offeso sshd, in modo che 'ls -la' infatti confermato i permessi sceso per il gruppo e l'altro.

Poi, finalmente, servizi CYGWIN privilegiati installato e avviato (sshd, cron)

+0

Lo vedo come un bug di installazione di Cygwin, comunque.Sopra è una soluzione ... una volta che qualcuno finalmente si rende conto di cosa sta realmente accadendo. – Marcos

Problemi correlati