Il-kill switch jidħol: x’jiġri mis-sessjonijiet TCP miftuħa?
Pakett imblukkat mhijiex konnessjoni magħluqa. Iddeċiedi jekk sessjoni għandhiex tgħaddi mill-vojt, imbagħad ipprova l-imblokk u l-irkupru bħala żewġ proprjetajiet separati.
It-tunnel jaqa’, il-kill switch jidħol, u download li kien tliet kwarti mitmum jew jiffriża jew jonqos mill-ewwel. Dawn iż-żewġ riżultati ġejjin minn għażliet ta’ infurzar differenti, mhux minn livelli ta’ protezzjoni differenti. Pakett mitfugħ iħalli l-konnessjoni tistenna, filwaqt li pakett miċħud jagħlaqha u javża lill-applikazzjoni. Li tiddeċiedi liema mġiba trid hija kwistjoni ta’ disinn, u li ttestjaha hija eżerċizzju separat.
Mitfugħa, miċħuda u reset huma differenti
Regola tal-firewall li titfa’ t-traffiku tarmi l-pakett u ma tibgħat xejn lura, għalhekk min jibgħat ikompli jerġa’ jibgħat skont it-timers tiegħu. Regola li tiċħad b’ TCP reset tagħlaq il-konnessjoni mill-ewwel u l-applikazzjoni tara żball. Ħafna kill switches jitfgħu, għax ċaħda tikxef il-politika u għax it-tifi jixbah l-imġiba ta’ netwerk mejjet.
L-imblukkar mhuwiex l-istess bħall-għeluq tas-socket. L-applikazzjoni għadha żżomm deskrittur fi stat stabbilit, u huma biss il-paketti li huma neqsin. Huwa għalhekk li paġna tista’ toqgħod fuq spinner għal minuti filwaqt li s-sistema operattiva tinsisti li l-konnessjoni teżisti. Aqra l-infurzar iddokumentat minflok ma tisletu mill-messaġġ tal-applikazzjoni, peress li ż-żewġ imġiet jidhru bħal netwerk li waqa’.
X’tagħmel l-applikazzjoni waqt li ddum il-vojt
TCP terġa’ tibgħat b’dewmien dejjem akbar, u l-baġit ta’ retry default ta’ Linux jiskadi madwar kwart ta’ siegħa, mhux f’sekondi. Sa dakinhar is-socket la hija miftuħa b’mod utli u lanqas magħluqa. Applikazzjonijiet bil-keepalives tagħhom jew timeoutijiet tat-talbiet spiss jaqtgħu qalbhom qabel, u għalhekk żewġ programmi fuq l-istess magna jġibu ruħhom b’mod differenti waqt waqfa waħda.
Meta t-tunnel jerġa’ lura, is-socket lokali mhijiex mibdula imma t-triq forsi. Indirizz sors pubbliku ġdid jipproduċi quadrupla differenti fis-server, għalhekk firewall stateful fuq in-naħa l-oħra m’għadux jaqbel mas-sessjoni. Il-konnessjoni hija mejta għalkemm il-klijent qatt ma ra żball.
Iddeċiedi jekk l-irkupru huwiex meħtieġ
Agħżel bejn żewġ kuntratti. Jew is-sessjoni trid tgħaddi minn vojt qasir, li jeħtieġ indirizzar stabbli u server li jżomm l-istat tiegħu, jew l-applikazzjoni trid terġa’ tikkonnettja b’mod nadif, li jeħtieġ loġika ta’ retry li hija sigura li tiġi ripetuta. Kwalunkwe ħaġa bejniethom tagħti l-agħar riżultat: klijent li jerġa’ jibgħat dak li s-server diġà rreġistra, jew wieħed li jirrapporta suċċess għal sessjoni li ħadd ma jista’ jara.
L-indirizzar stabbli huwa l-parti li n-nies jinsa, għax rikonnessjoni li tinżel fuq indirizz pubbliku differenti tinvalida l-istat tan-naħa tas-server anki meta s-socket tal-klijent tidher b’saħħitha. Ikteb liema mill-żewġ kuntratti japplika għal kull applikazzjoni, għax rari jaqblu kollha.
Iċċekkja l-imblokk u l-irkupru separatament
Ittratta l-protezzjoni mit-tnixxija u s-sopravivenza tas-sessjoni bħala żewġ proprjetajiet, għax li tgħaddi waħda ma tgħid xejn dwar l-oħra. Sessjoni li tibqa’ ħajja mhijiex prova li t-traffiku dirett ġie imblukkat, u sessjoni li tmut mhijiex prova li kull rotta diretta ġiet imblukkata.
ss -tnp state established '( dport = :443 )'
sudo conntrack -L -p tcp --dport 443
sudo tcpdump -ni any 'tcp port 443 and tcp[tcpflags] & tcp-syn != 0'
Uża operazzjoni tat-test li ma tagħmilx ħsara meta tosserva l-irkupru, sabiex sottomissjoni dduplikata ma ssirx l-inċident. Irreġistra l-mod ta’ falliment li rajtu tassew: x’wera l-applikazzjoni, jekk is-socket baqgħetx ħajja, u meta rkuprat waħedha.
Ikteb l-imġiba mistennija ħdejn ir-regola tal-infurzar u agħtiha data. Il-persuna li jmiss li tbiddel dik ir-regola trid tkun taf liema mill-żewġ kuntratti weġgħet l-iskjerament.