Pourquoi toutes mes tentatives SSH échouent-elles en raison d'un délai d'attente?


22

Je suis novice dans l'utilisation de ssh et des technologies connexes, il est donc très possible que je ne comprenne pas quelque chose de basique. (Cela pourrait également être une question pour Server Fault à la place .... pas sûr.)

J'essaie de ssh dans un serveur Web (que je possède) et la connexion n'est jamais établie en raison du délai d'attente.

~ $ ssh -vvv DOMAIN.com
OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /Users/USER/.ssh/config
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: /etc/ssh_config line 102: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to DOMAIN.com [123.45.67.89] port 22.
debug1: connect to address IPADD port 22: Operation timed out
ssh: connect to host DOMAIN.com port 22: Operation timed out

Ma première pensée a été que j'avais mal spécifié le domaine ou que quelque chose n'allait pas avec mon site. J'ai donc essayé de me connecter au même domaine via FTP, et cela a bien fonctionné (on m'a demandé le nom d'utilisateur):

~ $ ftp
ftp> open
(to) DOMAIN.com
Connected to DOMAIN.com.
220---------- Welcome to Pure-FTPd [privsep] [TLS] ----------
220-You are user number 2 of 50 allowed.
220-Local time is now 12:47. Server port: 21.
220-This is a private system - No anonymous login
220-IPv6 connections are also welcome on this server.
220 You will be disconnected after 15 minutes of inactivity.
Name (DOMAIN.com:USER):

Alors j'ai pensé que peut-être j'utilisais mal SSH. J'ai commencé à regarder ce didacticiel vidéo . À environ 1 minute, il le fait ssh will@supercars.comet obtient une invite de nom d'utilisateur, mais cela me donne le même délai d'attente que ci-dessus. J'ai ensuite essayé ssh google.comce qui fait la même chose. ssh localhost, d'autre part, fonctionne très bien. Le problème semble donc être lié aux requêtes SSH sur un réseau.

Ma prochaine pensée était que ce pourrait être un problème de pare-feu. J'ai installé Sophos sur cette machine, mais selon mon administrateur, cela "ne devrait pas" bloquer les requêtes SSH sortantes.

Quelqu'un peut-il aider à comprendre pourquoi cela se produit?


8
C'est une adresse IP en direct que vous nous donnez. Il dispose d'une connexion FTP non sécurisée en cours d'exécution. Ce n'est peut-être pas une bonne idée. Il n'a également rien en cours d'exécution sur le port 22, qui, je le soupçonne, est à l'origine de vos problèmes. Vous ne pouvez pas simplement lancer ssh dans n'importe quoi, le serveur doit avoir un sshd en cours d'exécution, celui-ci ne semble pas le faire. S'il s'agit de votre serveur, activez ssh et désactivez ftp. Vous pouvez faire ftp sur ssh une fois qu'il est en cours d'exécution.
marinus

3
Pas besoin de supprimer. J'ai édité la sortie IP et j'ai demandé à SE de purger l'historique des modifications. De cette façon, la personne qui vous a répondu ne perd aucune réputation.
terdon

Réponses:


24

Ce message d'erreur signifie que le serveur auquel vous vous connectez ne répond pas aux tentatives de connexion SSH sur le port 22. Il y a trois raisons possibles à cela:

  1. Vous n'exécutez pas de serveur SSH sur la machine. Vous devrez l'installer pour pouvoir y accéder.
  2. Vous exécutez un serveur SSH sur cette machine, mais sur un port non standard. Vous devez déterminer sur quel port il s'exécute; dire que c'est sur le port 2222, vous exécutez ensuite ssh -p 2222 hostname.
  3. Vous exécutez un serveur SSH sur cette machine et il utilise le port sur lequel vous essayez de vous connecter, mais la machine possède un pare-feu qui ne vous permet pas de vous y connecter. Vous devrez comprendre comment changer le pare-feu, ou peut-être devrez-vous ssh à partir d'un autre hôte pour être autorisé à entrer.

EDIT : comme (correctement) souligné dans les commentaires, le troisième est certainement le cas; les deux autres entraîneraient le serveur renvoyant un package TCP "reset" à la tentative de connexion du client, résultant en un message d'erreur "connexion refusée", plutôt que le délai d'attente que vous obtenez. Les deux autres peuvent également être le cas, mais vous devez d'abord corriger le troisième avant de pouvoir continuer.


6
S'il n'était pas installé, ou s'il fonctionnait sur un autre port, il recevrait des messages de refus de connexion.
Hut8

2
@ Hut8: C'est vrai. De vos 3 possibilités, seule la troisième (pare-feu) pourrait entraîner des délais d'attente.
R ..

Sur Ubuntu: sudo ufw allow 22; faites votre travail alors; sudo ufw deny 22. digitalocean.com/community/tutorials/…
Daniel

Je pense qu'il y a une 4ème possibilité qui est que le serveur n'est pas accessible (problèmes de routage Internet, quelque chose entre les deux ...) Même si vous pouvez accéder à d'autres services car l'itinéraire choisi peut différer pour d' sshautres services.
Alexis Wilke

3

Vérifiez par la commande telnet si vous pouvez vous connecter au port SSH 22. Si vous ne pouvez pas vous connecter, vérifiez-le. Vous devez d'abord pouvoir vous connecter sur le port no. 22 au serveur.

Par défaut, le port SSH est 22. Mais si vous avez configuré un autre port, utilisez ce port au lieu de 22.

telnet <ip / url du serveur> <port>

par exemple telnet domain.com 22


2
Cela expirera tout de même (sinon le ssh -vjournal aurait montré qu'une connexion a réussi, plutôt que de dire qu'elle a expiré)
Wouter Verhelst

@Wouter Verhelst ouais, merci de clarifier
AVJ

Comment pouvez-vous vérifier quel port est configuré? Configurer un nouveau port?
Yonatan Simson

@YonatanSimson, en supposant que vous ayez accès, vous pouvez utiliser sudo netstat -a64np( netstat) et rechercher le sshdserveur (dernière colonne). Si vous n'y avez pas accès, vous pouvez essayer nmap.
Alexis Wilke
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.