PKCS12, PEM ama DER: mida uu dhab ahaan u baahan yahay macmiilka VPN
Xidhnaantu waxay go'aamisaa in macmiilku aqoonsiga soo dejiyo, ma aha in la aamino. Isbarbardhig PKCS12, PEM iyo DER, kadibna xaqiiji.
Doodaha shahaadada waxaa ku wareegaya laba sheegasho. Ta koowaad waa in .p12 uu yahay doorashada adag oo .pem uu dabacsan yahay; ta labaadna waa in fayl qoraal ah uu ahaado mid ammaan ah in la diro sababtoo ah waad akhriyi kartaa. Midkoodna ma qaadan karo hal daqiiqo oo baaritaan ah.
PKCS12, PEM iyo DER waxay sharraxaan sida walxaha shahaadada loo xidho oo loo codeeyo. Ma go'aannaan cidda dhinaca kale tahay, haddii soo-saare lagu kalsoonaan karo, ama haddii faylku u baahan yahay furaha sirta.
Waxa macmiilku aqbalo waa su'aal ku saabsan is-waafajinta. Waxa faylku ku jiro waa su'aal ku saabsan aqoonsiga. Kala sooc labadaas, oo inta badan khaladaadka soo-dejinta waxay joojinayaan inay dahsoon noqdaan.
Saddex weel, hal qaab shay
Ka bilow waxa aad dhab ahaan haysato. Shahaadadu waa bayaan la saxeexay oo ku saabsan fure dadweyne. Furaha gaarka ah waa shay gaar ah oo caddaynaya inaad maamusho furahaas. Silsiladdu waa koox soo-saarayaal ah oo shahaadadaada ku xira xidid macmiilku aaminsan yahay. Saddexdaaba waxay jiraan iyada oo aan loo eegayn xidhnaanta.
Faylka PKCS12, badanaa .p12 ama .pfx, waa weel lagu qeexay RFC 7292 kaas oo qaadan kara fure gaar ah, hal ama in ka badan oo shahaadooyin ah iyo silsiladda hal block oo furaha sirta lagu ilaaliyay, oo leh magac-labo ah oo magacaaya aqoonsiga. Faylka PEM waa qaab-qoraal lagu qeexay RFC 7468: jir base64 ah oo u dhexeeya sadarrada BEGIN iyo END, oo hal fayl wuxuu qaadan karaa dhowr block oo isku xigta. DER waa codeynta laba-geesoodka ah ee isla qaababka ASN.1, jirka PEMna waa si dhab ah DER oo base64 lagu duubay.
Jumladda ugu dambeysa waa mid mudan in la xasuusto. PEM u beddelashada DER waxay dib u qoraa qaabka, ma aha waxa ku jira, beddelka dhabna wuxuu soo celiyaa baytyada asalka ah.
| Container | Can hold | Does not decide |
|---|---|---|
| PKCS12 (.p12, .pfx) | Key, leaf certificate, chain, alias, password | Which root the client trusts |
| PEM (.pem, .crt, .cer) | Any number of base64 blocks | Whether the private key is present |
| DER (.der, .cer) | One binary structure | The object type, whatever the extension says |
Codeyntu ma aha sir-gelin
base64 waa xarfo gaadiid. Waxba ma qariyo, qof kastana wuxuu ku furan karaa block PEM qolka amarka. Faylka DER waa laba-geesood oo si la mid ah u furan. Midkoodna ma aha ilaalin, midkoodna ma tilmaamayo in fure sir ah uu jiro.
Ilaalinta dhabta ah waxay ku jirtaa maaddada furaha. Xidhmo PKCS12 waxay ku sir-gelin kartaa waxa ku jira fure laga soo saaray furaha sirta. Furaha PEM gaarka ah waxaa lagu sir-gelin karaa block madax hore ama lagu hayn karaa PKCS#8 EncryptedPrivateKeyInfo. Shahaadadu kaligeed waxba qarsoodi ah ma hayso, sidaas darteed soo-saarid kaliya shahaado bixisay waxay macmiilka ka dhigtaa mid aan awoodin inuu caddeeyo, qaab kasta oo aad ku duubto.
Kordhintu waa tilmaan, ma aha heshiis. Faylalka ku dhammaada .cer iyo .crt waxay ka muuqdaan labada codeyn, qalabkuna waxay u soo saaraan shahaadooyinka DER magacyo .pem ah inta badan ku filan in qiyaasidda dhammaadka ay lumiso galab. Akhri baytyada ugu horreeya: faylka PEM wuxuu ku furmaa sadar BEGIN, DERna wuxuu ku bilaabmaa 0x30 sababtoo ah qaabka dibadda waa SEQUENCE.
Sababta soo-dejintu dhab ahaan u fashilanto
Fariimaha khaladaadka macmiilku waxay isku uruuriyaan dhowr dhibaato oo kala duwan hal jumlad ku saabsan shahaado aan ansax ahayn, sidaas darteed u kala sooc sababta. Tan ugu badan waa is-waafajin la'aanta codeynta: macmiil PEM falanqeeya wuxuu soo celiyaa khalad falanqayn faylka DER, xalkuna waa beddelid ma aha shahaado cusub. Tan labaad waa fure maqan, halkaas oo shahaadadu fiican tahay oo aqoonsiga aan la caddayn karin. Tan saddexaad waa silsiladda, halkaas oo xidhmo aan lahayn shahaadada dhexe ay u muuqato mid sax ah dialogga soo-dejinta oo fashilma inta lagu jiro gacan-qaadka.
Halbeegyada sir-gelintu waxay sababaan tan afraad, oo waxay u egtahay si sax ah fure sir oo khaldan. Qalabkii hore waxay soo saareen faylal PKCS12 leh RC2-40 iyo 3DES, kuwaas oo OpenSSL 3 diido ilaa bixiyaha legacy la rakibay. Dib u soo-saaridda qalabka iyada oo la isticmaalayo AES-256-CBC iyo PBKDF2 waa xalka waara. Ka tagista sir-gelinta hore oo si joogto ah loo haaysto mishiinka macmiilka hal fayl aawadiis waa ganacsi xun.
Tan shanaad waa madmadow. Weel qaadanaya laba fure iyo laba shahaado, ama fayl PEM leh saddex block CERTIFICATE, wuxuu ku qasbaa macmiilka inuu doorto, doorashadiisuna inta badan waa shayga ugu horreeya oo keliya. Marka tunnel uu kor u kaco aqoonsi qaldan, badanaa taasi waa sababta.
Baadh ka hor beddelka
Akhri qaabka adigoon daabicin sirta. openssl pkcs12 -in bundle.p12 -info -noout wuxuu soo sheegaa algorithms-ka sir-gelinta iyo magacyada-labo waxaanu xakameeyaa soo-saarka furaha iyo shahaadada, buug-gacmeedka openssl-pkcs12 na wuxuu qoraa calaamadaha. Ka saarista -noout iyo ku darista -nodes waa loogu talagalay faylal aad dooneyso inaad hayso, ma aha aragga degdega ah, sababtoo ah waxay si cad u qoraa furaha gaarka ah.
Shahaadada, openssl x509 -in cert.pem -noout -subject -issuer -dates wuxuu ka jawaabaa waxa dialogga soo-dejintu aan ka jawaabin, ku darista -ext subjectAltName na waxay muujinaysaa magacyada shahaadadu dhab ahaan ansax u tahay. Haddii faylku DER yahay, ku dar -inform DER; calaamaddaas keliya waxay xallinaysaa inta badan khaladaadka unable-to-load.
Furaha shahaadada la waafajintu waa shaqo farsamo, oo mudan in la sameeyo ka hor soo-dejin kasta:
openssl x509 -in cert.pem -noout -pubkey | openssl sha256openssl pkey -in key.pem -pubout | openssl sha256
Dijest isku mid ah waxay ka dhigan tahay in lammaanu iska tirsan yihiin. Dijest kala duwan waxay ka dhigan tahay inaad haysato fure qaldan, beddelka qaab kastana ma beddeli doono taas.
Waxa qaabku waligiis aan beddelin
Go'aannada kalsoonida waxay ka dhacaan weelka korkiisa. Macmiilku wuxuu silsiladda maraa ilaa xidid ku jira kaydkiisa, wuxuu hubiyaa daaqadda ansaxnimada, wuxuu hubiyaa isticmaalka furaha la fidiyay ee caddaynta macmiilka, dhinaca serverkana wuxuu hubiyaa in magaca uu wacay uu ku jiro shahaadada. Mid ka mid ah tallaabooyinkan ma akhriyaan kordhinta faylka.
Taasi waa sababta magaca faylka beddelidda ilaa khaladku lunto ay tahay hab lagu lumiyo waqti aad u lagu kalsoonaan karo. Soo-dejintu way guulaysataa, aqoonsigu wali qaldan yahay, fashilka na wuxuu dib u soo muuqdaa inta lagu jiro gacan-qaadka halkaas oo fariintu ka yar tahay mid caawimaad leh. Taasi sidoo kale waa sababta xidhmo laba sano ka hor la soo saaray si nadiif ah loo soo dejiyo oo haddana la diido: taariikhda dhicitaanku waxay ku safartay shahaadada gudaheeda, ma aha magaca faylka.
Nidaam ka fogaada dib-u-shaq
Weydii dukumeentiga macmiilka codeynta uu aqbalo iyo weelka uu filayo aqoonsiga macmiilka, kadib eeg waxa laguu dhiibay. Haddii macmiilku rabo hal aqoonsi la soo-dejin karo oo aad haysato faylal PEM gooni ah, hal mar ku dhis xidhmada fure sir ah oo aad maamusho oo hayso ilaha. Haddii uu rabo PEM, soo saar furaha iyo silsiladda, kadibna tirtir faylalka dhexe iyada oo loo marayo habka maaraynta aqoonsiga ee kooxdaadu hore u isticmaasho.
Soo-dejinta kadib, caddee aqoonsiga ma aha dialogga: mawduuc, soo-saare, dhicitaan iyo magaca uu macmiilku soo bandhigi doono. Magac saaxiibtinimo leh liiska waa calaamad, ma aha aqoonsi la caddeeyay. Haddii tunnelka kadib fashilmo, waxaad debug-gaynaysaa caddaynta ama dariiqa halkii xidhnaanta, taas oo ah wada-hadal aad uga gaaban.