Ketidakcocokan nama atau kedaluwarsa sertifikat: membedakan keduanya
Ketidakcocokan nama berarti sertifikat untuk hal lain; kedaluwarsa berarti tidak valid sekarang. Baca tahap yang gagal sebelum menyetel ulang kredensial.
Dua kegagalan VPN tampak sama dari kursi pengguna dan membutuhkan perbaikan yang berlawanan. Ketidakcocokan nama berarti sertifikat valid tetapi diterbitkan untuk sesuatu yang lain. Kesalahan kedaluwarsa berarti sertifikat tidak valid pada saat ini. Keduanya bukan masalah kata sandi, dan menyetel ulang kredensial adalah jam yang paling sering terbuang dalam kedua kasus. Baca tahap yang gagal sebelum Anda menyentuh apa pun.
Teks kesalahan adalah diagnosisnya
Klien memberi tahu Anda pemeriksaan mana yang gagal, bahkan saat pesannya singkat. Ketidakcocokan menyebutkan nama host yang diharapkan dan nama yang ditemukan. Kesalahan kedaluwarsa menyebutkan tanggal validitas atau waktu. Kedua kalimat itu menunjuk ke bagian sertifikat yang berbeda.
Bacalah pada tahap tempat keduanya muncul. Kegagalan saat handshake adalah masalah sertifikat; kegagalan setelah terowongan aktif adalah masalah perutean atau kredensial. Mempertahankan tahap itulah yang mencegah penyelidikan melenceng ke pengaturan yang tidak terkait.
Jika kegagalan berbeda antarpercobaan, Anda punya kemungkinan ketiga: lebih dari satu node di balik nama yang sama.
Pemeriksaan nama: apa yang dibandingkan klien
Klien membandingkan identitas yang dikonfigurasi untuk diharapkan dengan nama-nama di sertifikat, yang berada di ekstensi subjectAltName. IP mentah di profil, alias yang tidak dicantumkan sertifikat, atau nama yang hanya resolve ke server yang sama — semuanya gagal pada pemeriksaan ini. Mencapai mesin yang benar tidak sama dengan menyajikan identitas yang benar.
Periksa sertifikat yang benar-benar disajikan server, bukan file dari percobaan sebelumnya. Perintah di bawah meminta nama yang Anda konfigurasi, sehingga jawabannya mencakup sertifikat yang akan dilihat klien sungguhan.
openssl s_client -connect vpn.example.com:443 -servername vpn.example.com </dev/null 2>/dev/null \
| openssl x509 -noout -subject -dates -ext subjectAltNameSertifikat dari penerbit tepercaya tetap bisa untuk layanan lain. Biarkan pemeriksaan nama klien tetap aktif, karena memercayai CA tidak memberi wewenang atas setiap nama yang pernah ditandatangani CA itu. Menonaktifkan pemeriksaan mengubah kesalahan konfigurasi menjadi paparan.
Kedaluwarsa: jam siapa yang dibaca
Validitas adalah sepasang stempel waktu, dan pemverifikasi membandingkannya dengan jamnya sendiri. Perangkat yang jamnya salah melaporkan sertifikat valid sebagai kedaluwarsa atau belum valid, dan perbaikannya adalah jamnya, bukan sertifikatnya. Perbedaan tampilan zona waktu bukan hal yang sama dengan waktu dasar yang salah.
Bandingkan tanggal sertifikat dengan UTC di klien sebelum menyimpulkan apa pun:
openssl x509 -in cert.pem -noout -dates
date -uJika tanggalnya benar-benar sudah lewat, perbarui melalui penerbit. Jika pengganti sudah ada tetapi belum valid, ikuti peralihan yang didukung alih-alih memajukan jam untuk menyesuaikannya. Memundurkan tanggal perangkat agar memenuhi sertifikat adalah keputusan dengan konsekuensi jauh melampaui terowongan.
Mengapa memperbaiki satu menyingkap yang lain
Validasi menjalankan rangkaian pemeriksaan, dan kegagalan pertama menghentikan laporan. Perbaiki namanya dan klien kemudian mungkin memberi tahu Anda bahwa rantainya tidak lengkap atau sertifikatnya kedaluwarsa. Itu bukan berarti pemeriksaan pertama tidak perlu. Itu berarti rantai punya lebih dari satu masalah, jadi harapkan kesalahan kedua alih-alih membacanya sebagai bukti bahwa perbaikan pertama keliru.
Banyak node memperburuk ini. Layanan dengan penyeimbangan beban dapat menyajikan sertifikat berbeda dari anggota berbeda, jadi uji yang lolos dua kali dan gagal sekali sedang memberi tahu Anda tentang armada, bukan tentang klien Anda. Simpan alamat peer dan waktu percobaan dalam diagnosis.
Detail itulah yang mengubah tiket yang tidak konsisten menjadi tiket yang dapat direproduksi.
Buktikan dengan koneksi baru
Setelah perbaikan, buka koneksi baru alih-alih melanjutkan yang lama, dan pastikan tahap yang dulu gagal kini lolos. Lalu pastikan terowongan benar-benar membawa lalu lintas, karena handshake yang berhasil bukan rute yang berfungsi.
Simpan tahap kesalahan yang tepat dan detail sertifikat bersama tiket.
Catatan itulah yang mencegah orang berikutnya menyetel ulang kata sandi akun untuk masalah sertifikat. Identitas dan validitas adalah pertanyaan terpisah, dan RFC 5280 adalah rujukan untuk cara yang kedua dievaluasi.