Gateway menggantikan sijil, dan klien yang bersambung semalam mula berhenti pada pertukaran TLS pertama. Mesej menyebut sebab pengesahan dan bukan kerosakan rangkaian, dan mesin itu sendiri tidak berubah, itulah petunjuk yang berguna. Yang rosak ialah hubungan antara sijil yang kini dibentangkan dan akar yang klien sanggup pertimbangkan. Membaikinya ialah keputusan kepercayaan, jadi buat keputusan itu sebelum anda menaip pilihan.

Baca kegagalan sebelum menukar sebarang tetapan kepercayaan

Ralat jenis penandatangan hilang bermakna rantai berakhir pada sesuatu yang tidak diterima klien. Ia boleh jadi sijil yang diperbaharui daripada pihak berkuasa dalaman, penggantian daripada pihak berkuasa awam, atau peranti di tengah yang membentangkan sijilnya sendiri. Hanya perkataan tidak dapat membezakan kes itu, jadi lihat pengeluar sebelum membuat keputusan.

Jalankan sambungan sekali di latar hadapan dan biarkan ia gagal, kerana output interaktif membawa nama pelayan, rantai pengeluar dan cap jari yang dikira klien. Bandingkan pengeluar itu dengan pihak berkuasa yang benar-benar dikendalikan organisasi anda. Jika cap jari berubah tetapi pengeluar tidak, anggap ia mencurigakan sehingga pembaharuan disahkan melalui saluran yang anda sudah percaya. Meneka pada ketika ini ialah cara seseorang akhirnya menyematkan kunci penyadap.

Catat versi klien dalam nota yang sama. Sebahagian besar kegagalan yang kelihatan seperti masalah kepercayaan datang daripada klien lebih lama yang bertemu pertukaran gateway lebih baharu.

Pilih antara mempercayai pengeluar dan menyematkan satu kunci

Kedua-dua pilihan menjadikan sambungan berjaya. Ia rosak kemudian dengan cara bertentangan, jadi pilihan itu milik kegagalan yang anda mampu tanggung.

ApproachGood fitWhat breaks it
Trust the issuing CA with --cafileInternal PKI you can obtain over an already trusted channelCA rotation, or a client that still falls back to public roots
Pin one key with --servercertNo CA relationship, or exactly one key should ever be acceptedAny reissue that generates a new key pair

Gunakan fail CA apabila sijil datang daripada pihak berkuasa yang boleh anda sahkan secara bebas, kerana pembaharuan kemudian terus berfungsi tanpa menyentuh argumen klien. Pasangkannya dengan suis yang melumpuhkan akar sistem, jika tidak pihak berkuasa awam boleh memenuhi pemeriksaan bagi pihak anda. Sematkan sebaliknya apabila gateway tiada CA yang boleh anda peroleh atau apabila pengecualian paling sempit yang mungkin menjadi matlamat. Tiada jalan yang lebih selamat secara abstrak: CA berskala merentas pembaharuan, penyematan lebih mudah disemak.

Mana-mana yang anda pilih, nilai dipercayai mesti tiba melalui saluran yang dipercayai sebelum perubahan berlaku. Pentadbir, sesi konsol pada gateway atau salinan yang diambil lebih awal semuanya layak. Menyalin cap jari yang dipaparkan oleh gesaan itu mudah dan juga tepat apa yang diharapkan oleh penyadap.

Letakkan nilai dalam arahan yang benar-benar anda lancarkan

Penyematan bergerak dalam pilihan sijil pelayan, dan awalannya menentukan pengekodan: digest kunci awam perenambelasan di bawah sha1 atau sha256, dan penyematan kunci base64 di bawah pin-sha256. Memberikannya juga melumpuhkan kepercayaan sistem untuk larian itu, jadi kunci yang disematkan menjadi keseluruhan keputusan.

sudo openconnect --protocol=gp vpn.example.com --user alice \
  --servercert pin-sha256:AbCdEf...   # single key pin
sudo openconnect vpn.example.com --cafile /etc/ssl/internal-ca.pem --no-system-trust

Klien memadankan digest terpotong, menerima hanya empat aksara selepas awalan, yang merupakan perangkap bukan kemudahan. Nilai yang dipendekkan lulus secara setempat dan masih tidak mengenal pasti gateway yang anda maksudkan. Salin rentetan penuh yang dicetak klien pada percubaan pertama daripada menaipnya semula daripada mesej. Kemudian pindahkan pilihan siap ke skrip pembalut, fail unit atau profil yang melancarkan sambungan, supaya keputusan kepercayaan boleh disemak dan suntingan kemudian adalah sengaja.

Pelancar desktop dan pemalam NetworkManager menyimpan salinan argumen sambungan mereka sendiri. Skrip yang disunting pada cakera tidak sampai ke profil yang diimport lebih awal, jadi nilai tersimpan terus menang.

Tangani penggiliran tanpa mengunci diri anda di luar

Pilihan boleh diberikan lebih daripada sekali, jadi perubahan terancang boleh menerima kunci keluar dan masuk bersama-sama. Tambah penyematan baharu sebelum gateway bertukar, kekalkan kedua-duanya tersenarai semasa sesi berhijrah, dan buang yang bersara apabila kunci lama hilang. Tetingkap itu memerlukan pemilik, kerana penyematan berganda yang terlupa meninggalkan kunci dipercayai tanpa sesiapa mengawasinya. Pembinaan semula yang menghasilkan pasangan kunci baharu memecahkan penyematan tulen, dan pemulihan ialah prosedur yang sama ke arah bertentangan.

Tulis tarikh perubahan di sebelah penyematan. Penyematan tanpa tarikh semakan ialah gangguan masa depan yang membawa mesej ralat mengelirukan.

Ketepikan versi klien sebelum menyunting kepercayaan

Klien lapuk boleh gagal semasa menghuraikan balasan pengesahan yang telah diubah gateway sejak itu, dan mesej permukaan masih bercakap tentang sambungan dan bukan penghurai. Bandingkan versi yang dipasang dengan apa yang didokumenkan gateway, dan uji pakej semasa dalam profil sekali guna sebelum menukar sebarang tetapan kepercayaan.

openconnect --version

Selepas pembaikan, sahkan dua perkara dan bukan satu: portal dimuatkan melalui terowong, dan alamat dalaman biasa menjawab. Jabat tangan yang selesai hanya membuktikan bahawa keputusan kepercayaan telah diterima.

Artikel berkaitan