Sambungan Client VPN terputus, sijil dalam ACM diganti, dan tiada apa yang berubah. Objek sijil tidak pernah menjadi perkara yang digunakan oleh titik akhir. Titik akhir menyimpan persatuan dengan sijil semasa dicipta, bersama CA klien yang akan disahkannya, jenis pengesahan, subnete dan peraturan kebenaran, dan tiada satu pun persatuan itu mempunyai panggilan ubah yang menerima sijil pengganti. Menggantikan bait di belakang ARN ialah perubahan pada sijil, bukan pada titik akhir yang menangkapnya.

Titik akhir menyimpan rujukan, bukan sijil

Mekanisme ini wajar dinyatakan dengan tepat kerana ia menjelaskan seluruh kegagalan. create-client-vpn-endpoint mengambil ARN sijil pelayan dan ARN rantai sijil akar klien, dan titik akhir yang terhasil menyimpan rujukan itu bersama pilihan pengesahan sebagai sifat tetap. Permukaan API tidak menawarkan operasi yang menukar sijil pelayan pada titik akhir sedia ada.

Anda boleh mengesahkan ikatan itu tanpa meneka. aws ec2 describe-client-vpn-endpoints --client-vpn-endpoint-ids cvpn-endpoint-0123456789abcdef0 mencetak ARN sijil, ARN rantai akar klien, jenis pengesahan, CIDR klien dan subnete berkaitan, iaitu set lengkap sifat yang perlu anda hasilkan semula. Jalankannya sebelum dan selepas import semula, dan outputnya tidak bergerak. Itulah bukti bahawa import semula tidak akan pernah membantu.

Mengapa import semula tidak dapat mencapai titik akhir

Import semula menulis badan sijil baharu di bawah ARN sedia ada. Itu operasi sah apabila sijil hampir tamat tempoh, dan ACM akan menerimanya selagi kunci peribadi sepadan dan rantai itu sah. Apa yang tidak dilakukannya ialah menjalankan semula pengesahan semasa penciptaan titik akhir, jadi persatuan dan bahan di belakangnya kekal seperti ketika titik akhir dibina.

Itulah sebabnya simptomnya terbaca seperti kerosakan rangkaian. Jabat tangan TLS gagal atau ditetapkan semula sebelum kebenaran dinilai, jadi kumpulan keselamatan, laluan dan peraturan kebenaran semuanya kelihatan tidak bersalah, dan memang begitu.

Rantai ialah sebahagian daripada sijil klien

Separuh kedua kegagalan ada pada sijil klien, dan ia lebih mudah diabaikan. Sijil klien mesti diimport dengan rantai yang mengeluarkannya, walaupun borang import menunjukkan medan itu sebagai pilihan. Tanpa rantai, titik akhir tidak dapat membina laluan daripada sijil klien ke CA akar klien yang dengannya ia dikonfigurasikan, dan sambungan berakhir dengan tetapan semula lembut yang kedengaran seperti tembok api yang menggugurkan paket. openssl verify -CAfile root-ca.pem client.crt menjawab soalan itu secara setempat dalam satu saat, dan ia sepatutnya menjadi arahan pertama yang anda jalankan.

Import semula dengan rantai ialah pembaikan sebenar untuk separuh itu, dan ia masih tidak mencukupi sendirian. Setelah objek ACM berubah, titik akhir yang memegang persatuan lama ialah perkara yang salah untuk terus diuji. Kedua-dua langkah tergolong dalam pembaikan yang sama, itulah sebabnya pembaikan dua bahagian bukan percanggahan.

Mencipta semula titik akhir ialah migrasi

Mencipta titik akhir pengganti ialah migrasi, bukan percubaan semula, dan melayannya sebagai percubaan semula ialah cara pasukan berakhir dengan dua titik akhir yang separuh dikonfigurasikan. Titik akhir baharu mendapat ID baharu dan, melainkan anda merancangnya, nama DNS baharu untuk setiap pengguna. Kekalkan profil klien menunjuk kepada nama dan bukan alamat, supaya pertukaran menjadi perubahan rekod dan bukan pengagihan semula.

Urutan yang menjadikannya selamat adalah singkat: cipta titik akhir baharu dengan CIDR, subnete dan peraturan kebenaran yang sama, eksport profil baharu dengan aws ec2 export-client-vpn-client-configuration, dan sahkan dengan seorang pengguna. Selepas itu barulah titik akhir lama diturunkan.

Menamatkan perkhidmatan titik akhir lama mempunyai urutan tersendiri. Batalkan sijil klien yang anda mahu bersarakan sebelum memadamnya, kerana titik akhir baharu yang masih mempercayai CA lama terus menerima sijil yang anda sangka sudah hilang. Kemudian padamkan titik akhir lama dan buang peraturan kebenarannya, supaya profil lama tidak dapat menyambung semula ke rangkaian sasaran yang anda sangka sudah ditutup. Tulis ID titik akhir lama dan pengecam persatuan dalam rekod perubahan, kerana migrasi yang dibandingkan dengan ingatan ialah cara titik akhir yang berfungsi dibina semula dua kali.

Susun diagnosis

Asingkan tiga kegagalan sebelum mengubah sebarang konfigurasi. Klien tidak dapat menyelesaikan TLS, klien menyelesaikan TLS dan tidak dibenarkan, atau klien bersambung dan tidak dapat mencapai destinasi. Persatuan sijil tergolong dalam yang pertama, peraturan kebenaran yang tidak meliputi alamat klien tergolong dalam yang kedua, dan laluan atau kumpulan keselamatan tergolong dalam yang ketiga, di mana mencipta semula titik akhir hampir selalu langkah yang salah.

Titik akhir yang berfungsi berbulan-bulan kemudian berhenti, tanpa perubahan sijil atau dasar, ialah kes tersendiri. Membinanya semula dengan tetapan yang sama boleh memulihkan perkhidmatan, tetapi itu alasan untuk mengekalkan konfigurasi boleh dihasilkan semula, bukan alasan untuk membina semula pada setiap insiden.

Simpan empat perkara di bawah kawalan versi supaya pembinaan semula seterusnya ialah diff dan bukan improvisasi: parameter titik akhir, ARN sijil dan rantai, peraturan kebenaran dan CIDR klien. Dokumentasi pengesahan Client VPN menyenaraikan sijil mana memainkan peranan apa, yang wajar disemak sebelum menganggap sijil sebagai masalah. Jika import semula tidak mengubah apa-apa dan titik akhir masih ditetapkan semula, persatuannya yang disyaki dan jawapannya ialah titik akhir baharu yang dibina daripada parameter yang direkodkan. Jika titik akhir memang mengambil objek baharu, persatuannya sudah betul dan kesalahannya terletak pada rantai klien atau lapisan kebenaran.

Artikel berkaitan