Unamaliza ombi la MFA, handaki inapanda, na kufunga terminali huondoa muunganisho pamoja nayo. Hii ni tatizo la usimamizi, si la uthibitishaji, na OpenConnect tayari ina swichi inayolitatua. Suluhisho ni kumruhusu mteja kujitenga kwenda nyuma baada ya kuanza kumalizika, wakati sehemu ya mwingiliano imekwisha kweli. Ifuatayo ni mfululizo wa vichunguzi: vifanye kwa mpangilio na usimame kwenye kile cha kwanza kisichotumika kwa lango lako.

Thibitisha kile lango linahitaji wakati wa kuingia

Kabla ya kuandika amri, andika njia ya vitambulisho ambayo usambazaji unalazimisha. Cheti pekee, nenosiri pamoja na tokeni, na mzunguko wa kivinjari kupitia mtoa huduma wa SAML hufanya tofauti, na hali ya nyuma haiwezi kuruka yoyote. Chaguo hubadilisha kinachotokea baada ya kuanza, kamwe si kinachotokea wakati wake.

Njia ya kushawishi ni kuendesha ombi kiotomatiki. Kifuniko kinachoandika jibu lisilobadilika kinapotambua ombi la nenosiri huvunjika wakati lango linapoomba msimbo wa mara moja, na huacha kitambulisho katika faili ambayo akaunti nyingine zinaweza kusoma. Ikiwa mtu anapaswa kuidhinisha kikao, mweke mtu huyo katika mchakato.

Endesha kikao cha kwanza mbele na usome matokeo

Ungana mara moja kawaida na uache makubaliano yote yachapishwe. Andika itifaki inayotumika, njia ya cheti au tokeni, anwani ya handaki anayotoa seva, na kila onyo kabla ya kukubali muunganisho. Nakala hiyo ni msingi wako na njia pekee ya bei nafuu ya kutofautisha baadaye tatizo la mteja na mabadiliko ya lango. Iihifadhi nje ya bafa ya terminali.

Kisha rudia wito huo huo ukiwa na hali ya nyuma na faili ya PID iliyoongezwa, kwa mfano openconnect --background --pid-file /run/openconnect.pid vpn.example.net, ukibakiza itifaki na chaguo za uthibitishaji ambazo lango lako linahitaji kwenye mstari huo. Mwongozo wa OpenConnect unaelezea chaguo hili kama kuendelea nyuma baada ya kuanza kukamilika, na ndiyo sababu awamu ya mwingiliano lazima ikamilike kwanza.

Fanya mchakato unaoendesha upatikane na usimamishwe

Faili ya PID ni ushahidi tu wakati inalingana na mchakato hai. Iweke katika folda inayomilikiwa na akaunti ya huduma, na linganisha nambari iliyorekodiwa na jedwali la michakato kabla ya kutuma ishara yoyote. Kuanza upya na kuanguka huacha faili, na faili ya zamani ndiyo sababu ya kawaida ya script ya kusimamisha kuripoti mafanikio wakati handaki bado iko juu. Chukulia ukaguzi kama sehemu ya utaratibu wa kusimamisha, si hatua ya hiari.

Tuma ishara kwa PID iliyothibitishwa, kisha thibitisha kwamba kiolesura cha handaki kimetoweka kweli badala ya kuamini hali ya kutoka. Ikiwa mteja anahitaji upendeleo wa juu ili kusanidi kiolesura, ishara lazima itoke kwa akaunti inayoruhusiwa kuituma.

Usirundike hali ya nyuma chini ya msimamizi

systemd na wasimamizi kama hao wanatarajia kumiliki mchakato waliouanzisha, ndiyo sababu mteja anayejitenga huwachanganya. Msimamizi huona kianzishi kikitoka wakati muunganisho halisi unaendelea kuishi, kwa hiyo mantiki ya kuanza upya, kuripoti hali na muda wa kusimamisha huelezea kitu ambacho si kweli tena. Andika kitengo katika mpangilio wa mbele unaotumika na uache msimamizi afanye kazi ya daemon.

Tenga --background kwa vikao ambavyo mtu huanza kisha huondoka. Ikiwa hitaji ni handaki inayokuwepo kabla ya mtu yeyote kuingia, sehemu inayokosekana ni utambulisho usio wa mwingiliano ulioidhinishwa pamoja na mpango wa kuuongeza, na hakuna bendera ya mstari wa amri inayotoa mojawapo. Kuongeza bendera kwenye script ya kuwasha hutoa handaki inayoshindwa kimya kwenye kitambulisho cha kwanza kilichoisha muda.

Chukulia kidakuzi cha kikao kama kitambulisho

OpenConnect inaandika awamu tofauti ya uthibitishaji kupitia --authenticate, na nyenzo zinazotokana zinaweza kurudishwa kwa --cookie-on-stdin. Jozi hiyo ipo kwa kazi ya ujumuishaji, na inachozalisha ni nyeti kama nenosiri lililoiunda.

Wehe thamani nje ya historia ya shell, nje ya kumbukumbu na nje ya tiketi yoyote unayofungua. Script ya kupeana lazima pia ihifadhi taarifa za mwisho zilizothibitishwa ambazo mteja alipokea pamoja na kidakuzi; ukizipoteza, uendeshaji wa baadaye unaweza kuunganishwa na mwenyeji ambao hukuwahi kuuthibitisha, jambo ambalo ni baya kuliko muunganisho unaoshindwa tu.

Pitia orodha kabla ya kufunga terminali

Mambo manne yanapaswa kuwa kweli: kuingia kwa mwingiliano kulikamilika mbele, faili ya PID inaelekeza kwenye mchakato uliouthibitisha, suala la msimamizi limetatuliwa upande mmoja, na kidakuzi kina mpango wa kuhifadhi ambao si faili la maandishi ya kawaida. Yote manne yanaposhikilia, kuondoka kwenye terminali ni salama na handaki inaendelea.

Ikiwa moja ikishindwa, rekebisha kipengele hicho kabla ya kugusa vingine, kwa sababu ukaguzi uliobaki hauwezi kuifidia. Hifadhi pia nakala ya mbele ya uendeshaji wa kwanza: wakati ujao handaki itakapoanguka bila onyo, msingi huo ndio unaotenganisha mabadiliko ya upande wa lango na ya upande wa mteja.

Makala zinazohusiana