SSH saioa bizirik mantentzeko aholku gehienak «gehitu ServerAliveInterval 30» esatean gelditzen dira eta zati erabilgarriak kanpoan uzten dituzte. Gako-hitza bezeroaren aldeko tenporizadore bat da, kanala isilik egon denean soilik pizten dena, erantzunik gabeko probak zenbatzen dituena segundoen ordez, eta balio bat datozen horietan lehena irabazten duen fitxategi batean bizi dena. Hiru propietate horietan huts egiten baduzu, VPN saio osasuntsu bat ere eroriko da, eta hildako bat zintzilik geratuko da.

Bi norabideak deabru desberdinei dagozkie

ServerAliveInterval zure ssh bezeroak irakurtzen du. ClientAliveInterval urruneko aldeko sshd-k irakurtzen du eta kontrako noranzkoan probatzen du, zerbitzaritik bezerora. Ez dira aliasak eta ez dute elkarrekin lan egiten, beraz bat ezartzeak ez du beste muturreko jokabidean eraginik. Haiek nahastea da konponketa batek ostalari batean funtzionatzen duela eta hurrengoan ez duela ematen duen arrazoi ohikoa.

Biek zero onartzen dute. Zerorekin bezeroak ez du ezer ere bidaltzen, eta zerbitzariaren aldean zero den ClientAliveCountMax batek erantzunik gabeko egiaztapenen ondoren etorriko litzatekeen deskonexioa desgaitzen du.

Zer frogatzen duen probak, eta zer ez

Konfiguratutako tartea zerbitzaritik daturik heldu gabe igaro ondoren, bezeroak eskaera txiki bat bidaltzen du lehendik dagoen kanal zifratutik eta erantzunaren zain geratzen da. ServerAliveCountMax-ek zehazten du horietatik zenbat gera daitezkeen erantzunik gabe saioa amaitzean. 60 tartearekin eta 3 zenbaketarekin bezeroak hiru minutu inguruko isiltasunaren ondoren uzten dio, eta zenbaki hori zure konfigurazioaren propietatea da, ez sare-estandar bat. Utzi tartea bere 0 balio lehenetsian eta probarik ez da inoiz bidaliko, horregatik bezero arrunt bat konexio hil batean mugagabe egon daiteke.

Trukea SSH garraioaren barruan gertatzen denez, erantzun batek frogatzen du beste muturreko SSH prozesua oraindik irakurtzen eta idazten ari dela. Ez du ezer esaten saio hartan abiarazi duzun programari buruz: datu-base bezero bat, birzuzendutako ataka bat edo iraupen luzeko script bat blokeatuta egon daitezke garraioak pozik probak erantzuten dituen bitartean.

TCPKeepAlive geruza bat beherago dagoen mekanismo bereizia da. Nukleoak kudeatzen du, ez dago zifratuta, eta SSH deabrua blokeatuta duen beste muturrek bete dezake oraindik. Horregatik SSH mailako proba da seinalerik esanguratsuena saioari erreparatzen badiozu, socketari baino.

Ordenak erabakitzen du zein baliok bizirauten duen

OpenSSH-k parametro bakoitzerako lortzen duen lehen balioa aplikatzen du, beraz Host bloke zehatz bat edozein bloke zabalago baino lehen agertu behar da, zabalago hori ere bat etorriko litzatekeen arren. Jarri komodin bidezko balio lehenetsiak fitxategiaren behealdean, ez goialdean, eta gogoratu beherago dagoen Match bloke batek ezin duela jada ezarritako balio bat gainidatzi. OpenSSH bezeroaren konfigurazioaren erreferentzia lehen balioaren araua zuzenean adierazten du, eta behin irakurtzea merezi du partekatutako konfigurazio bat berrantolatu aurretik.

Komando-lerroko aukerak fitxategiaren gainetik daude, eta horrek esperimentu bat merkea egiten du:

ssh -o ServerAliveInterval=15 -o ServerAliveCountMax=4 office-shell

Bezeroak benetan zer konpondu duen ikusteko, idatzi duzula uste duzunaren ordez, eskatu hari konfigurazio eraginkorra bota dezan. Irteerak ostalari-izen horren balio bateratuak ditu eta aurretiazko bloke galdu bat harrapatzeko biderik azkarrena da:

ssh -G office-shell | grep -i alive

Zer egiten dute keepalive-ek tunel baten gainean

Trafiko aldizkakoak NAT edo suebaki egoeradun baten mapaketa iraungitzea eragozten du, eta hori benetako onura da atezainak fluxu inaktiboak minutu batzuen buruan botatzen dituen VPN batean. 60 segundoan behin iristen diren probeek mapaketa hori freskatzen dute aplikazio-daturik eraman gabe.

Ez dute desagertu den bide bat berreraiki. Tunelaren interfazea desagertzen denean probeek beste guztiak bezala huts egiten dute, eta saioa amaitzen da zenbaketa agortzean. Bizitasunaren detekzioa eta bidearen berreskurapena arazo desberdinak dira, eta lehenengoa soilik da konfigura daitekeena ssh_config-en. Tarteak eta zenbaketak benetan erosten dutena bezeroak noiz nabarituko duen da, eta hori da erabiltzaileak blokeo gisa bizi duena.

Konexio multiplexatuek tolestura bat gehitzen dute. ControlMaster jokoan dagoenean probeak maisu-konexioarenak dira, eta lehendik dagoen maisu baten gaineko saio berriak maisu hark negoziatutakoa heredatzen du. Mux maisua blokeatuta badago, beste leiho bat irekitzeak ez du bidea berriro probatuko.

Konfigurazioa muturretik muturrera baieztatzea

Zerbitzaritik, bota deabruaren konfigurazio eraginkorra, fitxategia irakurri eta zein include izan den irabazle asmatu beharrean:

sshd -T | grep -i clientalive

Gero begiratu saio erreal bat arazketa-irteera gaituta. Bezeroak denbora-muga lerro bat inprimatzen du zenbaketa agortzean, eta haren inguruko denbora-markek erakusten dute isiltasuna etengabea izan zen edo probeak inoiz ez ziren bidali. Proba-trafikorik gabe hiltzen den saioak gako-hitza inoiz bat etorri ez zen bloke batean izan ohi du.

Bi egiaztapen gehitzea merezi du tunel batetik soilik iristen zaren ostalari ororentzat: egiaztatu konpondako tartea nahi zenuena dela, eta egiaztatu tarte hori zenbaketaz biderkatuta VPN atezainaren inaktibitate-denboraldia baino laburragoa dela. Bigarren zenbakia handiagoa denean, atezainak isilpean botatzen du fluxua lehenengo eta SSH probak ez du inoiz ezer jakinarazteko aukerarik.

Erlazionatutako artikuluak