Não é possível SSH da LAN externa, apesar do encaminhamento de porta parecer bom


8

Executando o Ubuntu 12.04, configurei o servidor OpenSSH. Eu posso conectar de dentro da LAN, mas não de fora. Estou usando o mesmo sshd_configarquivo que em minhas outras máquinas Ubuntu 12.04 (que ficam em uma LAN diferente).

$ ssh 192.168.0.2

funciona bem, mas

$ ssh 65.76.97.222

(endereço IP composto) não funciona. Nada acontece. Nenhuma mensagem de erro ou qualquer coisa. O prompt fica lá.

Graças aos comentários abaixo, consegui verificar nos sites canyouseeme.org e ShieldsUP que a porta 22 está realmente aberta.

Usando a opção -vvv, obtenho o seguinte:

$ ssh -vvv 65.76.97.222
OpenSSH_5.9p1 Debian-5ubuntu1.4, OpenSSL 1.0.1 14 Mar 2012
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to 65.76.97.222 [65.76.97.222] port 22.
debug1: Connection established.
debug1: identity file /home/myname/.ssh/id_rsa type -1
debug1: identity file /home/myname/.ssh/id_rsa-cert type -1
debug1: identity file /home/myname/.ssh/id_dsa type -1
debug1: identity file /home/myname/.ssh/id_dsa-cert type -1
debug1: identity file /home/myname/.ssh/id_ecdsa type -1
debug1: identity file /home/myname/.ssh/id_ecdsa-cert type -1

E então o prompt fica lá.

Mais informações sobre depuração de var/log/auth.log:

$ grep sshd /var/log/auth.log
[cutting old lines...]    
Jul  6 10:23:05 mymachine sshd[7871]: Did not receive identification string from 65.76.97.222

Estou permitindo que qualquer usuário se conecte, em particular meu próprio nome de usuário. O que me confunde é que eu não tive esse problema em nenhuma outra máquina, embora eles estejam em uma LAN diferente. Essa lan possui apenas um computador conectado a ela. Alguma idéia de como proceder a partir daqui?


tente usar a opção detalhada ( -v, -vvpara -vvv) para obter informações adicionais re: a conexão. por exemplo ssh -vvv -p 51555 65.76.97.222,.
amc

verifique a porta de encaminhamento canyouseeme.org
hwez

Obrigado, editei minha pergunta para refletir seus comentários.
DustByte

Respostas:


3

Algumas coisas para você verificar.

  1. Verifique /etc/ssh/sshd_confige verifique se você não tem nenhuma AllowUsersentrada engraçada .

  2. Especifique o usuário que você deseja conectar como:

    ssh USER@SERVER
    ssh SERVER -lUSER
    
  3. Verifique seu firewall ( iptables):

    sudo iptables -L --line-numbers
    sudo iptables -L -t nat --line-numbers
    

2

Verifique se o seu gateway no servidor SSH está definido como o roteador que está encaminhando a porta.

route -n

A rota padrão deve apontar de volta para esse roteador; caso contrário, você poderá iniciar conexões através dele, mas os ACKs não irão a lugar algum!


1

Preciso verificar se o encaminhamento de porta está funcionando corretamente. Em geral, verifiquei em https://www.grc.com/shieldsup > Continuar> coloque o número da porta na caixa e clique em probe de porta personalizado especificado pelo usuário. Isso deve lhe dizer se essa porta TCP está de fato aberta ao público


Obrigado. Editei minha pergunta para refletir sua sugestão. Problema permanece no entanto.
DustByte

Bem, a rede está descartada, então parece um problema de configuração. Tentegrep sshd /var/log/auth.log
meccooll

A seguinte linha é então adicionada a auth.log:Jul 6 10:23:05 mymachine sshd[7871]: Did not receive identification string from 65.76.97.222
DustByte

1

Você está declarando um usuário?

ssh Jimmy@65.76.97.222 -p51555

Se você forneceu o código da maneira que o está usando, acredito que o padrão será o nome de usuário atual.

Além disso, você precisa ter um usuário no sistema TARGET com permissão. no exemplo acima "Jimmy"


Eu tenho de fato. Estou apenas me conectando com o mesmo usuário o tempo todo e, além disso, sshd_configpermite que qualquer usuário se conecte.
DustByte
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.