Satu ralat, tiga rahsia: kelayakan VPN yang manakah gagal?
Klien menunjukkan satu ralat bagi setiap peringkat. Baca persekutuan, pertukaran pengguna dan kaedah sebelum menetapkan semula kata laluan yang tidak diperiksa oleh sesiapa.
«Pengesahan gagal» boleh menunjuk kepada sijil pelayan, kunci kongsi awal mesin atau kata laluan pengguna. Yang mana satu bergantung pada protokol, kerana setiap protokol mentakrifkan set rahsia yang berbeza. Tetapkan semula yang salah dan ralat itu kekal tidak berubah. Jalan keluarnya ialah menetapkan berapa banyak bukti yang diperlukan protokol sebelum menyunting apa-apa.
Dua bukti yang menunjuk ke arah bertentangan
Tunnel mesti menjawab sama ada ia sampai ke gateway yang betul, dan secara berasingan siapa penggunanya. Bukti gateway berada pada peringkat mesin: sijil pelayan, kunci kongsi awal atau kunci awam statik. Bukti pengguna berada pada peringkat orang: kata laluan, token, sijil klien, atau tiada langsung. Kedua-duanya arah kepercayaan yang bertentangan dan menggunakan bahan yang berbeza.
IKEv2 melaksanakan bukti gateway di dalam IKE_AUTH dan, apabila EAP digunakan, menjalankan bukti pengguna selepas itu dalam pertukaran berasingan. spesifikasi IKEv2 menyimpannya sebagai bahagian berasingan, yang merupakan petunjuk kuat tentang tempat untuk melihat apabila satu mesej meliputi kedua-dua pusingan.
Baca peringkatnya, bukan mesejnya
Klien menunjukkan satu rentetan ralat tanpa mengira peringkat mana yang gagal, jadi rentetan itu sendiri hampir tidak membawa maklumat. Yang membawa maklumat ialah keadaan yang boleh anda periksa pada setiap peringkat: sama ada persekutuan wujud, sama ada pertukaran pengguna bermula dan sama ada klien menawarkan kaedah yang dikehendaki gateway. Jadual menyusun peringkat dengan cara itu, bukan mengikut nama protokol.
| Stage that failed | Evidence you can inspect | What a password change cannot fix |
|---|---|---|
| The machine proof | no security association in the state list | a mismatched pre-shared key or an untrusted chain |
| The user proof | an association is up while PPP or EAP reports failure | an expired token, a locked account, a missing client key |
| The client's method support | the client offers no method the gateway accepts | a client without the required EAP or key material |
| The server's policy | the gateway rejects before any user exchange starts | a policy that requires a certificate the profile lacks |
Hanya baris kedua menyentuh kelayakan yang boleh ditaip semula oleh pengguna. Tiga yang lain ialah fakta konfigurasi, dan ketidakpadanan itulah sebabnya banyak laporan seperti ini berakhir dengan penetapan semula kata laluan yang tidak mengubah apa-apa. Baca baris yang sepadan dengan bukti anda sebelum menyentuh mana-mana medan.
Protokol dua rahsia menunjukkan kadnya
L2TP di atas IPsec menjadikan kiraan kelihatan, kerana kedua-dua pemeriksaan berlaku dalam proses yang berbeza. Lapisan IPsec mesti naik dahulu dengan kunci kongsi awal atau sijil, dan hanya selepas itu PPP di dalamnya mencuba log masuk pengguna.
Apabila rahsia mesin salah, tiada persekutuan terbentuk dan kelayakan pengguna tidak pernah dicuba. Apabila rahsia mesin betul dan rahsia pengguna salah, persekutuan itu wujud dan PPP menolak log masuk selepas tunnel sudah naik. Kedua-duanya menghasilkan mesej yang sama di skrin daripada dua peristiwa berbeza.
sudo swanctl --list-sas
sudo ip xfrm state list
sudo journalctl -u xl2tpd -n 50 --no-pagerSenarai persekutuan yang kosong menyingkirkan lapisan pengguna serta-merta, jadi periksanya sebelum kata laluan. Persekutuan yang terjalin dengan kegagalan PPP berulang menunjuk ke arah lain, ke lapisan pengguna atau ke protokol pengesahan di dalamnya. Tidak satu pun daripada kedua-dua kesimpulan itu tersedia daripada teks ralat klien.
Apakah yang sebenarnya bergantung pada akses kata laluan semata-mata
Akses kata laluan semata-mata adalah biasa bagi L2TP, PPTP, SSTP dan IKEv2 dengan EAP. WireGuard langsung tidak mempunyai pilihan sedemikian, kerana rakan sejawatnya ialah kunci, bukan pengguna. Bagi OpenVPN jawapannya datang daripada keperluan sijil klien pelayan: gateway yang menuntut sijil dan kata laluan sekali gus akan terus menolak klien kata laluan semata-mata, apa pun yang ditaip dalam medan itu.
Komponen mana yang anda perlukan mengikut jawapan yang sama. Log masuk kata laluan di bawah IKEv2 memerlukan klien yang bertutur EAP, manakala log masuk sijil memerlukan kunci persendirian klien dan rantaian pelayan. Pasang yang salah dan kegagalan itu terbaca seperti ralat kelayakan walaupun kaedah pengesahan itu sendiri yang tiada.
Ubah satu perkara, kemudian uji semula
Tetapkan dahulu tiga fakta: protokol mana yang berjalan, berapa banyak rahsia yang ditakrifkannya, dan yang mana antaranya milik mesin dan bukan pengguna. Mesin gagal pada peringkat pertama dan orang gagal pada peringkat kedua, dan mengelirukan kedua-duanya ialah keseluruhan masalah ini.
Kemudian ubah tepat satu perkara dan uji semula daripada klien yang sama. Disiplin itu menjadikan kegagalan yang mengelirukan sebagai pembetulan yang boleh anda jelaskan kepada orang seterusnya, dan itu lebih berguna daripada sambungan yang berfungsi yang tiada siapa dapat menjelaskan.