Separuh persekitaran menyambung semula selepas pembaharuan dan tiga peranti menolak, masing-masing dengan amaran tentang identiti gateway. Pembaharuan itu sendiri rutin. Yang dipegang oleh ketiga-tiga peranti itu ialah pin pada objek lama, dan pin bukan senarai CA, semakan nama atau entri stor kepercayaan. Bandingkan ketiga-tiga mekanisme sebelum menyentuh mana-mana klien.

Satu pembaharuan, dua tingkah laku

Klien yang menyambung semula mempunyai keputusan kepercayaan yang masih lulus, manakala yang menolak mempunyai keperluan yang tidak dipenuhi sijil baharu. Perbezaan itu ialah maklumat, bukan bunyi bising. Baca mesej klien yang gagal dengan tepat. Ketidakpadanan nama, pengeluar tidak dikenali dan cap jari yang berubah ialah tiga keputusan berbeza, dan hanya yang terakhir menunjuk kepada pin.

Periksa juga profil mana yang dipilih oleh klien yang gagal. Salinan import yang tinggal dalam storannya sendiri tidak berubah apabila pentadbir menyunting fail asal di tempat lain.

Pembaharuan menggantikan objek, bukan hanya tarikh

Cap jari mengenal pasti kandungan sijil yang dikodkan. Pembaharuan menghasilkan sijil baharu, jadi cap jari berubah walaupun nama subjek dan kunci awam kekal sama. Itu dijangka dan tidak berbahaya bagi klien yang mempercayai CA dan mengesahkan nama. Ia membawa maut bagi klien yang dikonfigurasikan menerima tepat satu sijil, dan juga membawa maut bagi klien yang stor kepercayaannya tidak pernah menerima pengeluar baharu.

openssl x509 -in server.pem -noout -subject -issuer -dates -fingerprint -sha256
openssl x509 -in server.pem -noout -pubkey | openssl sha256

Baris kedua menjawab soalan lain, sama ada pasangan kunci terselamat. Pembaharuan yang menggunakan semula kunci mengekalkan nilai itu dan hanya menukar sijil, dan itulah tepatnya kes apabila pentadbir tergoda untuk menganggap tiada apa yang berubah. Periksa sijil yang digunakan, bukan yang ada pada hos binaan. Membandingkan fail dalam repositori membuktikan apa yang dijana, bukan apa yang sedang dipersembahkan oleh pendengar.

Baca apa yang dipin oleh klien

Sesetengah klien menyimpan cap jari dalam profil mereka dan membandingkannya pada setiap sambungan. Yang lain menyimpannya dalam stor kepercayaan platform, dan yang lain lagi hanya bergantung pada CA. Pembaikan berbeza dalam setiap kes, jadi kenal pasti mekanisme dahulu.

grep -n 'peer-fingerprint' /etc/openvpn/client/*.conf
openssl s_client -connect gw.lab.example.net:443 -servername gw.lab.example.net < /dev/null 2>&1 | openssl x509 -noout -fingerprint -sha256

Perintah pertama menunjukkan pin dalam profil konvensional; yang kedua menunjukkan cap jari yang benar-benar disajikan oleh titik akhir sekarang. Apabila kedua-duanya berbeza, anda telah menemui kegagalan tanpa meneka. Jangan tampal nilai baharu ke dalam setiap klien yang mengadu. Klien yang menolak atas alasan pengeluar akan terus menolak, dan anda akan memujuk diri sendiri bahawa cap jari ialah masalahnya sedangkan ia bukan.

Bandingkan sijil yang disajikan oleh setiap backend

Hasil yang terputus-putus biasanya bermaksud lebih daripada satu titik akhir, dan pembaharuan yang digunakan pada satu nod membiarkan yang lain mempersembahkan objek lama. Bandingkan setiap backend mengikut alamat dan bukan mengikut nama kongsi.

for h in 10.30.0.11 10.30.0.12; do echo "$h"; openssl s_client -connect $h:443 -servername gw.lab.example.net < /dev/null 2>&1 | openssl x509 -noout -subject -dates -fingerprint -sha256; done

Kumpulan yang satu nodnya ketinggalan menjelaskan klien yang menyambung pada percubaan kedua dan gagal pada yang pertama. Ia juga menjelaskan semakan pemantauan yang lulus sementara pengguna mengadu. Betulkan kelewatan itu dahulu. Melancarkan konfigurasi kepercayaan sebelum setiap nod menyajikan sijil baharu mencipta tetingkap yang tiada apa berfungsi, dan melancarkannya selepas itu membiarkan klien gagal secara tidak dapat diramal.

Tukar kepercayaan melalui laluan terurus

Sahkan penggantian melalui saluran pentadbiran yang sudah dipercayai sebelum menerimanya di mana-mana. Tarikh luput yang munasabah bukan bukti pemilikan. Kemas kini konfigurasi terurus melalui proses yang memilikinya, dengan sebarang pertindihan identiti yang boleh diterima yang dirancang, dan kekalkan pengesahan nama yang dituntut oleh penggunaan. Pin tanpa semakan nama ialah reka bentuk yang lebih lemah daripada kepercayaan CA yang digantikannya.

Kemudian sahkan bagi setiap klien, sambung, sahkan identiti yang diterimanya, dan catat versi sijil yang kini dipercayainya. Amaran yang ditolak sekali ada cara untuk kembali pada pembaharuan seterusnya.

Artikel berkaitan