ssh Conexão recusada: como solucionar problemas?

14

Estou tentando:

$ ssh eric@myserver

em que myserver é uma máquina na intranet. Eu posso pingar myserver ou responder a HTTP na porta 8080, etc, mas quando tento ssh , recebo

ssh: connect to host myserver port 22: Connection refused

Estou usando o Ubuntu 10.

ps -ax , conforme sugerido, dá:

eric@Isaiah:~$ ps -ax | grep ssh
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
 1641 ?        Ss     0:04 /usr/bin/ssh-agent /usr/bin/dbus-launch --exit-with-session gnome-session
18376 pts/3    S+     0:00 grep --color=auto ssh
    
por Eric Wilson 23.09.2011 / 12:50

5 respostas

13

Você não tem um daemon SSH em execução. Se você observar a saída do comando ps ax , verá que os únicos dois processos com 'ssh' na descrição são ssh-agent (que faz algo totalmente diferente de sshd ) e grep ssh do processo que você está usando para filtrar a saída de ps .

Dependendo da distribuição instalada, talvez seja necessário instalar ou executar o ssh server, geralmente chamado openssh-server ou sshd , dependendo do seu gerenciador de pacotes.

    
por 23.09.2011 / 13:41
12

Etapas para depurar o problema acima:

  1. Use a ferramenta nmap para saber quais portas estão abertas nesse servidor. nmap é um scanner de porta. Como pode ser possível que o servidor ssh esteja sendo executado em uma porta diferente. nmap fornecerá uma lista de portas abertas.

     $ nmap myserver
    

2. Agora você pode verificar qual servidor está sendo executado em uma determinada porta. Suponha que na saída do nmap, a porta 2424 esteja aberta. Agora você pode qual servidor está sendo executado em 2424 usando a ferramenta nc (netcat).

 $ nc -v -nn myserver portno

Suponha que a saída da porta 2424 seja:

myserver 2424 open
SSH-2.0-OpenSSH_5.5p1 Debian-4ubuntu5

Isso significa que o ssh está rodando em 2424.

Continue alterando o portno no comando acima e verifique todas as portas listadas pelo nmap.

    
por 23.09.2011 / 16:50
2

Isso significa que o servidor ssh não está rodando naquela máquina ou o firewall não está permitindo o ssh passar. Você pode verificar se o ssh está rodando com 'ps -ax | grep ssh '.

    
por 23.09.2011 / 13:00
1

As duas opções anteriores são boas. Você também pode usar os argumentos -v ou -vv .

$ ssh -vv eric@myserver
    
por 25.09.2011 / 23:29
0

Também enfrentei esse problema, mas em um ambiente do VirtualBox, para resolvê-lo, precisamos configurar o endereço IP para estar no mesmo segmento da LAN; por exemplo:

Na minha máquina host, Eu abro cmd e digito ipconfig . Eu recebo 100.2.2.1 (por exemplo).

Portanto, na máquina virtual, devemos definir o endereço da VM em /etc/hosts para um valor como 100.2.2.3, dar uma olhada no número final e devolver a máquina virtual, mas antes de iniciar a máquina virtual, configure a rede nas configurações da máquina virtual, por isso precisamos definir o adaptador de rede em conexão de ponte.

Tudo isso está em um ambiente Solaris.

    
por 03.06.2015 / 23:50

Tags