Como desinstalar / reinstalar o cygwin para usar o sshd?

16

Instalei o cygwin / sshd sem bons resultados. Eu removi o diretório c: \ cygwin para reinstalar. Eu removi o usuário administrador do sshd com a mão.

Eu reinstalei o cygwin novamente, depois executei o 'ssh-host-config -y'. Estranhamente, ele não pergunta nada sobre como criar um novo usuário. E o procedimento é muito curto.

$ ssh-host-config -y
* Query: Overwrite existing /etc/ssh_config file? (yes/no) yes
 Info: Creating default /etc/ssh_config file
 Query: Overwrite existing /etc/sshd_config file? (yes/no) yes
 Info: Creating default /etc/sshd_config file
 Info: Privilege separation is set to yes by default since OpenSSH 3.3.
 Info: However, this requires a non-privileged account called 'sshd'.
 Info: For more info on privilege separation read /usr/share/doc/openssh
ME.privsep.
* Query: Should privilege separation be used? (yes/no) yes
*** Info: Updating /etc/sshd_config file

*** Info: Host configuration finished. Have fun!

Quando eu executei 'cygrunsrv -S sshd', recebo um erro. "Win 32 erro 1069: O serviço não foi iniciado devido a falha de logon". É uma mensagem razoável, já que eu deletei o sshd como usuário, e o procedimento de reinstalação não fez nada para isso novamente.

Eu vejo algo errado com a desinstalação.

P: Como posso desinstalar a coisa relacionada ao sshd perfeitamente para que eu possa reinstalá-la novamente?

    
por prosseek 19.02.2010 / 05:07

3 respostas

4

Eu tive que fazer três etapas para reinstalá-lo.

  • excluir LOCAL_MACHINE \ SYSTEM \ ControlSet001 \ services \ sshd
  • execute 'sc delete sshd'
  • reinicializar

O problema é que não consigo acessar o cygwin do Mac, que é a razão exata pela qual eu tentei reinstalar o cygwin.

Eu fiz outra discussão sobre esse problema. - > Não consigo entrar no cygwin / ssh do Mac

    
por 19.02.2010 / 05:38
37

Se o sshd tiver sido instalado anteriormente no sistema, as seguintes procedimento de limpeza deve ser executado antes de invocar o ssh-host-config:

# Remove sshd service
cygrunsrv --stop sshd
cygrunsrv --remove sshd

# Delete any sshd or related users (such as cyg_server) from /etc/passwd
#   (use your favorite editor)

# Delete any sshd or related users (such as cyg_server) from the system
net user sshd /delete
net user cyg_server /delete
    
por 23.01.2013 / 17:16
1

Olhando para este link

link

a sugestão de alguém do link acima, parece ser uma ótima lista de verificação, exaustiva, sem atalhos e rápida, e o IIRC funcionou para mim.

Remove all files related to ssh from /etc.
Remove /var/empty.
Remove the ssh logs from /var/log.
Remove the sshd and cyg_server accounts from your SAM. Drop both from /etc/passwd.
Remove the sshd service. Start over.

Nota - Onde diz "começar de novo", isso pode ser americano falar para reiniciar, neste caso, o Windows. Onde diz para remover um serviço, você pode precisar ou querer parar o serviço antes de removê-lo. Pode ser que você não precise de um reinício, embora você possa. (então você poderia apenas reiniciar se ainda não funcionasse). E onde diz "seu SAM", que significa onde ele armazena os usuários do Windows - eles são mostrados em 'gerenciamento de computador' - cygwin ssh adiciona usuários lá, vejo cyg_server e sshd usuários lá, você pode excluí-los de gui ou linha de comando. E parando e excluindo um serviço, existem muitos comandos que podem. cygrunsrv, sc, net, e desses, eu não vi uma vantagem com o cygrunsrv. e esse jay guy acha que sc é mais confiável em pará-los ou excluí-los, isso pode ser verdade. Outras respostas cobriram re-comandos para parar e remover um serviço.

    
por 14.01.2016 / 05:23