Matukio ya kijiti cha OpenVPN: kwa nini jina na muhuri wa muda si ufunguo
Kijiti cha kutenganisha kinaarifu muda wa kuunganisha, si muda wa kutenganisha. Kikiunganishwa na jina la mtumiaji kinaweza kufunga kikao kisicho sahihi; miliki utambulisho badala yake.
Rekodi ya kutenganisha huja baada ya muunganisho wa pili chini ya jina moja kuanza tayari, na kishughulikiaji kinachosasisha safu mpya zaidi ya mtumiaji huyo hufunga kikao kisicho sahihi. Hitilafu si ulinganisho wa mihuri ya muda. Hitilafu ni dhana kwamba jina pamoja na sekunde moja kamili hutambua kikao kimoja. Matukio ya kijiti hueleza miunganisho, na muunganisho unahitaji ufunguo ambao ni wake peke yake.
Anza na kile vigeu vya kutenganisha vinavyomaanisha kwa kweli. Hapo tu uchaguzi wa kitambulisho unakuwa na maana.
Kile kijiti cha kutenganisha kinachobeba kwa kweli
Katika Community OpenVPN 2.6, marejeo ya vijiti time_unix hukifafanua kama wakati ambapo mteja aliunganisha; huwekwa kabla kijiti cha kuunganisha hakijafanya kazi, na hakifafanuliwa upya wakati kijiti cha kutenganisha kinapowaka baadaye. time_duration hutoa urefu wa kikao hicho kwa sekunde, kwa hiyo mwisho ni takriban muda wa kuunganisha pamoja na muda. Zote mbili ni sekunde kamili, na hakuna hata moja iliyo wakati ambapo hifadhidata yako ilichakata tukio. Kutenganisha nyakati hizi tatu ndiko kunakofanya uwiano udumu, badala ya kuonekana sahihi tu wakati wa majaribio.
Hesabu hii inastahili kuandikwa, kwa sababu ni muda pekee wa mwisho ambao kijiti chenyewe kinatoa. Ucheleweshaji wa uchakataji na tofauti za saa kati ya wapangishi bado zinabaki nje yake.
Kwa nini jozi dhahiri si ya kipekee
Kuoanisha jina na muda wa kuunganisha hupunguza utafutaji na bado hakutambui kikao. Mteja anaweza kuunganisha tena ndani ya sekunde hiyo hiyo, kwa hiyo vikao viwili vinaweza kushiriki thamani zote mbili. Vipengele viwili vya daemon, au ubadilishaji wa seva unaohifadhi usanidi huo huo, vinaweza kuzalisha jozi hiyo kutoka kwa michakato tofauti. Anwani za handaki hurejeshwa kwa sababu hiyo hiyo, jambo linalozifanya kuwa sifa za kikao badala ya vitambulisho vyake.
Hali ya kushindwa ni kimya. Kutenganisha kwa kuchelewa kwa kikao cha kwanza kunalingana na safu mpya zaidi na kumaliza ugawaji ambao kikao cha pili bado kinatumia, kwa hiyo mtumiaji hupata upotevu wa ufikiaji wa nasibu ambao hakusababisha. Idadi ya safu inayoonekana sahihi baadaye hufanya tatizo kuwa gumu zaidi kuligundua.
Utambulisho thabiti unatoka wapi
Kiolesura cha usimamizi humpa kila mteja kitambulisho cha kipengele cha mteja, na kitambulisho hicho kimewekewa mipaka kwa kipengele cha daemon kilichokitoa. Ufunguo wa nje unaofanya kazi huchanganya kitambulisho thabiti cha seva, kipindi kinachobadilika daemon inapoanza, na ID hiyo ya mteja. Kipindi ni muhimu kwa sababu vitambulisho huanza upya pamoja na mchakato, na ID tupu ya mchakato inaweza kutumika tena baadaye na kitu kisichohusiana.
Vigeu vya mazingira vilivyowekwa ndani ya hati ya muunganisho ya mtoto havihamii hadi hati ya kutenganisha ya baadaye ya daemon mzazi, kwa sababu hati hizo huendeshwa kama michakato tofauti na mazingira yao wenyewe. Kwa hiyo kuzalisha UUID wakati wa kuunganisha ni nusu ya suluhisho. Upande wa kutenganisha lazima uweze kutaja UUID hiyo hiyo, kumaanisha kwamba utambulisho lazima uishi mahali ambapo matukio yote mawili yanaweza kufikia.
Fanya ustaafu uwe wa masharti na usiobadilika
Staafu kwa mmiliki wa kikao, si kwa mtumiaji. Kishughulikiaji kinachofuta ugawaji wowote ambao kwa sasa ni wa jina fulani hatimaye kitafuta ule usio sahihi, na ulinzi pekee ni kuhakikisha kwamba rekodi inayoondolewa ndiyo rekodi ambayo tukio hili linaieleza.
Kiolesura cha usimamizi hukubali mteja mmoja wa usimamizi aliyeunganishwa kwa wakati mmoja, kwa hiyo ungana na yule ambaye tayari anamiliki badala ya kuambatisha mwangalizi wa pili anayeshindana kwa soketi hiyo hiyo.
Shughulikia matukio yanayorudiwa bila kubadilisha matokeo mara mbili, na hifadhi matukio yasiyooanishwa kwa upatanisho badala ya kuyatupa. Mwitikio wa kutenganisha una masharti ya mzunguko wa maisha yaliyoandikwa na unaweza usifike kamwe baada ya ajali au kusimama kwa nguvu, kwa hiyo muundo unahitaji njia ya kuwakilisha kikao ambacho tukio lake la mwisho halipo.
Jaribu kesi zisizofaa kwa makusudi: miunganisho miwili ndani ya sekunde moja, vipengele viwili vya daemon, muunganisho ambao uchakataji wake ulishindwa, na kuanzisha upya daemon katikati ya kikao. Ufunguo unaostahimili zote nne ndio ufunguo unaostahili kuaminiwa.