Kwa nini OpenConnect inakataa lango baada ya kubadilisha cheti?
Kushindwa kwa uthibitishaji baada ya kubadilisha cheti cha lango ni uamuzi wa uaminifu, si handaki iliyovunjika. Chagua kati ya CA inayotoa na kubandika ufunguo mmoja.
Malango hubadilisha vyeti, na mteja aliyekuwa ameunganishwa jana huanza kusimama kwenye mabadilishano ya kwanza ya TLS. Ujumbe unataja sababu ya uthibitishaji badala ya hitilafu ya mtandao, na mashine yenyewe haijabadilika, hiyo ndiyo kidokezo cha manufaa. Kilichovunjika ni uhusiano kati ya cheti kinachowasilishwa sasa na mizizi ambayo mteja yuko tayari kuzingatia. Kurekebisha hilo ni uamuzi wa uaminifu, kwa hivyo fanya uamuzi huo kabla ya kuandika chaguo.
Soma kushindwa kabla ya kubadilisha mpangilio wowote wa uaminifu
Hitilafu ya aina ya mtia sahihi aliyekosekana inamaanisha mnyororo unaishia kwenye kitu ambacho mteja hakikubali. Inaweza kuwa cheti kilichohuishwa kutoka mamlaka ya ndani, badala kutoka ya umma, au kifaa kilichopo katikati kinachowasilisha cheti chake. Maneno pekee hayawezi kutofautisha hali hizo, kwa hivyo angalia mtoaji kabla ya kuamua.
Endesha muunganisho mara moja mbele na uuache ushindwe, kwa sababu matokeo ya mwingiliano hubeba jina la seva, mnyororo wa mtoaji na alama ya vidole aliyoihesabu mteja. Linganisha mtoaji huyo na mamlaka ambayo shirika lako linaiendesha kweli. Ikiwa alama ya vidole ilibadilika lakini mtoaji hakubadilika, ichukulie kuwa ya kutiliwa shaka hadi uhuishaji uthibitishwe kupitia njia unayoiamini tayari. Kukisia wakati huu ndiyo njia ambayo mtu huishia kubandika ufunguo wa mdukuzi.
Andika toleo la mteja kwenye noti hiyo hiyo. Sehemu kubwa ya kushindwa kunakoonekana kama matatizo ya uaminifu hutoka kwa mteja wa zamani anayekutana na mabadilishano mapya ya lango.
Chagua kati ya kuamini mtoaji na kubandika ufunguo mmoja
Chaguo zote mbili hufanya muunganisho ufanikiwe. Zinavunjika baadaye kwa njia pinzani, kwa hivyo chaguo ni la kushindwa unachoweza kuvumilia.
| Approach | Good fit | What breaks it |
|---|---|---|
Trust the issuing CA with --cafile | Internal PKI you can obtain over an already trusted channel | CA rotation, or a client that still falls back to public roots |
Pin one key with --servercert | No CA relationship, or exactly one key should ever be accepted | Any reissue that generates a new key pair |
Nenda kwenye faili ya CA cheti kinapotoka kwa mamlaka unayoweza kuithibitisha kwa kujitegemea, kwa sababu uhuishaji huendelea kufanya kazi bila kugusa hoja za mteja. Iunganishe na swichi inayozima mizizi ya mfumo, vinginevyo mamlaka ya umma inaweza kutimiza ukaguzi kwa niaba yako. Badala yake bandika wakati lango halina CA unayoweza kupata au wakati lengo ni ubaguzi mwembamba zaidi unaowezekana. Hakuna njia iliyo salama zaidi kwa njia isiyo ya moja kwa moja: CA hukua kwa uhuishaji, kubandika ni rahisi kukagua.
Chochote unachochagua, thamani inayoaminika lazima ifike kupitia njia iliyoaminika kabla ya mabadiliko kutokea. Msimamizi, kikao cha konsoli kwenye lango, au nakala iliyochukuliwa mapema zote zinatosheleza. Kunakili alama yoyote ya vidole inayoonyeshwa na kidokezo ni rahisi na pia ndiyo hasa mdukuzi anatarajia.
Weka thamani kwenye amri unayoiendesha kweli
Kubandika husafiri katika chaguo la cheti cha seva, na kiambishi chake huamua usimbaji: muhtasari wa ufunguo wa umma wa heksadesimali chini ya sha1 au sha256, na kubandika ufunguo wa base64 chini ya pin-sha256. Kuipatia pia huzima uaminifu wa mfumo kwa uendeshaji huo, kwa hivyo ufunguo uliobandikwa unakuwa uamuzi wote.
sudo openconnect --protocol=gp vpn.example.com --user alice \
--servercert pin-sha256:AbCdEf... # single key pin
sudo openconnect vpn.example.com --cafile /etc/ssl/internal-ca.pem --no-system-trust
Mteja hulinganisha muhtasari uliokatwa, akikubali herufi nne tu baada ya kiambishi, jambo ambalo ni mtego si urahisi. Thamani iliyofupishwa hupita kienyeji na bado haitambui lango ulilokusudia. Nakili mfuatano kamili ambao mteja uliuchapisha katika jaribio la kwanza badala ya kuuandika tena kutoka ujumbe. Kisha hamisha chaguo lililokamilika kwenye skripti ya kufunika, faili ya kitengo au profaili inayoanzisha muunganisho, ili uamuzi wa uaminifu uweze kukaguliwa na hariri za baadaye ziwe za kukusudia.
Vianzilishi vya dawati na programu-jalizi ya NetworkManager huhifadhi nakala yao wenyewe ya hoja za muunganisho. Skripti iliyohaririwa kwenye diski haifikii profaili iliyoingizwa mapema, kwa hivyo thamani iliyohifadhiwa huendelea kushinda.
Shughulikia mzunguko bila kujifungia nje
Chaguo linaweza kutolewa zaidi ya mara moja, kwa hivyo mabadiliko yaliyopangwa yanaweza kupokea ufunguo unaotoka na unaoingia pamoja. Ongeza kubandika mpya kabla lango halijabadilika, weka zote mbili kwenye orodha wakati vikao vinahamia, na uondoe lililostaafu mara ufunguo wa zamani unapotoweka. Dirisha hilo linahitaji mmiliki, kwa sababu kubandika mara mbili kuliyeosahaulika huacha ufunguo ukiaminika bila mtu kuuangalia. Ujenzi upya unaozalisha jozi mpya ya funguo huvunja kubandika safi, na urejeshaji ni utaratibu huo huo kwa upande mwingine.
Andika tarehe ya mabadiliko kando ya kubandika. Kubandika bila tarehe ya ukaguzi ni usumbufu wa baadaye unaobeba ujumbe wa hitilafu unaochanganya.
Ondoa toleo la mteja kabla ya kuhariri uaminifu
Mteja wa zamani anaweza kushindwa wakati akichanganua jibu la uthibitishaji ambalo lango limebadilisha tangu wakati huo, na ujumbe wa juu bado unazungumzia muunganisho badala ya kichanganuzi. Linganisha toleo lililosakinishwa na kile lango linaloandika, na jaribu kifurushi cha sasa katika profaili ya matumizi ya mara moja kabla ya kubadilisha mpangilio wowote wa uaminifu.
openconnect --version
Baada ya ukarabati, thibitisha mambo mawili badala ya moja: lango la wavuti hupakia kupitia handaki, na anwani ya kawaida ya ndani hujibu. Mkono uliokamilika unathibitisha tu kwamba uamuzi wa uaminifu ulikubaliwa.