GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment réparer l'erreur de connexion SSH refusée

Présentation

Vous rencontrez des problèmes pour accéder à un serveur distant via SSH ? Si SSH répond par un message "Connexion refusée", vous devrez peut-être modifier la demande ou vérifier la configuration.

Dans ce didacticiel, vous trouverez les raisons les plus courantes de l'erreur de connexion SSH refusée.

Pourquoi la connexion est-elle refusée lorsque je me connecte en SSH ?

Il existe de nombreuses raisons pour lesquelles vous pourriez recevoir le message "Connexion refusée " lors de la tentative de connexion SSH à votre serveur. Pour résoudre ce problème, vous devez d'abord identifier pourquoi le système a refusé votre connexion via SSH.

Vous trouverez ci-dessous certaines des raisons les plus courantes pouvant entraîner un refus de connexion SSH.

Client SSH non installé

Avant de résoudre d'autres problèmes, la première étape consiste à vérifier si SSH est correctement installé. La machine à partir de laquelle vous accédez au serveur doit avoir le client SSH configuré. Sans la configuration correcte du client, vous ne pouvez pas accéder à distance à un serveur.

Pour vérifier si vous avez le client SSH sur votre système, tapez ce qui suit dans la fenêtre du terminal :

ssh

Si le terminal fournit une liste de ssh options de commande, le client SSH est installé sur le système. Cependant, s'il répond par commande introuvable , vous devez installer le client OpenSSH.

Solution :Installer le client SSH

Pour installer le client SSH sur votre ordinateur, ouvrez le terminal et exécutez l'une des commandes répertoriées ci-dessous.

Pour les systèmes Ubuntu/Debian :

sudo apt install openssh-client

Pour les systèmes CentOS/RHEL :

sudo yum install openssh-client

Le démon SSH n'est pas installé sur le serveur

Tout comme vous avez besoin de la version client de SSH pour accéder à un serveur distant, vous avez besoin de la version serveur pour écouter et accepter les connexions. Par conséquent, un serveur peut refuser une connexion entrante si le serveur SSH est manquant ou si la configuration n'est pas valide.

Pour vérifier si SSH est disponible sur le serveur distant, exécutez la commande :

ssh localhost

Si la sortie répond par "Connexion refusée ", passez à l'installation de SSH sur le serveur.

Solution :Installer SSH sur un serveur distant

Pour résoudre le problème d'un serveur SSH manquant, reportez-vous à la procédure d'installation du serveur OpenSSH.

Les informations d'identification sont erronées

Les fautes de frappe ou les informations d'identification incorrectes sont des raisons courantes d'une connexion SSH refusée. Assurez-vous que vous ne faites pas d'erreur de frappe dans le nom d'utilisateur ou mot de passe .

Ensuite, vérifiez si vous utilisez la bonne adresse IP du serveur.

Enfin, vérifiez que vous disposez du bon port SSH ouvrir. Vous pouvez vérifier en exécutant :

grep Port /etc/ssh/sshd_config

La sortie affiche le numéro de port, comme dans l'image ci-dessous.

Le service SSH est en panne

Le service SSH doit être activé et exécuté en arrière-plan. Si le service est en panne, le démon SSH ne peut pas accepter les connexions.

Pour vérifier l'état du service, entrez cette commande :

sudo service ssh status

La sortie doit répondre que le service est actif. Si le terminal répond que le service est en panne, activez-le pour résoudre le problème.

Solution :Activer le service SSH

Si le système indique que le démon SSH n'est pas actif, vous pouvez démarrer le service en exécutant :

systemctl start sshd

Pour permettre au service de s'exécuter au démarrage, exécutez la commande :

sudo systemctl enable sshd

Le pare-feu empêche la connexion SSH

SSH peut refuser une connexion en raison de restrictions de pare-feu. Le pare-feu protège le serveur des connexions potentiellement dangereuses. Cependant, si vous avez configuré SSH sur le système, vous devez configurer le pare-feu pour autoriser les connexions SSH.

Assurez-vous que le pare-feu ne bloque pas les connexions SSH, car cela pourrait entraîner le message "connexion refusée " erreur.

Solution :Autoriser les connexions SSH via le pare-feu

Pour résoudre le problème que nous avons mentionné ci-dessus, vous pouvez utiliser ufw (Pare-feu non compliqué), l'outil d'interface de ligne de commande pour gérer la configuration du pare-feu.

Tapez la commande suivante dans la fenêtre du terminal pour autoriser les connexions SSH :

sudo ufw allow ssh

Le port SSH est fermé

Lorsque vous tentez de vous connecter à un serveur distant, SSH envoie une requête à un port spécifique. Pour accepter cette demande, un serveur doit avoir le port SSH ouvert.

Si le port est fermé, le serveur refuse la connexion.

Par défaut, SSH utilise le port 22. Si vous n'avez apporté aucune modification à la configuration du port, vous pouvez vérifier si le serveur écoute les requêtes entrantes.

Pour lister tous les ports qui écoutent, exécutez :

sudo lsof -i -n -P | grep LISTEN

Trouvez le port 22 dans la sortie et vérifiez si son STATE est réglé sur ÉCOUTER .

Alternativement, vous pouvez vérifier si un port spécifique est ouvert, dans ce cas, le port 22 :

sudo lsof -i:22

Solution :ouvrir le port SSH

Pour activer le port 22 pour ÉCOUTER les requêtes, utilisez iptables commande :

sudo iptables -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT

Vous pouvez également ouvrir des ports via l'interface graphique en modifiant les paramètres du pare-feu.

Débogage et journalisation SSH

Pour analyser les problèmes SSH sous Linux, vous pouvez activer le mode verbeux ou débogage mode . Lorsque vous activez ce mode, SSH imprime des messages de débogage qui aident à résoudre les problèmes de connexion, de configuration et d'authentification.

Il existe trois niveaux de verbosité :

  • niveau 1 (-v )
  • niveau 2 (-vv )
  • niveau 3 (-vvv )

Ainsi, au lieu d'accéder à un serveur distant en utilisant la syntaxe ssh [server_ip] ajoutez le -v option et exécutez :

ssh -v [server_ip]

Vous pouvez également utiliser :

ssh -vv [server_ip]

ou

ssh -vvv [server_ip]

Ubuntu
  1. Comment augmenter le délai d'expiration de la connexion SSH

  2. Comment vérifier la vitesse de votre connexion ssh

  3. Comment router Internet via un tunnel Ssh ?

  4. Comment réparer l'erreur de connexion refusée wget lorsque je suis derrière un proxy

  5. Comment corriger l'erreur "échec de la vérification de la clé de l'hôte"

Comment réparer "Les informations de mise à jour sont obsolètes" dans Ubuntu Linux

Comment activer le serveur SSH sur Ubuntu 22.04

Comment installer le serveur OpenSSH sur Ubuntu 20.04 LTS

Comment se connecter à Internet via un serveur distant via une connexion Ssh ?

Comment réparer une erreur de connexion à la base de données

Correction d'une erreur de tuyau cassé avec une connexion SSH