Sobes.tech
Junior

Que faire si la connexion SSH se bloque

sobes.tech IA

Réponse de l'IA

  1. Vérifier la connexion réseau : S'assurer qu'il n'y a pas de problème avec la connexion Internet ou le réseau local. Pinguer le serveur.
  2. Vérifier la charge du serveur : Le serveur pourrait être surchargé (CPU, RAM, I/O). Utiliser des outils de surveillance ou tenter d'accéder via la console de l'hyperviseur/fournisseur.
  3. Redémarrer le service SSH : Sur le serveur, si l'accès est possible par d'autres moyens (console, autre SSH).
    # pour les systèmes basés sur systemd
    sudo systemctl restart sshd.service
    
    # pour les systèmes basés sur SysV init
    sudo service ssh restart
    
  4. Vérifier la configuration du serveur SSH : Fichier /etc/ssh/sshd_config, prêter attention aux paramètres ClientAliveInterval et ClientAliveCountMax.
    # /etc/ssh/sshd_config
    ClientAliveInterval 60 # envoyer un message de vie toutes les 60 secondes
    ClientAliveCountMax 3  # autoriser 3 messages de vie manqués
    
    Après modification, redémarrer le service SSH.
  5. Vérifier la configuration du client SSH : Fichier ~/.ssh/config ou options en ligne de commande (-o). Paramètres ServerAliveInterval et ServerAliveCountMax.
    # ~/.ssh/config
    Host votre_alias_de_serveur
        Hostname votre_ip_ou_nom_de_serveur
        ServerAliveInterval 60
        ServerAliveCountMax 3
    
    Ou lors de la connexion :
    ssh -o ServerAliveInterval=60 -o ServerAliveCountMax=3 utilisateur@votre_ip_ou_nom_de_serveur
    
  6. Vérifier les pare-feu : S'assurer que les pare-feu (locaux sur le client, le serveur, réseau) ne bloquent pas ou ne coupent pas la connexion sur le port 22 (ou tout autre port SSH utilisé).
  7. Vérifier TMOUT/IDLE-timeouts : Certains terminaux ou environnements ont leurs propres réglages de délai d'inactivité qui peuvent entraîner la coupure de la connexion. Vérifier la variable TMOUT dans la session bash sur le serveur.
    # vérifier la variable
    echo $TMOUT 
    
    # définir la valeur (par exemple, 3600 secondes)
    export TMOUT=3600 
    
    Ceci est une solution temporaire pour la session en cours. Pour une modification persistante, éditer les fichiers .bashrc, .profile, etc.
  8. Utiliser l'option -v pour le débogage : Détail du processus de connexion SSH avec le client.
    ssh -v utilisateur@votre_ip_ou_nom_de_serveur
    
  9. Vérifier les logs SSH : Sur le serveur, /var/log/auth.log ou /var/log/secure (selon le système d'exploitation).
    # voir les dernières entrées dans le log d'authentification
    sudo tail /var/log/auth.log
    
  10. Utiliser un port ou un protocole alternatif : Si le port standard 22 est bloqué quelque part dans le réseau, essayer un autre port, s'il est configuré sur le serveur. Ou utiliser un autre protocole d'accès, si possible (par exemple, la console).