conexão SSH dá tempo limite, estava trabalhando há um dia

1

Aqui está a situação. O SSH estava funcionando perfeitamente bem até um dia atrás. Eu não fiz nada fora do comum. Eu era capaz de putty no meu servidor, use git over ssh, etc.

Mas agora não posso fazer nada disso. O erro é persistente e comum em todos os clientes e dispositivos SSH que uso (putty, git bash, cmder, etc). O erro, claro, é o tempo limite de conexão. E aqui está o que eu tentei até agora.

  • ssh -vvv mydomain.com não retorna nada útil, apenas o mesmo erro depois de um monte de coisas inúteis.
  • Tentei desativar o firewall do Windows (Duh). Sem bolo.
  • Verificado e verifiquei se meu servidor ainda está sendo exibido em: 22. A conexão do Git com o bitbucket também não está funcionando, lembre-se.
  • Tentei em dispositivo diferente (meu laptop). Ainda tempo limite de conexão. (Então, o SO provavelmente não está em falta aqui).
  • Tentei redefinir o roteador. Sem bolo.
  • Alterar a conexão com a internet faz com que o problema desapareça.

Então talvez o ISP tenha bloqueado a porta 22? Mas estava funcionando ontem. E também como posso ter certeza de que o problema está no final do provedor?

    
por Achshar 05.08.2017 / 23:29

1 resposta

1

Seria incomum para um ISP bloquear a conectividade SSH de saída, ou seja, conexões de saída com uma porta de destino de TCP porta 22, mas você pode testar isso de um dos sistemas cliente, por exemplo, usando PuTTY para tentar se conectar à porta 22 em portquiz.net ; o servidor portquiz.net escuta em todas as portas TCP, permitindo que você teste qualquer porta TCP de saída. Você deve ver um prompt de nome de usuário e senha do servidor do portquiz.

Você mencionou que não acredita que exista um problema no servidor, já que você pode se conectar ao servidor SSH de outro local. Como o software de firewall pode bloquear endereços IP específicos ou faixas de endereços, você deve verificar se ele não está bloqueando o endereço IP atribuído aos sistemas pelo seu ISP; você pode visitar www.whatismyip.com para determinar seu endereço IP externo atribuído atualmente. Se o servidor estiver usando iptables para recursos de firewall, consulte Como listar e excluir regras do Firewall Iptables .

Normalmente, não se espera que algum bloco de firewall seja colocado em prática sem que você o solicite especificamente, mas se o servidor estiver executando Fail2ban ou algum software similar sistema de detecção de intrusões (IDS) , se você inadvertidamente digitou errado suas credenciais de login várias vezes quando Ao tentar fazer o logon por SSH, é possível que seu endereço IP tenha sido banido das conexões SSH no servidor, embora a proibição possa ser temporária. Se o servidor estiver executando o Fail2ban, verifique seu arquivo de log , provavelmente em /var/log/fail2ban.log ; se o endereço estiver disponível, você pode cancelar o endereço IP .

Você tem acesso ao servidor dos sistemas clientes em outras portas? Por exemplo, se o servidor estiver funcionando como um servidor da Web, você poderá se conectar à porta 80 e / ou 443 dos sistemas clientes? Ou porta 25, se estiver funcionando como um servidor de e-mail. Você pode pingar o servidor dos sistemas cliente? Se você não tem acesso a outras portas quando espera ter esse acesso, se não houver um bloqueio no servidor do seu endereço IP, talvez exista um problema com a conectividade de rede entre o seu provedor e o servidor.

O Wireshark é uma ferramenta muito útil para solucionar problemas de conectividade. É gratuito e está disponível para uma variedade de sistemas operacionais, incluindo o Microsoft Windows. Você pode instalá-lo em um dos sistemas clientes e observar o tráfego de rede entre seus sistemas e o servidor. Ele pode capturar e exibir todo o tráfego de rede entre o sistema no qual ele é executado e outros sistemas; Para isolar apenas o tráfego entre o sistema cliente e o servidor, você pode configurar o Wireshark para filtrar por porta número, por exemplo, 22 ou endereço IP . Há também a ferramenta de linha de comando, WinDump , que é o equivalente do comumente usado tcpdump nos sistemas Linux, mas como o Wireshark fornece uma interface gráfica de usuário (GUI), será mais fácil analisar o tráfego com ele. Com um analisador de pacotes, como o Wireshark, você pode determinar se o sistema cliente está vendo algum pacote do servidor ou se o tráfego é unidirecional, ou seja, do cliente para o servidor.

    
por 06.08.2017 / 16:35