La trairo komenciĝas ĉe la atestila listo de la kliento, kie la ero montras nomon, eldoninton kaj limdaton kaj nenion alian. Eksportu ĝin, importu ĝin sur la dua aparato, kaj la konekto rifuziĝas ĉar la kliento ne povas pruvi posedon de la privata ŝlosilo. La dosiero estis kopiita tute; la eraro estas atendi, ke atestilo kunportu sian propran ŝlosilon. Legu la eksportan dialogon antaŭ ol elekti la formaton, poste inspektu la dosieron, kiun vi efektive ricevis.

Du klakoj, du tre malsamaj artefaktoj.

Legu la eksportan dialogon, ne la dosieran sufikson

DER aŭ PEM atestila eksporto enhavas publikan ŝlosilon kaj la subskribitajn identecajn asertojn, kion servilo bezonas por fidi vin kaj kion kliento bezonas por kontroli servilon. PKCS#12-paketo estas ujo, kiu povas enhavi atestilon, ĝian ĉenon kaj la kongruan privatan ŝlosilon, protektitan per pasvorto, kvankam ĝi ankaŭ povas esti kreita sen la ŝlosilo.

PEM estas nur teksta kodigo, ne promeso pri la enhavo. La sama sufikso povas priskribi unu atestilon aŭ dosieron kun pluraj etikeditaj blokoj, kaj la eksportaj opcioj decidas kiun.

Do la utila demando neniam estas, kiun etendaĵon vi ricevis, sed kiujn blokojn la dosiero enhavas. Paketo eksportita sen sia ŝlosilo restas paketo. Kontrolu la enhavon anstataŭ la popularecon de la formato.

Inspektu, kion vi efektive ricevis

Serĉu la etikedojn antaŭ ol importi ion ajn, poste legu la atestilajn kampojn por konfirmi, kiun identecon vi tenas. Plenumu la kontrolojn sur la dosiero, kiu efektive estos importita. Ripetu ilin post ĉiu reeksporto, ĉar la opcioj povas malsami.

grep -E 'BEGIN (CERTIFICATE|PRIVATE KEY|ENCRYPTED PRIVATE KEY)' bundle.pem
openssl x509 -in client.crt -noout -subject -issuer -dates
openssl pkey -in client.key -noout -text | head -5
openssl pkcs12 -info -in client.p12 -noout

Eksporto kun nur atestila bloko estas publika objekto kaj ne povas aŭtentikigi. Ŝlosila bloko sen atestilo lasas vin sen la ĉeno, kiun la servilo atendas. La PKCS#12-informa eligo ankaŭ raportas, ĉu ŝlosilo ĉeestas, kio solvas la demandon por tiu formato. Ĝi ankaŭ nomas la algoritmon kaj la ŝlosilan grandecon, kaj ĝi tute malsukcesas, kiam ŝlosilo mankas.

Neniam algluu dosieron enhavantan privatan ŝlosilon en subtenan fadenon, erar-spurilon aŭ babilon, eĉ kiam ĝi aspektas kiel la atestilo, kiun vi jam kunhavigis. Ekrankopioj de ŝlosila panelo meritas la saman singardon.

La ŝlosilo povas loĝi ie, kion vi ne povas kopii

Sur administrataj aparatoj la privata ŝlosilo povas sidi en la ŝlosilringo de la operaciumo, en aparatara ĵetono aŭ en sekura enfermaĵo, kun politiko markanta ĝin neeksportebla. La atestila administrilo tiam montras la publikan objekton dum la sekreto restas siaperte, kaj neniu eksporta komando produktos porteblan kopion. Registriĝo per administrado de poŝaparatoj ofte funkcias ĝuste tiel laŭ la dezajno.

Tio estas rego, ne obstaklo por ĉirkaŭiri. Rekonstrui privatan ŝlosilon el la publika atestilo ne eblas, kaj ajna ilo asertanta tion faras ion alian.

Registru novan identecon anstataŭ kopii

La subtenata vojo kutime estas registri apartan identecon por la nova aparato kaj revoki la malnovan, kiam ĝi emeritiĝas, por ke ĉiu aparato povu esti retirita sendepende. Kie eksporto kun la ŝlosilo estas vere aprobita, traktu la rezultan dosieron kaj ĝian pasvorton kiel akreditaĵojn: ĉifritaj ripoze, transdonitaj per fidata kanalo, kaj forigitaj, kiam la registriĝo finiĝas.

Kontrolu per aŭtentikigo kun la importita identeco, ne per observado de sukcesa importo. Kliento, kiu akceptas publikan atestilon en sian konservejon, pruvis nenion pri la ŝlosilo.

Finu per konfirmo, ke la servilo akceptas la novan identecon kaj ke la malnova ankoraŭ kondutas tiel, kiel la politiko intencas. Tio kompletigas la trairon per pruvoj, anstataŭ per dosiero, kiu aspektas ĝusta.

Rilataj artikoloj