Anda memulakan pembantu L2TP dengan nyahpepijat, memerhati terminal, dan ia berhenti tanpa apa-apa berguna di skrin. Ini bukan bendera nyahpepijat yang rosak. Sambungan NetworkManager L2TP ialah empat proses yang bekerjasama, dan hanya sebahagian daripadanya menulis ke terminal yang anda perhatikan. Bukti selebihnya ada dalam journal, sejauh satu penapis.

Empat proses, dua destinasi log

Sambungan bermula dengan IPsec, iaitu libreswan atau strongSwan bergantung pada pemasangan. Kemudian daemon L2TP, secara tradisinya xl2tpd dan dalam sesetengah binaan kl2tpd, mengendalikan terowong. Akhirnya pppd menguruskan pengesahan dan pengalamatan di dalamnya.

Perkhidmatan pembantu menyelaraskan bahagian itu dan mencetak kemajuannya sendiri. Daemon IPsec dan pppd biasanya melapor melalui journal sistem, sebab itulah terminal menunjukkan sambungan yang gagal manakala puncanya berada dalam fail yang belum anda buka.

Pemisahan itu juga menerangkan mengapa ralat PSK dan ralat kata laluan kelihatan sama dari desktop: kedua-duanya menghasilkan pemutusan generik, dan peringkat yang gagal hanya kelihatan dalam output setiap proses. Itulah seluruh sebab journal penting di sini. Satu mesej generik di desktop, empat penulis berpotensi di belakangnya.

Kumpulkan satu percubaan, kemudian baca urutannya

Hasilkan semula sekali, dengan profil yang diketahui dan masa yang diketahui, kemudian baca tetingkap sempit dan bukannya keseluruhan boot. Mengulang percubaan sambil menukar tetapan menjadikan log sebagai campuran yang tidak dapat ditafsirkan.

Perintah ini memilih proses yang menyertai untuk boot semasa, dan laluan pemalam wajar disahkan pada distribusi anda:

journalctl -b --no-hostname _COMM=nm-l2tp-service _COMM=pluto _COMM=charon _COMM=xl2tpd _COMM=pppd
rpm -ql NetworkManager-l2tp 2>/dev/null | grep nm-l2tp-service

Medan berulang dalam satu seruan memilih gabungan proses tersebut, yang mengekalkan urutan dalam susunan masa. Pada sistem berasaskan Debian pertanyaan setara ialah dpkg -L; intinya ialah mencari di mana pembantu itu sebenarnya tinggal sebelum cuba menjalankannya secara manual.

Tiga syarat menentukan langkah seterusnya

Baca peringkat pertama yang gagal, kemudian pilih sewajarnya. Jika IPsec melaporkan kegagalan cadangan atau pengesahan rakan, terowong itu tidak pernah terbentuk, dan menukar kata laluan PPP tidak dapat membantu.

Jika terowong terbentuk dan pppd menolak log masuk, rahsia bersama sudah betul dan masalah kelayakan berada satu lapisan lebih tinggi. Jika pppd berunding alamat dan kegagalan muncul kemudian, kedua-duanya berfungsi dan masalah yang tinggal ialah penghalaan, DNS atau dasar pelayan itu sendiri.

Ketiga-tiga cabang itu meliputi hampir setiap pemutusan generik, dan ditentukan oleh proses mana yang merekodkan ralat terakhir, bukan oleh mesej ralat mana yang kelihatan paling membimbangkan.

Elok juga mengesahkan backend IPsec mana yang dipasang sebelum menyentuh tetapan nyahpepijat. Pilihan pengelogan yang ditulis untuk strongSwan tidak melakukan apa-apa apabila libreswan berjalan, dan sambungan akan terus gagal di tempat yang sama sementara anda menyunting fail yang tiada siapa baca.

Mod nyahpepijat meninggalkan fail

Aliran kerja nyahpepijat asal menjalankan perkhidmatan secara manual dengan bendera nyahpepijat, dan mod itu boleh meninggalkan fail konfigurasi masa jalan yang dijana di tempatnya apabila sambungan tamat.

Fail itu mengandungi bahan pengesahan: kunci pratkongsi, kelayakan atau kedua-duanya. Konfigurasi yang dijana dan disalin ke tetingkap sembang ialah pendedahan kelayakan, bukan petikan log. Buang baris rahsia sebelum berkongsi apa-apa, dan hapus direktori itu apabila siasatan tamat. Anggap ia sebagai rahsia, ekstrak baris tertentu yang anda perlukan untuk laporan, dan hapuskannya selepas itu daripada menampal direktori ke dalam tiket.

Contoh manual juga mesti diselaraskan dengan yang biasa. Melancarkan salinan nyahpepijat sedangkan perkhidmatan sudah memiliki pemalam menghasilkan dua pemilik dan log yang mencampurkan kedua-duanya, yang lebih buruk daripada tiada output nyahpepijat langsung.

Selepas itu pulihkan pembantu biasa

Apabila siasatan tamat, hentikan contoh manual, buang fail masa jalan yang disimpan dan sambung semula melalui laluan biasa supaya orang seterusnya melihat konfigurasi yang sepadan dengan realiti.

Kemudian sahkan hasilnya pada lapisan yang gagal, bukan pada ikon desktop:

journalctl -b -u NetworkManager --since -10min | tail -30
ip -4 addr show ppp0
ip -4 route get 10.20.4.10

Sesi yang mengesahkan, menerima alamat dan menghala ke destinasi yang dimaksudkan ialah hasil yang anda nyahpepijat. Terminal senyap semasa percubaan yang gagal hanya memberitahu anda di mana output tidak ditulis.

Artikel berkaitan