Novērst SSH savienojuma taimauta / salauztās caurules darbību

Gan kā Windows kā arī ar Mac (pēdējos 10 gados) es pavadīju daudz laika SSH savienojumi uz tīmekļa serveriem, e-pasta serveriem, mākoņa un citām rezerves paketēm. Linux vēlamais izplatījums neapšaubāmi ir CentOS.

Viena no vissmagākajām serveru administratoru lietām ir pārtraukt SSH savienojumus. Vai nu pēkšņi, pogas taustiņā Putty vai Terminal (visbiežāk tas ir vietēja savienojuma jautājums), vai arī pēc kāda laikatukšgaitas”- laika periods, kurā tas, izmantojot SSH sesiju, nesadarbojas ar attālo serveri.

Ja jūs izmantojat Mac un izmantojiet rīku Terminal attālinātam savienojumam, izmantojot SSH, tad pēc neaktivitātes perioda jūs noteikti atvienojat ar ziņojumu: “client_loop: send disconnect: Saplēsta caurule”. Es devu risinājumu raksts šeit, kurā es teicu, ka to var pievienot/etc/ssh/ssh_config" līnija:

Host *
ServerAliveInterval 120

Iepriekš minētais risinājums ir derīgs Mac, un godīgi sakot, lai būtu pēdējie atjauninājumi macOS Man nav iebildumu restart failā veiktās izmaiņas "ssh_config", Un atgriežas problēma ar dīkstāves sesijas atvienošanu.

Risinājums, ar kuru mēs varam novērst SSH sesijas atvienošanu noteiktā attālumā termināls (macOS) Vai ķite (Windows), ir kā bez “ServerAliveIntervalNo mūsu datora, lai noteiktu attālo serveri, kas periodiski sazinās ar SSH lietojumprogrammu / klientu.
Tāpēc mums ir jāievieš direktīva "ClientAliveInterval" iekš "sshd_config”Uz servera, ar kuru mēs izveidojam savienojumu.

Novērst SSH savienojuma taimauta / bojāta cauruļvada darbību (padomi ssh_config)

1. Mēs izveidojam savienojumu ar serveri, kuru vēlamies aktivizēt, un iestatām laika intervālu “ClientAliveInternal”. Mēs atveram SSH Putty, Terminal vai citā līdzīgā lietderībā, un mēs autentificējamies ar lietotāju root.

ssh root@server.hostname

2. Izpildiet komandrindu, lai meklētu failā “sshd_config”, ja “ClientAliveInterval” ir aktīvs un kāds laika periods ir iestatīts.

sudo grep "ClientAliveInterval" /etc/ssh/sshd_config

Mūsu scenārijā "ClientAliveInterval" ir atspējots, un laika intervāla vērtība ir nulle.

[root@buffy ~]# sudo grep "ClientAliveInterval" /etc/ssh/sshd_config
#ClientAliveInterval 0
[root@buffy ~]# 

Hashtag "#"Novietots priekšā līnijai to atceļ. Viņa ir neaktīva.

3. Mēs atveram ar redaktoru "nano"Vai"vim"File"sshd_config“. Es dodu priekšroku "nano".

sudo nano /etc/ssh/sshd_config

4. Dzēst “#"Rindas priekšā"ClientAliveInterval”Un iestatiet sekunžu skaitu: 60, 120…

ClientAliveInterval 120
ClientAliveCountMax 10

5. Saglabājiet izmaiņas un restartMan ir pakalpojums "sshd".

sudo systemctl restart sshd

ClientAliveInterval : Tas ir laika intervāls sekundēs, kad serveris klientam / lietojumprogrammai, caur kuru mēs esam izveidojuši savienojumu ar serveri, nosūta nulles datu paketi. Šī prakse uzturēs savienojumu dzīvu / aktīvu.

ClientAliveCountMax : Nereaģē SSH klienti 10 ciklos pa 120 sekundēm (iestatījis “ClientAliveInterval”) savienojums tiks pārtraukts. Tas ir, pēc 20 minūtēm, kad SSH klients neatbildēja uz servera nosūtītajām nulles paketēm.

Ar šīm izmaiņām SSH savienojums būs stabilāks un paliks tikpat drošs.

Aizraujos ar tehnoloģijām, man patīk testēt un rakstīt pamācības par operētājsistēmām macOS, Linux, Windows, par WordPress, WooCommerce un LEMP tīmekļa servera konfigurāciju (Linux, NGINX, MySQL un PHP). Es rakstu tālāk StealthSettings.com kopš 2006. gada, un dažus gadus vēlāk es sāku rakstīt vietnē iHowTo.Tips apmācības un ziņas par ierīcēm ekosistēmā Apple: iPhone, iPad, Apple Skatīties, HomePod, iMac, MacBook, AirPods un piederumi.

Leave a Comment