Voorkom time-out van SSH-verbinding / pijpbreuk

Hoe u kunt voorkomen dat een SSH-sessie de verbinding met een server verbreekt. Verbinding onderbroken of leiding gebroken

Zowel als gebruiker van Windows evenals door Mac (in de afgelopen 10 jaar) heb ik veel tijd doorgebracht in SSH-verbindingen naar webservers, e-mailservers, cloud- en andere back-uppakketten. De distributie van Linux is ongetwijfeld CentOS.

Een van de meest stressvolle dingen voor serverbeheerders is om SSH-verbindingen te onderbreken. Ofwel plotseling tijdens het knopen in Putty of Terminal (meestal een probleem met de lokale verbinding), of na een tijdje "stationair”- de periode waarin het geen interactie heeft met de externe server via de SSH-sessie.

Als u gebruik maakt van de Mac en gebruik de Terminal-tool voor externe verbinding via SSH, dan is de verbinding zeker na een periode van inactiviteit verbroken met het bericht: "client_loop: send disconnect: Broken pipe Broken”. Ik heb de oplossing gegeven het artikel hier, waarin ik zei dat het kan worden toegevoegd in "/etc/ssh/ssh_config" de lijn:

Host *
ServerAliveInterval 120

De bovenstaande oplossing is geldig voor gebruikers van Mac, en eerlijk gezegd om de laatste updates te zijn van macOS ik vind het niet erg restart wijzigingen aangebracht in het bestand "ssh_config", En het probleem met het verbreken van een inactieve sessie keert terug.

Een oplossing waarmee we het verbreken van een SSH-sessie op een door u ingestelde afstand kunnen voorkomen terminal (macOS) of stopverf (Windows), is als naast "ServerAliveInterval”Vanaf onze computer, om te bepalen welke server op afstand periodiek communiceert met de SSH-applicatie / client.
Daarom moeten we de richtlijn plaatsen "ClientAliveInterval"In"sshd_config”Op de server waarmee we verbinding maken.

Voorkom timing van SSH-verbinding / gebroken buis (ssh_config Tips)

1. We maken verbinding met de server die we willen activeren en stellen een tijdsinterval in voor "ClientAliveInternal". We openen SSH in Putty, Terminal of een ander soortgelijk hulpprogramma en we verifiëren bij de gebruiker root.

ssh [email protected]

2. Voer de opdrachtregel uit om het bestand "sshd_config" te doorzoeken als "ClientAliveInterval" actief is en welke tijdsperiode is ingesteld.

sudo grep "ClientAliveInterval" /etc/ssh/sshd_config

In ons scenario is "ClientAliveInterval" uitgeschakeld en is het tijdsinterval nul.

[[email protected] ~]# sudo grep "ClientAliveInterval" /etc/ssh/sshd_config
#ClientAliveInterval 0
[[email protected] ~]# 

De hashtag '#"Geplaatst voor een regel, annuleert het. Ze is inactief.

3. We openen met de editor "nano"Of"vim"Het dossier"sshd_config“. Ik geef de voorkeur aan "nano".

sudo nano /etc/ssh/sshd_config

4. Verwijderen “#"Voor de lijn"ClientAliveInterval"En stel een aantal seconden in: 60, 120 ...

ClientAliveInterval 120
ClientAliveCountMax 10

5. Sla de wijzigingen op en restartIk heb de service "sshd'.

sudo systemctl restart sshd

ClientAliveInterval : Het is het tijdsinterval in seconden dat de server een nuldatapakket naar de client / applicatie stuurt waarmee we met de server zijn verbonden. Deze oefening houdt de verbinding levend / actief.

ClientAliveCountMax : Niet-reagerende SSH-clients in 10 cycli van 120 seconden (ingesteld door "ClientAliveInterval") de verbinding wordt onderbroken. Dat wil zeggen, na 20 minuten waarin de SSH-client niet reageerde op nulpakketten die door de server werden verzonden.

Met deze wijzigingen wordt de SSH-verbinding stabieler en net zo veilig.

Laat een reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd *

Totaal (total)
0
Aandelen
Vorig artikel

Hoe kunnen we zien wat gebruikers zoeken op een WordPress-site of WooCommerce-webwinkel (zoekvakquery)

Volgende artikel

Hoort u het geluid van de "Lege Prullenbak" niet? [Hoe te repareren]