CYGWIN sshd “porta 22: Conexão recusada”

2

Pesquisei isso até a morte, não consigo resolver. Não consigo me conectar ao meu CYGWIN sshd de outra máquina. O Netstat mostra que a conexão está estabelecida. Pode se conectar localmente, sem problemas.

[oracle@aserver ~]$  ssh myid@mycomp
ssh: connect to host mycomp port 22: Connection refused

No mycomp:

$ netstat -a | grep ssh
  TCP    MYCOMP:ssh            MYCOMP.mydomain.com:0  LISTENING
  TCP    MYCOMP:1161           aserver.mydomain.com:ssh  ESTABLISHED

Login bem-sucedido do host local:

$ ssh myid@mycomp
myid@mycomp's password:
Last login: Tue Sep 14 14:27:30 2010 from mycomp.mydomain.com
Fanfare!!!
You are successfully logged in to this server!!!

Estou no XP sp3, atualizei o CYGWIN hoje. Tentei limpar e reconfigurar, não ajudei.

Limpeza (crédito para Herb Maeder link ):

# 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 relaged users (such as cyg_server) from the system
net user sshd /delete

Configurar:

$ 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/README.privsep.
*** Query: Should privilege separation be used? (yes/no) yes
*** Info: Note that creating a new user requires that the current account have
*** Info: Administrator privileges.  Should this script attempt to create a
*** Query: new local account 'sshd'? (yes/no) yes
*** Info: Updating /etc/sshd_config file
*** Query: Overwrite existing /etc/inetd.d/sshd-inetd file? (yes/no) yes
*** Info: Creating default /etc/inetd.d/sshd-inetd file
*** Info: Updated /etc/inetd.d/sshd-inetd


*** Warning: The following functions require administrator privileges!

*** Query: Do you want to install sshd as a service?
*** Query: (Say "no" if it is already installed as a service) (yes/no) yes
*** Query: Enter the value of CYGWIN for the daemon: []

*** Info: The sshd service has been installed under the LocalSystem
*** Info: account (also known as SYSTEM). To start the service now, call
*** Info: 'net start sshd' or 'cygrunsrv -S sshd'.  Otherwise, it
*** Info: will start automatically after the next reboot.

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

myid@MYCOMP /cygdrive/c/Documents and Settings/myid
$ cygrunsrv -S sshd

myid@MYCOMP /cygdrive/c/Documents and Settings/myid
$ cygrunsrv -Q sshd
Service             : sshd
Display name        : CYGWIN sshd
Current State       : Running
Controls Accepted   : Stop
Command             : /usr/sbin/sshd -D
    
por ultracrepidarian 15.09.2010 / 00:07

4 respostas

2

Você pode fazer telnet para a porta 22 de outro computador?

telnet <mycomp> 22

Se você está recebendo uma conexão recusada (e você pode se conectar via localhost), este é definitivamente um problema de firewall. Existem outros firewalls além do Firewall do Windows - McAfee, ZoneAlarm, etc., e parece que você está sendo bloqueado - já que você pode acessá-lo internamente (indicando sua escuta na porta correta), mas não é possível acessá-lo externamente (indicando que as portas externas estão fechadas).

Surpreendentemente, a Mozilla tem uma ótima aparência na configuração de firewalls - incluindo o Firewall do Windows. De uma chance. Só porque você acha que não há firewall em execução - não significa que não exista.

    
por 15.09.2010 / 03:26
1

Existe alguma chance de um firewall do Windows estar em execução?

Você executou seu cliente SSH no modo detalhado ou de depuração?

    
por 15.09.2010 / 00:18
0

Eu tenho lidado com esse problema exato por algumas semanas agora. Pode não se aplicar diretamente a este caso. Mas vou compartilhar minha experiência aqui, na esperança de que isso possa ajudar alguém.

O SSHD Cygwin está sendo executado na minha caixa do Windows 7 Home Premium.

  • Eu consegui fazer ssh na máquina a partir do host local ou digitando meu endereço IP. Isso foi tentado e foi bem sucedido em Putty.
  • NÃO consegui entrar na máquina a partir de qualquer outro dispositivo na LAN.
    • Verifiquei que isso não era um problema de firewall, antivírus ou segurança. Eu testei isso usando o apache portable na porta 22. Consegui alcançá-lo na porta 22. Também assegurei que o sshd.exe tivesse capacidade total de comunicação na rede.
    • Desativei todos os recursos do firewall na máquina. Era apenas o Windows Defender e o Windows Firewall. Isso não resolveu o problema
  • depois de algumas escavações. Eu fui capaz de descobrir que era algo com a própria massa. Por alguma razão, eu sou capaz de usar um cliente openssh do meu servidor linux (na nuvem) sem nenhum problema. Eu acho que tem algo a ver com chaves de massa.
  • eu corri o putty.exe -cleanup e ainda tive o problema.
  • Em um dos meus servidores linux, recebo este ssh_exchange_identification: Conexão fechada pelo host remoto
  • Em outro dos meus servidores linux, ele simplesmente se conecta.

Espero que isso ajude.

Devon

- EDIT-- OK. Começou a ficar ainda mais estranho. Eu tenho 4 servidores em nuvem, cada um ligado a um domínio diferente. Um servidor pode entrar no meu sshd enquanto outros não conseguiram.

Eu consertei isso comentando todas as entradas em hosts.deny. Eu também ajustei meu arquivo hosts.allow para ficar assim.

ALL : localhost 127.0.0.1/32 [::1]/128 [::ffff:127.0.0.1]/128 : allow
SSHD : ALL

Isso resolveu para mim.

    
por 14.02.2013 / 20:14
-2

Eu enfrentei o mesmo erro e descobri que meu sshd não estava em execução. Então inicie seu sshd usando net start sshd e isso pode funcionar para você.

    
por 27.04.2014 / 10:04

Tags