Connexion ssh refusée: comment dépanner?

Jessaye:

$ ssh eric@myserver 

myserver est une machine de lintranet. Je peux envoyer un ping à myserver ou répondre à HTTP sur le port 8080, etc., mais lorsque jessaye ssh, jobtiens

ssh: connect to host myserver port 22: Connection refused 

Jutilise Ubuntu 10.

ps -ax, comme suggéré donne:

eric@Isaiah:~$ ps -ax | grep ssh Warning: bad ps syntax, perhaps a bogus "-"? See http://procps.sf.net/faq.html 1641 ? Ss 0:04 /usr/bin/ssh-agent /usr/bin/dbus-launch --exit-with-session gnome-session 18376 pts/3 S+ 0:00 grep --color=auto ssh 

Réponse

Vous navez pas un démon SSH en cours dexécution. Si vous regardez la sortie de la commande ps ax, vous voyez que les deux seuls processus avec « ssh » dans la description sont ssh-agent (qui fait quelque chose de complètement différent de sshd) et du processus grep ssh que vous « utilisez pour filtrer la sortie de ps.

Selon la distribution installée, vous devrez peut-être installer ou exécuter le serveur ssh, généralement appelé

ou sshd selon votre gestionnaire de packages.

Réponse

Étapes de débogage du problème ci-dessus:

  1. Utilisez loutil nmap pour savoir quels ports sont ouverts sur ce serveur . nmap est un scanner de port. Puisquil est possible que le serveur ssh fonctionne sur un port différent. nmap vous donnera une liste des ports ouverts.

     $ nmap myserver 

2. Vous pouvez maintenant vérifier quel serveur fonctionne sur un port donné. Supposons que dans la sortie de nmap, le port 2424 est ouvert. Vous pouvez maintenant quel serveur fonctionne sur 2424 en utilisant loutil nc (netcat).

 $ nc -v -nn myserver portno 

Supposons que la sortie du port 2424 est:

myserver 2424 open SSH-2.0-OpenSSH_5.5p1 Debian-4ubuntu5 

Cela signifie que ssh fonctionne sur 2424.

Continuez à changer le portno dans la commande ci-dessus et vérifiez tous les ports répertoriés ouverts par nmap.

Réponse

Cela signifie soit que le serveur ssh ne fonctionne pas sur cette machine, soit que le pare-feu nautorise pas le passage de ssh. Vous pouvez vérifier si ssh fonctionne avec « ps -ax | grep ssh ».

Commentaires

  • Question modifiée pour afficher les résultats de ps -ax. Je ne sais pas ce que cela signifie.
  • Cela signifie que ssh nest pas en cours dexécution.
  • Bizarre. Je ' ne sais pas pourquoi vous avez offert deux fois de l’aide qui n’est pas vraiment utile. Vous suggérez dabord une commande utile pour vérifier si ssh est en cours dexécution, sans me dire comment interpréter les résultats. Ensuite, vous fournissez linterprétation minimale de ces résultats, sans indiquer comment vous en êtes arrivé à cette interprétation ou quelle action pourrait être appropriée. Je ' ne sais pas si vous essayez de maider, et je ne juge pas mon niveau dexpérience, ou si vous essayez de mettre en évidence mon ignorance.
  • Le la liste des processus ninclut pas de processus sshd, ce qui signifie que sshd nest pas en cours dexécution. La solution consiste à démarrer sshd.

Réponse

Le les deux options précédentes sont bonnes. Vous pouvez également utiliser les arguments -v ou -vv.

$ ssh -vv eric@myserver 

Réponse

Jai également rencontré ce problème, mais dans un environnement VirtualBox, pour le résoudre, nous devons définir ladresse IP sur le même LAN segment; par exemple:

Sur ma machine hôte, jouvre cmd et saisis ipconfig. Jobtiens 100.2.2.1 (par exemple).

Donc, dans la machine virtuelle, nous devons définir ladresse de la VM dans /etc/hosts sur une valeur telle que 100.2.2.3 , jetez un œil au numéro final et faites rebondir la machine virtuelle, mais avant de démarrer la machine virtuelle, configurez le réseau dans les paramètres de la machine virtuelle, nous devons donc définir la carte réseau en connexion pont.

Tout cela est dans un environnement Solaris.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *