Sous Ubuntu 12.04, j'ai configuré le serveur OpenSSH. Je peux me connecter depuis le LAN, mais pas depuis l'extérieur. J'utilise le même sshd_config
fichier que sur mes autres machines Ubuntu 12.04 (qui se trouvent dans un LAN 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 se trouve 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 bien 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 se trouve juste 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 m'embrouille, c'est que je n'ai eu ce problème sur aucune autre machine, bien qu'ils soient sur un lan différent. Ce LAN n'a qu'un seul ordinateur connecté. Des idées sur la façon de procéder à partir d'ici?
-v
,-vv
, à-vvv
) pour obtenir des informations supplémentaires re: la connexion. par exemplessh -vvv -p 51555 65.76.97.222
.Réponses:
Quelques points à vérifier.
Vérifiez
/etc/ssh/sshd_config
et assurez-vous que vous n'avez pas d'AllowUsers
entrées amusantes .Spécifiez l'utilisateur auquel vous souhaitez vous connecter en tant que:
Vérifiez votre pare-feu (
iptables
):la source
Vérifiez que votre passerelle sur le serveur SSH est définie sur le routeur effectuant la redirection de port.
route -n
La route par défaut doit pointer vers ce routeur, sinon, vous pourrez établir des connexions via celui-ci, mais les ACK n'iront nulle part!
la source
Besoin de vérifier que la redirection de port fonctionne correctement, je vérifie généralement en allant à https://www.grc.com/shieldsup > Continuer> 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 en fait ouvert au public
la source
grep sshd /var/log/auth.log
auth.log
:Jul 6 10:23:05 mymachine sshd[7871]: Did not receive identification string from 65.76.97.222
Déclarez-vous un utilisateur?
ssh [email protected] -p51555
Si vous avez donné le code de la façon dont vous l'utilisez, je pense qu'il sera par défaut le nom d'utilisateur actuel.
De plus, vous devez avoir un utilisateur sur le système TARGET avec autorisation. dans l'exemple ci-dessus "Jimmy"
la source
sshd_config
permet à n'importe quel utilisateur de se connecter.