web-dev-qa-db-fra.com

Le SSH ne peut pas de l'extérieur du LAN malgré le transfert de port semble bien

Sous Ubuntu 12.04, j'ai configuré le serveur OpenSSH. Je peux me connecter depuis le réseau local, mais pas depuis l'extérieur. J'utilise le même fichier sshd_config que sur mes autres machines Ubuntu 12.04 (situées dans un réseau local différent).

$ ssh 192.168.0.2

fonctionne bien, mais

$ ssh 65.76.97.222

(adresse IP composée) ne fonctionne pas. Rien ne se passe. Pas de message d'erreur ou autre chose. L'invite est juste là.

Grâce aux commentaires ci-dessous, j'ai réussi à vérifier via les sites Web canyouseeme.org et ShieldsUP que le port 22 est effectivement ouvert.

En utilisant l'option -vvv, j'obtiens ce qui suit:

$ 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

Et puis, l'invite reste là.

Informations de débogage supplémentaires à partir 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

J'autorise tout utilisateur à se connecter, en particulier mon propre nom d'utilisateur. Ce qui me trouble, c'est que je n'ai pas eu ce problème sur une autre machine, bien qu'ils soient sur un réseau local différent. Ce LAN n'a qu'un seul ordinateur connecté. Des idées sur la façon de procéder à partir d’ici?

8
DustByte

Quelques points à vérifier.

  1. Vérifiez /etc/ssh/sshd_config et assurez-vous de ne pas avoir d'entrées drôles AllowUsersname__.

  2. Spécifiez l'utilisateur que vous souhaitez connecter comme:

    ssh USER@SERVER
    ssh SERVER -lUSER
    
  3. Vérifiez votre pare-feu (iptablesname__):

    Sudo iptables -L --line-numbers
    Sudo iptables -L -t nat --line-numbers
    
3
Phobos

Vérifiez que votre passerelle sur le serveur SSH est configurée pour que le routeur effectue le transfert de port.

route -n

La route par défaut devrait pointer en arrière sur ce routeur, sinon, vous pourrez établir des connexions via ce routeur, mais les ACK n'iront nulle part!

2
Grizly

Besoin de vérifier que la redirection de port fonctionne correctement, je vérifie généralement en accédant à https://www.grc.com/shieldsup > Poursuivez> mettez votre numéro de port dans la zone et cliquez sur la sonde de port personnalisée spécifiée par l'utilisateur. . Cela devrait vous dire si ce port TCP est ouvert au public

1
meccooll

Vous déclarez un utilisateur?

ssh [email protected] -p51555

Si vous avez donné le code de la façon dont vous l’utilisez, alors je pense qu’il utilisera par défaut le nom d’utilisateur actuel.

De plus, vous devez avoir un utilisateur autorisé à accéder au système TARGET. dans l'exemple ci-dessus "Jimmy"

1
wlraider70