J'ai des problèmes ssh
- sur un serveur (Ubuntu 16.04) auquel j'ai un accès root depuis ma machine (macOS 10.12). La situation est étrange: I vérifié que sshd
est en cours d'exécution sur le serveur et que le port 22 est ouvert (Sudo netstat -anp | grep sshd
) et que le trafic n'est pas bloqué (Sudo iptables -L | grep ssh
et Sudo ufw verbose
); hosts.deny
n'a pas non plus mon adresse IP.
La chose la plus étrange - je peux me connecter depuis une autre machine sans aucun problème. Lorsque je lance nmap <server-ip>
sur ma machine, seul le port 80 est ouvert; L'exécution de la même commande sur une autre machine donne un seul port ouvert - 22. J'ai essayé de me connecter à partir de la troisième machine - plus de chance. Pas sûr de ce qui se passe.
J'ai besoin d'un moyen (tail -f
journaux, probablement) où je peux voir ce qui se passe réellement sur le serveur lorsque j'essaie de me connecter à partir de différentes machines. Peut-être que cela m'aidera à résoudre mes problèmes. Des conseils sur comment dois-je déboguer ce problème?
La commande man 5 sshd_config
vous donnera beaucoup de options .
Régler LogLevel VERBOSE
dans le fichier /etc/ssh/sshd_config
est probablement ce dont vous avez besoin, bien que les niveaux soient plus élevés.
Les messages se termineront par ip dans /var/log/auth.log
par défaut. Vous devrez donc tail -f /var/log/auth.log
dans un terminal distinct pour voir ce qui se passe.
Le problème s'est avéré être une autre machine avec la même adresse IP que le serveur. Très trivial mais pas évident (soupir). Merci pour la contribution de ceux qui ont répondu.
J'étais désespéré de commencer à utiliser Wireshark lorsque j'ai vérifié les tables arp sur les clients et que les clients ayant des problèmes intermittents obtenaient parfois des adresses mac différentes pour la même adresse IP du serveur. Cela m'a fait penser qu'il pourrait y avoir une machine différente dans le réseau. C'était le problème.
Je suppose que le réseau à partir duquel vous utilisez nmap
ne dispose pas de l'autorisation de pare-feu pour atteindre le port 22
sur le serveur. Sur l'autre ordinateur d'où vous ne pouvez voir que port 22
sur le serveur, mais pas le port 80
, la règle de pare-feu autorise la connexion à port 22
mais pas sur port 80
à partir de cette machine. au serveur.
Vérifiez les paramètres du pare-feu pour la règle permettant ssh
et http
d'accéder au serveur à partir de votre machine et de l'autre machine.
Si cela ne résout pas le problème, vous pouvez consulter le journal comme indiqué dans la réponse ci-dessus.