Mengapa menyalin ca.key ke setiap klien VPN merosakkan CA
Klien mengesahkan sijil awam CA; ia tidak pernah memerlukan kunci yang menandatangani. Menyalin ca.key ke setiap peranti memberikan kuasa pengeluaran kepada sesiapa yang mengambil satu salinan.
Di suatu tempat dalam arahan persediaan, satu direktori disalin sepenuhnya ke setiap komputer riba kerana itu lebih mudah daripada memutuskan fail mana yang sepatutnya ada di situ. Direktori itu mengandungi ca.key, dan sebaik sahaja ia sampai ke peranti kedua, autoriti sijil tidak lagi menjadi autoriti. Setiap pemegang kini boleh mengeluarkan identiti yang akan dipercayai oleh seluruh rangkaian.
Kekeliruan ini wajar diuraikan sekali, kerana kedua-dua fail kelihatan serupa tetapi melakukan perkara yang bertentangan.
Bahan pengesahan dan bahan penandatanganan
Klien memerlukan sijil awam CA untuk memeriksa bahawa sijil yang dikemukakan oleh pihak lain ditandatangani oleh autoriti itu. Itu tugas pengesahan dan sama sekali tidak memerlukan rahsia. Menandatangani sijil pihak lain ialah tugas berbeza, dilakukan sekali oleh sesiapa yang mengendalikan CA, dengan kunci peribadi yang tidak pernah meninggalkan storan terlindungnya. Memisahkan kedua-dua tugas itulah seluruh tujuan menghantar dua fail.
Jadi ca.crt tergolong dalam profil dan ca.key tidak tergolong di mana-mana berhampirannya. Nama fail hanyalah konvensyen, bukan jaminan, kerana itu jenisnya mesti diperiksa dan bukan disimpulkan daripada namanya.
Seni bina dengan CA perantaraan atau perkhidmatan pengeluaran dalam talian bukan pengecualian. Itulah cara lazim untuk menjauhkan keupayaan menandatangani daripada titik akhir sambil tetap mengeluarkan sijil peranti secara besar-besaran.
Apa yang perlu dibuktikan oleh klien dengan kuncinya sendiri
Setiap peranti menerima pasangan kuncinya sendiri dan sijilnya sendiri, ditandatangani sekali oleh CA. Klien mengemukakan sijil itu dan membuktikan pemilikan kunci peribadi yang sepadan, dan pelayan memutuskan sama ada untuk menerimanya. Inilah identiti yang dibatalkan apabila komputer riba hilang.
Kontras ini paling penting selepas kecurian. Dengan identiti bagi setiap peranti, satu klien yang terdedah dikeluarkan melalui pembatalan atau penyingkiran rakan, dan seluruh armada terus beroperasi.
Kunci autoriti yang bocor tidak boleh dikendalikan begitu. Setiap sijil yang pernah atau boleh ditandatanganinya menjadi mencurigakan, jadi tindak balasnya ialah penggantian kepercayaan, bukan satu pembatalan. Itu satu projek, bukan tiket.
| File | Role | Belongs on |
|---|---|---|
ca.crt | Public certificate used to verify signatures | Every client profile |
ca.key | Private key that issues certificates | Protected CA storage only |
| client key pair | Proves one device's identity | That device alone |
Baca fail sebelum menyalinnya ke mana-mana
Dua arahan memberitahu anda jenis objek yang anda pegang tanpa mencetak sebarang rahsia. Yang pertama menyebut subjek dan bendera CA pada sijil; yang kedua mengesahkan kunci dan melaporkan jenisnya. Jalankan kedua-duanya pada fail dalam himpunan yang akan anda edarkan. Apa-apa yang disahkan sebagai kunci peribadi tidak tergolong dalam direktori klien.
openssl x509 -in ca.crt -noout -subject -ext basicConstraints openssl pkey -in ca.key -noout -check
Jika arahan kedua berjaya pada fail yang berada dalam himpunan klien, berhenti dan anggap himpunan itu telah dicerobohi. Output yang menyatakan kunci sah juga menyatakan kunci itu hadir, dan kehadirannya ialah seluruh masalah.
Perhatikan juga arah sebaliknya: profil klien secara sah mengandungi kunci peribadi klien itu sendiri. Memadam setiap kunci yang anda temui akan memutuskan sambungan tanpa memperbaiki apa-apa, jadi objek itu mesti dikenal pasti sebelum dibuang.
Membendung kunci yang sudah anda edarkan
Jangan anggap bahawa memadam salinan tempatan membalikkan pendedahan. Sesiapa yang pernah memegang fail itu boleh menyalinnya, dan andaian yang selamat ialah mereka telah berbuat demikian. Ikuti proses insiden pengendali dan gantikan sauh kepercayaan, dengan mengeluarkan semula sijil peranti di bawah CA baharu.
Kemudian ubah pembungkusan yang mencipta masalah itu. Hantar penyenaraian direktori dengan senarai putih fail yang jelas, simpan kunci CA pada mesin yang tidak pernah menyertai armada klien, dan catat sistem mana yang menyimpannya.
Jika autoriti perlu mengeluarkan dengan kerap, pindahkan penandatanganan ke belakang perkhidmatan atau autoriti perantaraan dengan skop sempit dan tempoh sah yang pendek. Dengan itu kesilapan masa depan mendedahkan sebahagian pengeluaran dan bukan akar kepercayaan seluruh penggunaan.