Secure Shell este o metodă de gestionare a unui computer sau server de la distanță disponibilă pentru Linux, OS X și Windows. O sesiune SSH la anumite intervale expiră, deoarece o sesiune SSH deschisă și nesupravegheată prezintă un risc de securitate. Dacă sunteți inactiv pentru o anumită perioadă de timp, conexiunea se oprește și veți fi forțat să vă conectați din nou. Acest timeout este definit de setările TCP ale sistemului dvs., dar poate fi suprascris în setările serverului sau în setările clientului. Dacă descoperiți că conexiunea dvs. SSH expiră prea des, puteți oricând să editați configurația SSH pentru a vă oferi timp mai mult sau mai puțin inactiv.
TCP Timeout
Timpul de expirare al serverului dvs. este implicit la expirarea TCP a sistemului dumneavoastră. Acest lucru se datorează faptului că serverele SSH sunt configurate automat pentru a utiliza TPCKeepalive, care trimite o sondă la un moment prestabilit când sistemul este inactiv pentru a verifica dacă conexiunea este încă acolo. Această implicită variază în funcție de sistemul dvs. Unele sisteme folosesc o valoare implicită de până la cinci secunde, iar unele ajung până la două ore; media este de obicei în jur de trei până la cinci minute. Conexiunea dvs. SSH, dacă nu a fost modificată pentru a modifica timeout-ul fie la server, fie la client, va folosi acest timeout. Setările de pe server sau client vor înlocui acest timeout.
Videoclipul zilei
Setări de timeout la nivel de server
Editarea timeout-ului din fișierul sshd_config va schimba opțiunile de timeout pentru fiecare client care se conectează la server. Administratorii de sistem pot accesa acest fișier la /etc/ssh/sshd_config. Dacă utilizați un terminal și vă simțiți confortabil cu un editor de terminal, îl puteți edita în întregime în terminal introducând „sudo nano /etc/ssh/sshd_config”. Adăugați opțiunea „ClientAliveInterval” care îi spune serverului să trimită un pachet de date către client pentru a verifica activitatea. Ar trebui să luați în considerare adăugarea și „ClientAliveCountMax”; aceasta îi spune serverului de câte ori ar trebui să verifice fără a primi un răspuns. Nu puneți un semn de lire sterline în fața acestora; liniile cu semnele lire sterline în fața lor sunt considerate comentarii și nu sunt opțiuni active pe server. De exemplu, dacă doriți să setați ClientAliveInterval la cinci minute și ClientAliveCountMax la două, ar putea arăta astfel: ClientAliveInterval 300ClientAliveCountMax 2
Timeout bazat pe client
Dacă utilizați un client precum Putty, puteți modifica timpul de expirare făcând clic pe opțiunea „Conexiune” de pe bara laterală și completați timpul preferat în caseta de text de lângă „Secunde între Keepalives” în secunde. Acest lucru ar trebui să se bazeze în întregime pe cât timp credeți că veți fi inactiv între activitate. De asemenea, puteți modifica acest lucru manual, deschizând fișierele de setare de pe partea clientului la /etc/ssh/ssh_config – rețineți diferența dintre fișierul server „sshd_config”. Adăugați setarea „ServerAliveInterval” și setați în câteva secunde cât de des doriți ca clientul să trimită pachete pentru a menține conexiunea activă.
Riscurile modificării Timeout
În mod evident, modificarea timpului de expirare este o chestiune de comoditate – vă permite să efectuați mai multe sarcini fără a fi nevoie să vă reînnoiți frecvent datele de conectare la serverul SSH. Cu toate acestea, aceasta înseamnă că trebuie să rămâneți mai vigilenți la desktop. Dacă pleci de la computer cu o conexiune SSH deschisă, oricine se poate așeza și accesa serverul tău. În timp ce lăsați o conexiune SSH deschisă pentru uz casnic este mai puțin îngrijorător decât atunci când faceți acest lucru pentru dvs., a avea obiceiul de a-ți lăsa conexiunea deschisă poate avea consecințe destul de oribile în greșit mâinile.