Por que todas as minhas tentativas de SSH estão falhando devido ao tempo limite?


22

Sou iniciante no uso de ssh e tecnologias relacionadas, por isso é muito possível que não esteja entendendo algo básico. (Essa também pode ser uma pergunta para a falha do servidor ... não tenho certeza.)

Estou tentando fazer o ssh em um servidor web (que eu possuo) e a conexão nunca é estabelecida devido ao tempo limite.

~ $ ssh -vvv DOMAIN.com
OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /Users/USER/.ssh/config
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: /etc/ssh_config line 102: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to DOMAIN.com [123.45.67.89] port 22.
debug1: connect to address IPADD port 22: Operation timed out
ssh: connect to host DOMAIN.com port 22: Operation timed out

Meu primeiro pensamento foi que, de alguma forma, eu havia especificado o domínio errado ou que algo estava errado com o meu site. Então, tentei conectar-me ao mesmo domínio via FTP e funcionou bem (foi solicitado o nome do usuário):

~ $ ftp
ftp> open
(to) DOMAIN.com
Connected to DOMAIN.com.
220---------- Welcome to Pure-FTPd [privsep] [TLS] ----------
220-You are user number 2 of 50 allowed.
220-Local time is now 12:47. Server port: 21.
220-This is a private system - No anonymous login
220-IPv6 connections are also welcome on this server.
220 You will be disconnected after 15 minutes of inactivity.
Name (DOMAIN.com:USER):

Então pensei que talvez estivesse usando o SSH errado. Comecei a assistir este vídeo tutorial . Em cerca de 1 minuto, ele ssh will@supercars.comrecebe e recebe um prompt de nome de usuário, mas isso me dá o mesmo tempo limite acima. Eu então tentei o ssh google.comque faz o mesmo. ssh localhost, por outro lado, funciona bem. Portanto, o problema parece ter algo a ver com solicitações SSH em uma rede.

Meu próximo pensamento foi que pode ser um problema de firewall. Eu tenho o Sophos instalado nesta máquina, mas, de acordo com o meu administrador, "não deve" bloquear solicitações SSH de saída.

Alguém pode ajudar a descobrir por que isso está acontecendo?


8
Esse é um endereço IP ativo que você está nos fornecendo. Ele possui uma conexão FTP não segura em execução. Isso pode não ser uma boa ideia. Ele também não possui nada em execução na porta 22, que suspeito ser a fonte dos seus problemas. Você não pode simplesmente ssh em nada, o servidor precisa ter um sshd em execução, este parece não ter. Se for o seu servidor, ative o ssh e desative o ftp. Você pode executar o ftp over ssh quando estiver em execução.
marinus

3
Não há necessidade de excluir. Editei o IP e pedi à SE para limpar o histórico de edições. Dessa forma, a pessoa que respondeu a você não perde nenhuma reputação.
terdon

Respostas:


24

Essa mensagem de erro significa que o servidor ao qual você está se conectando não responde às tentativas de conexão SSH na porta 22. Há três razões possíveis para isso:

  1. Você não está executando um servidor SSH na máquina. Você precisará instalá-lo para poder fazer o ssh.
  2. Você está executando um servidor SSH nessa máquina, mas em uma porta não padrão. Você precisa descobrir em qual porta está executando; digamos que está na porta 2222, você executassh -p 2222 hostname .
  3. Você está executando um servidor SSH nessa máquina e ele usa a porta na qual você está tentando se conectar, mas a máquina possui um firewall que não permite a conexão com ela. Você precisará descobrir como alterar o firewall ou talvez precise usar o ssh de um host diferente para poder entrar.

EDIT : como (corretamente) apontou nos comentários, o terceiro é certamente o caso; os outros dois resultariam no servidor enviando um pacote de "redefinição" do TCP de volta à tentativa de conexão do cliente, resultando em uma mensagem de erro "conexão recusada", em vez do tempo limite que você está recebendo. Os outros dois também podem ser o caso, mas é necessário corrigir o terceiro antes de prosseguir.


6
Se não estivesse instalado, ou se estivesse sendo executado em uma porta diferente, ele receberia mensagens de conexão recusada.
Hut8

2
@ Hut8: Está certo. Das três possibilidades, apenas a terceira (firewall) pode levar a tempos limites.
R ..

No Ubuntu: sudo ufw allow 22; faça seu trabalho então; sudo ufw negar 22. digitalocean.com/community/tutorials/…
Daniel

Penso que existe uma quarta possibilidade, que é a de que, de alguma forma, o servidor não esteja acessível (problemas de roteamento da Internet, algo entre eles ...) Mesmo se você puder acessar outros serviços, porque a rota escolhida pode diferir para sshoutros serviços.
Alexis Wilke

3

Verifique pelo comando telnet se você consegue se conectar à porta SSH 22. Se você não conseguir se conectar, verifique se há. Primeiro você deve conseguir conectar na porta no. 22 para o servidor.

Por padrão, a porta SSH é 22. Mas se você configurou qualquer outra porta, use essa porta em vez de 22.

telnet <ip / url do servidor> <porta>

por exemplo, telnet domain.com 22


2
Isto irá expirar exatamente o mesmo (caso contrário, o ssh -vregistro teria mostrado uma conexão bem-sucedida, ao invés de dizer que expirou)
Wouter Verhelst

Sim @Wouter Verhelst, thnx para clarificação
AVJ

Como você pode verificar qual porta está configurada? Configurar uma nova porta?
Yonatan Simson 23/03

@YonatanSimson, supondo que você tenha acesso, você pode usar sudo netstat -a64np( netstat) e procurar o sshdservidor (última coluna). Se você não tiver acesso, você pode tentar nmap.
Alexis Wilke
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.