Hilang sijil klien? Batalkan mengikut nombor siri, bukan nama
Fail sijil yang hilang bukan rekod yang hilang. Pembatalan berfungsi pada nombor siri yang ditandatangani CA, jadi cari objek itu sebelum mengeluarkan pengganti.
Fail sijil klien anda telah hilang, dan refleksnya ialah membatalkan nama lalu mengeluarkan yang baharu. Refleks itu membiarkan sijil asal sah, kerana pembatalan berfungsi pada nombor siri dan bukan pada label. CA hampir pasti masih menyimpan salinan apa yang dikeluarkannya, dan mencari salinan itu ialah keseluruhan tugas.
Kehilangan fail bukan kehilangan rekod CA
PKI Easy-RSA menyimpan sijil awam yang dikeluarkannya, dan keluaran terkini turut mengarkibkan salinan mengikut siri dalam direktori certs_by_serial PKI. Kunci persendirian tidak diperlukan untuk membatalkan apa-apa. Yang penting ialah sijil tepat yang ditandatangani CA, dan CA sudah memilikinya.
Bekerja pada salinan sandaran PKI yang betul, bersama pentadbir yang memilikinya. Pembatalan ialah operasi yang boleh diaudit, bukan pembaikan pada pangkalan data pengeluaran tengah malam.
Salinan sijil awam sebaris klien juga berfungsi, jika penggunaan menyimpan satu.
Baca pengeluar dan siri terlebih dahulu
Periksa PEM yang dipulihkan dan catat pengeluar, nombor siri, subjek dan tempoh kesahihan. Nombor siri adalah unik dalam skop satu pengeluar, bukan merentas semua CA dalam persekitaran anda, jadi pengeluar ialah sebahagian daripada identiti. Jika beberapa sijil berkongsi subjek, nombor siri itulah yang membezakan mereka.
Padankan nilai dengan rekod CA dan dengan peranti atau orang yang anda percaya memegang sijil itu.
Nama biasa boleh digunakan semula, dan biasanya begitulah. Jangan putuskan sijil mana yang hendak ditarik sebelum nombor siri dicatat.
Mengapa membatalkan sijil baharu tidak melakukan apa-apa
Mengeluarkan pengganti dengan nama biasa yang sama mencipta sijil kedua dengan nombor siri berbeza. Membatalkan pengganti menarik yang baharu dan membiarkan yang asal sah sehingga tamat tempoh. Dari sudut pandangan CA, ini dua objek bebas, dan CRL menyenaraikan nombor siri, bukan nama. Indeks CA menyimpan satu baris bagi setiap sijil yang dikeluarkan semata-mata kerana sebab itu.
Kekeliruan yang sama menghasilkan kesilapan sebaliknya: memadam fail klien dan menganggap CA telah melupakannya. Pemadaman pada klien bukan peristiwa pembatalan, dan sijil terus berfungsi kepada sesiapa yang mempunyai salinan.
Kedua-dua kesilapan datang daripada memperlakukan nama sebagai identiti.
Batalkan sijil yang dinamakan oleh nombor siri
Kenal pasti objek itu sebelum menyentuh CA: openssl x509 -in recovered-client.pem -noout -issuer -serial -subject -dates mencetak keempat-empat nilai dalam satu laluan, dan nombor siri ialah yang anda padankan dengan arkib CA. Easy-RSA menyimpan arkib itu di bawah pki/certs_by_serial, dengan satu fail bagi setiap nombor siri. Perintah pembatalan menerima nama biasa dan bukan nombor siri, jadi salin fail yang diarkibkan ke pki/issued/<common-name>.crt dan biarkan nama itu menunjuk kepada objek yang anda kenal pasti. Jalankan easyrsa revoke <common-name> dari direktori PKI, kemudian periksa sama ada baris yang sepadan dalam index.txt telah bertukar kepada R. Nombor siri ialah cara anda memilih objek, bukan hujah yang diterima perintah.
openssl x509 -in recovered-client.pem -noout -issuer -serial -subject -dates
cp pki/certs_by_serial/A1B2C3D4.pem pki/issued/client-01.crt
./easyrsa revoke client-01
grep -n client-01 pki/index.txt
./easyrsa gen-crl
Jika index.txt tidak menunjukkan R, berhenti dan baca ralat sebelum menjana CRL, kerana CRL yang dibina daripada rekod yang masih sah tidak menarik apa-apa. Hanya selepas baris bertukar anda menjalankan easyrsa gen-crl dan meneruskan pengedaran fail.
Terbitkan CRL di tempat ia benar-benar dikuatkuasakan
Jana CRL baharu melalui aliran kerja PKI yang disokong, kemudian terbitkannya kepada setiap pengesah yang menguatkuasakan pembatalan pengeluar ini.
Fail yang dikemas kini dan terletak di CA tidak mengubah apa-apa, kerana VPN menyelesaikan keputusan pada pengesahnya sendiri. Periksa pengeluar CRL, tempoh kesahihannya dan nombor siri yang dibatalkan, dan pastikan perkhidmatan memuat semula fail itu dan bukan menyimpan yang sebelumnya dalam cache. Pemilikan dan laluan sama penting dengan kandungan: CRL yang tidak dapat dibaca daemon tidak berbeza daripada tiada CRL. Pilihan crl-verify OpenVPN menamakan fail yang dibaca daemon, jadi periksa laluan itu dan pemilikan fail dalam konfigurasi pelayan.
Sahkan dengan percubaan sambungan sebenar, bukan dengan cap masa fail.
Ketahui bila CRL ialah alat yang salah
Jika kunci persendirian pengeluar tidak lagi dipercayai, menarik nombor siri yang diketahui tidak dapat menghalang pemegang tidak sah daripada menandatangani sijil baharu. Itu ialah peralihan kepercayaan pengeluar, iaitu CA baharu dan pelan pengedaran, bukan satu lagi entri dalam CRL. Bekas pentadbir mempunyai akses bukan bukti kunci telah disalahgunakan, jadi kumpulkan fakta sebelum membina semula kepercayaan.
Mengedit pangkalan data pengeluaran secara manual untuk menterbalikkan huruf status bukan pengganti pembatalan yang ditandatangani, dan ia meninggalkan CRL tidak konsisten dengan rekod.
Simpan nombor siri, CRL dan langkah pengedaran dalam satu nota, dan audit seterusnya menjadi latihan membaca. Projek Easy-RSA mendokumentasikan perintah yang disokong untuk keluaran yang anda pasang, dan itulah satu-satunya antara muka yang wajar diikuti.