Sobes.tech
Junior

Mida teha, kui SSH-ühendus hangub?

sobes.tech AI

Vastus AI-lt

  1. Tõrke kontrollige võrguliidest: Veenduge, et interneti- või kohaliku võrgu ühendus ei ole probleemne. Pingi serverile.
  2. Serveri koormust kontrollige: Võib-olla on server ülekoormatud (CPU, RAM, I/O). Kasutage jälgimisvahendeid või proovige ühendust saada hypervisori/teenusepakkuja konsooli kaudu.
  3. Taaskäivitage SSH teenus: Serveri poolel, kui teil on juurdepääs muul viisil (konsol, teine SSH server).
    # systemd-põhiste süsteemide jaoks
    sudo systemctl restart sshd.service
    
    # SysV init-põhiste süsteemide jaoks
    sudo service ssh restart
    
  4. Kontrollige SSH serveri seadeid: Fail /etc/ssh/sshd_config, pöörake tähelepanu parameetritele ClientAliveInterval ja ClientAliveCountMax.
    # /etc/ssh/sshd_config
    ClientAliveInterval 60 # saatke elusõnum iga 60 sekundi järel
    ClientAliveCountMax 3  # lubatud 3 vahelejäänud elusõnumit
    
    Pärast seadete muutmist tuleb SSH teenus taaskäivitada.
  5. Kontrollige SSH kliendi seadeid: Fail ~/.ssh/config või käskluse valikud (-o). Parameetrid ServerAliveInterval ja ServerAliveCountMax.
    # ~/.ssh/config
    Host teie_serveri_aliase
        Hostname teie_serveri_ip_ või hostnime
        ServerAliveInterval 60
        ServerAliveCountMax 3
    
    Või ühenduse loomisel:
    ssh -o ServerAliveInterval=60 -o ServerAliveCountMax=3 user@teie_serveri_ip_ või hostnime
    
  6. Kontrollige tulemüüre: Veenduge, et tulemüürid (kohalik, serveri, võrgus) ei blokeeri ega katkesta ühendust pordil 22 (või muul kasutusel SSH port).
  7. Kontrollige TMOUT/IDLE ajapiiranguid: Mõned terminalid või keskkonnad omavad oma seadeid tegevusetuse ajapiirangutele, mis võivad ühenduse katkestada. Kontrollige muutujat TMOUT bash-sessioonil serveris.
    # kontrollige muutujat
    echo $TMOUT 
    
    # määrake väärtus (nt 3600 sekundit)
    export TMOUT=3600 
    
    See on ajutine lahendus kehtivale sessioonile. Püsivate muudatuste jaoks redigeerige .bashrc, .profile ja sarnased failid.
  8. Kasutage -v valikut tõrkeotsinguks: SSH kliendi protsessi üksikasjad.
    ssh -v user@teie_serveri_ip_ või hostnime
    
  9. Kontrollige SSH logisid: Serveri poolel /var/log/auth.log või /var/log/secure failides.
    # vaadake viimaseid kirjeid autoriseerimislogis
    sudo tail /var/log/auth.log
    
  10. Kasutage alternatiivset porti või protokolli: Kui standardport 22 on võrgus blokeeritud, proovige kasutada teist porti, kui see on serveris seadistatud. Või kasutage teist ligipääsuprotsessi (nt konsool).