«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 failedEvidence you can inspectWhat a password change cannot fix
The machine proofno security association in the state lista mismatched pre-shared key or an untrusted chain
The user proofan association is up while PPP or EAP reports failurean expired token, a locked account, a missing client key
The client's method supportthe client offers no method the gateway acceptsa client without the required EAP or key material
The server's policythe gateway rejects before any user exchange startsa 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-pager

Senarai 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.

Artikel berkaitan