Jinsi OpenVPN inavyotatua cheti na ufunguo: PEM ya ndani au njia
Agizo hilohilo hubeba ama njia ya faili au kitu cha PEM kilichopachikwa. Soma ni kipi kinachotumiwa na wasifu uliopakiwa kabla ya kuhamisha vyeti.
Ujumbe unasema kwamba OpenVPN haiwezi kupakia cheti cha ndani, ilhali jina la faili lililo katika kichwa chako linasema kinyume. Kile ambacho kichanganuzi kilipokea ni muhimu zaidi kuliko kile kilicho katika mfumo wa faili, kwa sababu agizo la cert hukubali aina mbili tofauti kabisa za thamani. Mojawapo ni njia ambayo huifungua; nyingine ni maandishi ya PEM yaliyofika ndani ya usanidi. Hadi ujue ni umbo gani mteja anayefanya kazi alilipokea, kila marekebisho ni dhana.
Mitindo miwili ya kuhifadhi, agizo moja
Maagizo ya cert, key na ca kila moja hukubali njia au kizuizi cha ndani. Thamani inapokuwa njia, OpenVPN hufungua faili hiyo na kusoma kitu kutoka diski. Usanidi unapokuwa na kizuizi kilichowekewa mipaka na lebo za cert, agizo hilohilo hutumia badala yake maudhui yaliyo kati ya lebo hizo, na hakuna faili tofauti inayohusika.
Mitindo yote miwili hatimaye hutoa aina moja ya kitu, ndiyo sababu usanidi unaofanya kazi unaweza kuhamia kati yao bila mabadiliko mengine yoyote. Wasifu unaobeba cheti cha mteja na ufunguo wa faragha vilivyopachikwa hauhitaji msaada wa nje, na kuinakili kwenye mashine nyingine hufanya kazi bila kunakili pia saraka ya vyeti.
Kinyume chake si kweli. Kuweka client.crt kando ya wasifu unaopachika data yake mwenyewe hakubadilishi chochote, kwa sababu hakuna kitu katika usanidi kinachorejelea faili hiyo. Hii ni sababu ya kawaida zaidi ya faili ambayo ipo wazi kuonekana kama inapuuzwa.
Jinsi kizuizi cha ndani kinavyokuwa kitu
Maudhui ya ndani hutolewa kutoka kwa usanidi na kupewa kichanganuzi cha PEM kama maandishi. Kichanganuzi hicho hutarajia mipaka ya kawaida: mstari wa BEGIN, mzigo wa base64 na mstari wa END unaolingana. Ikiwa kizuizi kilikatwa na nakala iliyoshindikana, kikafungwa katika HTML na ukurasa wa upakuaji, au kikafunguliwa katika kihariri kilichosawazisha dashi, kichanganuzi hushindwa kwenye maudhui yanayoonekana kuwa yapo.
<cert>
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
</cert>
Ndiyo sababu pia maneno ya hitilafu yanapotosha. Neno la ndani hufafanua mahali ambapo kipakiaji kiliangalia, si kile kilichokuta hapo. Faili iliyotajwa katika usanidi na kitu kilichopachikwa ndani yake vinaweza kutoa malalamiko yale yale wakati baiti za msingi hazitumiki.
Angalia ni umbo gani wasifu uliopakiwa unatumia kwa kweli, si faili gani kihariri chako kilifungua kwa bahati:
grep -nE '^(ca|cert|key) |^<(ca|cert|key)>' client.ovpn
Jinsi rejeleo la njia linavyotatuliwa
Thamani ya njia hufunguliwa kuhusiana na saraka ya kazi ya mteja, si saraka iliyo na usanidi. Chini ya systemd saraka hiyo ya kazi ni kile kinachowekwa na kitengo, na uendeshaji wa mwingiliano kutoka kwa shell yako hurithi kitu kingine kabisa. Ndiyo sababu faili hiyo hiyo ya usanidi inaweza kufanya kazi unapoijaribu kwa mkono na kushindwa kama huduma.
Njia zinazohusiana hurithi utata huo huo. Unapoona jina la faili tupu, uliza saraka ya sasa ya mchakato katika uzalishaji badala ya kudhani inalingana na terminal yako.
Kwa cheti kilichohifadhiwa kando, uchanganuzi wa nje ya mtandao huthibitisha kitu kabla ya kurekebisha chochote juu yake:
openssl x509 -in client.crt -noout -subject -issuer -dates
openssl pkey -in client.key -noout -check
Amri hizo zinathibitisha kwamba faili zinasomeka na ni halali kimuundo. Hazithibitishi kwamba mwenzake anaamini mtoaji, kwamba cheti bado kiko ndani ya kipindi chake cha uhalali, au kwamba ufunguo ni wake.
Hitilafu ya kichanganuzi inaweza na haiwezi kukuambia nini
Kushindwa kwa uchanganuzi hulenga tatizo kwenye ingizo moja na hatua moja. Hakuambii ni umbo gani kati ya mawili ya kuhifadhi mteja alitumia, na hakuambii ikiwa kitu kingekubaliwa. Hizo ni maswali tofauti na ushahidi tofauti.
Uchanganuzi ukifaulu, kushindwa kunakofuata ni kwa hatua ya baadaye. Kukataliwa kwa uaminifu, kutolingana kwa madhumuni au kutolingana kwa ufunguo huripotiwa na mwenzake au na tabaka la TLS, si na kipakiaji. Kubadilisha faili hiyo hiyo mara kwa mara hakutahamisha hitilafu hiyo.
Weka nusu nyeti nje ya ripoti za umma unapochunguza. Shiriki majina ya maagizo, maandishi ya hitilafu na muundo wa kizuizi, huku nyenzo za ufunguo na mzigo wowote wa utambuzi ukiondolewa. Mwongozo wa openvpn(8) unaandika mitindo yote miwili ya maagizo ya faili na tabia ya saraka ya kazi iliyo nyuma yao.