L-ewwel sessjoni tirbaħ: it-trażżin tad-dħul ta' OpenVPN qabel it-tkeċċija
Li tirrifjuta dħul aktar tard mhuwiex l-istess bħal tibdel il-qadim. Id-deċiżjoni trid tittieħed qabel it-tkeċċija tal-istess isem, u l-verifika tas-slot trid tkun atomika.
Politika li tippermetti sessjoni waħda għal kull kont tidher deċiża sakemm jasal it-tieni dħul. Żewġ eżiti huma possibbli: il-ġdid jieħu post is-sessjoni li qed taħdem, jew is-sessjoni li qed taħdem iżżomm is-slot u l-ġdid jiġi rrifjutat. It-tieni biss hija politika li fiha l-ewwel sessjoni tirbaħ. L-għażla tal-klijent li għaliha jirrikorru ħafna nies tixgħel il-konkorrenza u għalhekk ma tagħmilx dan.
Żewġ kuntratti jinħbew wara setting wieħed
Bil-konkorrenza mitfija, it-tieni konnessjoni li tippreżenta l-istess isem taċ-ċertifikat tista' tkeċċi s-sessjoni li diġà qed taħdem. It-tixgħil tal-konkorrenza jippermetti diversi sessjonijiet f'daqqa, li huwa l-oppost ta' limitu. L-ebda waħda miż-żewġ stati mhija politika ta' rifjut, għalhekk id-deċiżjoni trid tittieħed x'imkien ieħor għal kollox.
Ikteb il-kuntratt qabel timplementa xejn: min jiġi rrifjutat, liema prova tidentifika s-sessjoni li qed taħdem, u x'jiġri meta sessjoni tmut mingħajr skonnessjoni nadifa. Politika li ħadd ma fassalha b'dan il-kliem ma tistax tiġi ttestjata aktar tard.
It-tkeċċija sseħħ qabel il-hook tal-konnessjoni tiegħek
Fil-mogħdija tal-kodiċi tas-server 2.6, it-tħejjija bikrija għal klijent ġdid tneħħi l-istanzi eżistenti bl-istess isem meta l-konkorrenza tkun mitfija. Dik it-tneħħija sseħħ qabel ma titħaddem il-katina tal-handlers tal-konnessjoni. Għalhekk skript li jinnota d-duplikat u jrodd falliment jirrifjuta lill-ġdid wara li s-sessjoni li qed taħdem tkun diġà ntefgħet barra - eżattament l-eżitu li l-politika kellha tipprevjeni. L-ordni tal-callbacks fl-implimentazzjoni upstream hija l-unika tweġiba affidabbli għall-bini tiegħek.
| Stage | Who can still refuse | Effect on the incumbent |
|---|---|---|
| Certificate check | Server trust configuration | None |
| Authentication decision | The authentication controller | None, because establishment has not run |
| Connect handler | A profile script | Already evicted in the same-name case |
| Post-establishment | Status tooling, monitoring | Both sessions already exist or one is gone |
L-istħarriġ tal-fajl tal-istat mhuwiex bieb ukoll. Żewġ tentattivi li jaslu flimkien jistgħu t-tnejn jaraw slot vojt qabel ma wieħed jikkonfermah, u t-tnejn jipproċedu.
Mexxi d-deċiżjoni fl-awtentikazzjoni
L-interfaċċa tal-ġestjoni tista' tieħu d-deċiżjoni tal-awtentikazzjoni wara l-verifika taċ-ċertifikat. F'dak l-arranġament il-kontrollur mhuwiex monitor: jirċievi kull istanza tal-klijent li tikkonnettja u jwieġeb jekk dik l-istanza tistax tipproċedi. Peress li t-tweġiba tasal qabel it-twaqqif, rifjut iħalli s-sessjoni li qed taħdem bla mittiefsa. L-istess kanal jirrapporta l-iskonnessjonijiet, u hekk il-kontrollur jitgħallem li slot ġie rilaxxat b'mod leġittimu.
Kull istanza ġdida trid tgħaddi minn dak il-bieb, inklużi r-rikonnessjonijiet u kwalunkwe mogħdija li terġa' tawtentika mingħajr talba. Bieb li xi istanzi qatt ma jaslu għalih ma jipproteġi xejn, u l-ommissjoni tibqa' inviżibbli sakemm xi ħadd jipprova l-bypass.
It-tokens jistgħu jgħaddu ħdejn il-bieb
Ladarba token jinħareġ, is-server jista' jivvalidah internament u jaqbeż l-awtentikazzjoni esterna għal dik il-konnessjoni. Is-sejħa tal-ġestjoni qatt ma sseħħ, għalhekk verifika tas-slot implimentata biss hemm ma tara qatt l-istanza l-ġdida. Dan l-imġiba hija kumdità għall-utenti u toqba fi politika tal-konkorrenza. Ġġiegħel il-konnessjonijiet awtentikati bit-token jgħaddu minn verifika awtorevoli ekwivalenti, jew itfi l-mogħdija tat-token meta l-politika titlob deċiżjoni fuq kull konnessjoni.
Tikkumpensax billi taċċetta kull token mingħajr kundizzjoni. Token skadut jew invalidu xorta jrid jonqos, u jrid jonqos mill-istess punt ta' deċiżjoni bħal kull ħaġa oħra.
Orbot ir-riżerva ma' istanza, mhux ma' indirizz
Indirizz hija identità dgħajfa: rikonnessjoni mill-istess laptop tista' tasal minn indirizz ieħor, u kredenzjali kkupjata tista' tasal mill-istess indirizz. Orbot ir-riżerva mal-istanza tal-klijent li jassenja s-server, sabiex awtentikazzjoni mill-ġdid tal-istanza li diġà ntlaqgħet tiġi rikonoxxuta bħala s-sid. Identifikatur ġdid tal-istanza jrid jakkwista s-slot tiegħu permezz tad-deċiżjoni l-ewwel jirbaħ, anki meta jippreżenta l-istess token.
Irrilaxxa biss ir-riżerva li tappartjeni għat-tentattiv fallut. Avveniment ta' skonnessjoni ittardjat minn tentattiv eqdem m'għandux iħassar is-slot ta' sid aktar ġdid, u għalhekk ir-rilaxx isemmi l-istanza u mhux il-kont. Wara li jerġa' jibda l-kontrollur, irrikonċilja s-sessjonijiet ħajjin qabel ma tilqa' lil ħadd, u applika l-istess regola fuq kull gateway li sservi l-kont.
Iddeċiedi separatament kif slot verament skadut jiġi rkuprat. Amministratur jeħtieġ mod dokumentat biex inaddfu, u dik il-mogħdija m'għandhiex tkun aċċessibbli għal utent li sempliċement jikklikkja erġa' qabbad.
Ittestja l-pari li jimpurtaw: żewġ dħul kważi simultanji, rikonnessjoni wara qtugħ nadif, awtentikazzjoni mill-ġdid tas-sessjoni li qed taħdem, ġdid rrifjutat u t-tnedija mill-ġdid tal-kontrollur. F'kull każ is-sessjoni li qed taħdem trid tibqa' użabbli u l-ġdid irid jiġi rrifjutat mingħajr ħsara kollaterali għal kontijiet oħra.