Gerbang Anda menerima sertifikat klien yang belum pernah dilihatnya, karena yang dikonfigurasi padanya adalah penerbit tepercaya, dan sertifikat itu datang saat handshake. Begitulah protokol seharusnya bekerja, dan itulah sebabnya daftar direktori di server menjadi inventaris yang buruk. Penerbit tahu apa yang dibuatnya, server tahu apa yang terhubung, dan status pencabutan tahu apa yang ditarik. Inventaris yang mencampur ketiga catatan itu akhirnya menyatakan sesuatu yang tidak dikatakan satu pun darinya.

Gerbang memercayai penerbit, bukan daftar berkas

Validasi membandingkan sertifikat yang diajukan dengan jangkar kepercayaan, sehingga identitas yang dibuat kemarin oleh penerbit yang sama terhubung tanpa pernah ada di cakram server. Tidak ada yang perlu disalin agar itu terjadi, dan tidak ada yang harus menyetujuinya secara manual. Karena itu catatan server sendiri menggambarkan kedatangan, bukan populasi identitas yang bisa datang.

Celah sebaliknya sama tidak nyamannya. Sebuah direktori dapat memuat sertifikat kedaluwarsa, sertifikat yang dicabut, dan identitas yang diterbitkan untuk perangkat yang tidak pernah diterapkan. Menghitung berkas menjawab berapa banyak berkas yang ada, yang merupakan pertanyaan yang tidak ditanyakan siapa pun. Mulailah dari catatan yang membawa makna.

Empat pertanyaan, empat catatan berbeda

Setiap jenis catatan menjawab satu pertanyaan dengan baik dan pertanyaan lain dengan buruk, karena itu laporan yang menggabungkannya tampak lengkap padahal salah dengan cara tertentu. Tabel di bawah ini mengurutkannya menurut pertanyaan yang diselesaikannya, bukan menurut sistem yang menghasilkannya.

Question you are answeringWhere the answer livesHow quickly it changesWhat it will never show
Was this identity ever created?The issuer's issuance databaseOnly when something is issuedWhether the device still exists
Is a copy sitting on this host?The paths you actually inspectedWhenever anyone copies filesCertificates that were never copied here
Has the issuer withdrawn it?Published revocation stateWhen the issuer next publishesWithdrawals that are not published yet
Is it connected right now?The live session tableContinuouslyAnything about past or future sessions

Arsip sertifikat publik bukan rahasia, karena tidak memuat kunci privat, tetapi juga tidak bisa dibagikan. Subjek dan nama perangkat mengungkap detail operasional, dan laporan harus tetap pada audiensi yang membutuhkannya. Kunci privat tetap sepenuhnya di luar inventaris, karena inventaris membutuhkan metadata, bukan kredensial.

Penerbit dan nomor seri adalah satu-satunya kunci stabil

Subjek didaur ulang dan nama berkas dipakai kembali, sehingga nama yang tahun lalu menandai satu perangkat kini dapat menandai perangkat lain. Keduanya bukan kunci, dan laporan yang dibangun di atas salah satunya akhirnya akan menggabungkan dua identitas ke dalam satu baris.

Pasangan penerbit dan nomor seri menandai sertifikat secara unik, dan kedua bidang berasal dari sertifikat itu sendiri. Catat keduanya bersama subjek, tanggal masa berlaku, sumber asal salinan, serta orang atau perangkat yang bertanggung jawab. Tambahkan status pencabutan dan penerapan sebagai bidang terpisah dengan waktu pengamatan masing-masing, karena sertifikat di dalam jendela masa berlakunya tidak otomatis diotorisasi. Kedua fakta itu hidup di sistem yang berbeda, dan menggabungkannya menyembunyikan kasus ketika identitas dicabut sementara berkasnya masih tampak mutakhir.

Baca satu sertifikat setiap kali

Kartu liar yang meluas melintasi direktori bukan antarmuka batch, dan itu menyembunyikan berkas mana yang menghasilkan keluaran mana. Baca metadata per sertifikat, dan baca sisi pencabutan dari artefaknya sendiri. Referensi OpenSSL x509 mencantumkan bidang yang dicetak opsi tersebut.

openssl x509 -in <cert>.pem -noout -issuer -serial -subject -dates -fingerprint -sha256
openssl crl -in <issuer>.crl -noout -text | head -n 40

Untuk PKI Easy-RSA terkelola, tanyakan basis data penerbitan melalui alur kerja yang didukung alat alih-alih mengasumsikan tata letak direktori, dan jaga aslinya hanya-baca selama inventaris disusun. Format buku besar cukup teratur untuk menghitung entri yang sah dan mendaftar yang ditarik tanpa membuka basis data secara manual.

grep -c '^V' pki/index.txt
grep '^R' pki/index.txt | cut -f4,5

Inventaris yang bertahan melewati penerbitan berikutnya

Tumpahan sekali jalan dari sebuah direktori menjadi basi pada saat sertifikat berikutnya diterbitkan, jadi bangun laporan dari alur penerbitan dan biarkan laporan itu diperbarui sebagai bagian dari operasi normal. Itu juga membuat laporan dapat direproduksi, yang penting saat dua orang tidak sepakat tentang apa yang diterbitkan.

Gunakan hasilnya untuk keputusan perpanjangan dan penghentian, bukan sebagai latihan lembar kerja. Menghapus salinan lokal tidak membatalkan salinan jarak jauh yang sudah ada. Cabut identitas melalui alur pencabutan dan otorisasi yang dikonfigurasi, lalu catat pencabutan dengan tanggalnya. Identitas yang hilang dari server tetapi masih dipercaya penerbit belum dihentikan, dan perbedaan itulah yang memisahkan inventaris yang akurat dari yang hanya menenangkan.

Artikel terkait