Firewall edaran Linux boleh menyekat trafik VPN anda
Dua pengurus penapisan, satu set peraturan dan terowong yang mendarat di zon yang salah. Kenal pasti pemilik dan arah sebelum menambah sebarang peraturan.
Terowong muncul, log menyatakan bersambung, dan satu aplikasi masih tidak dapat mencapai apa-apa. Pada klien Linux ini biasanya bermaksud firewall edaran menapis laluan yang tidak pernah diuruskan oleh klien VPN. Dua pengurus boleh aktif serentak, masing-masing mempunyai tanggapan sendiri tentang antara muka, zon dan arah trafik. Mengenal pasti pemilik sebelum mengubah apa-apa lebih cepat daripada mencuba peraturan sehingga sesuatu berfungsi.
Cari pengurus dan backend
Mulakan dengan apa yang benar-benar dimuatkan, bukan apa yang dipasang. Sesuatu edaran mungkin menyediakan firewalld, ufw dan perkhidmatan nftables biasa, dan hanya satu daripadanya memiliki set peraturan yang berjalan. Pakej-pakej itu hidup bersama dengan aman, dan peraturan yang dimasukkan melalui frontend yang salah tidak pernah sampai ke kernel. Baca perkhidmatan aktif, kemudian baca set peraturan yang dihasilkannya.
Backend sama pentingnya dengan frontend. Pemasangan firewalld boleh memacu nftables atau backend iptables lama bergantung pada versi dan konfigurasi, dan kedua-duanya menghasilkan output pemeriksaan yang berbeza. Tulis edaran, versi dan backend ke dalam tiket sebelum membandingkan sistem anda dengan mana-mana panduan.
Padankan arah dan antara muka
Permintaan keluar klien, pendengar masuk dan paket yang dihantar terus merentasi cangkuk yang berbeza, dan peraturan untuk satu tidak meliputi yang lain. Zon yang membenarkan LAN tempatan selalunya tidak merangkumi antara muka terowong atau kumpulan alamat VPN. Antara muka terowong biasanya mendarat di zon lalai, yang selalunya lebih ketat daripada zon tempat penyesuai fizikal berada. Ketidakpadanan itu menjelaskan mengapa pelayaran berfungsi di LAN dan berhenti pada saat terowong muncul.
Tanya arah mana yang gagal sebelum memilih peraturan. Aplikasi yang tidak dapat menyambung ke luar memerlukan laluan output, manakala perkhidmatan masuk memerlukan laluan input pada antara muka terowong. Menambah peraturan pada rantai yang salah menghasilkan perubahan yang kelihatan digunakan dan tidak melakukan apa-apa sama sekali.
Kekalkan pemilik peraturan bersetuju
Cangkuk klien VPN, masa jalan kontena dan perkhidmatan edaran semuanya boleh mengubah rangkaian, dan mereka tidak menyelaras antara satu sama lain. Peraturan yang dimasukkan dengan tangan hilang pada pemuatan semula seterusnya, dan peraturan yang disisipkan ke dalam rantai pengurus boleh dinilai dalam susunan yang tidak anda maksudkan. Gunakan konfigurasi berterusan pengurus dan periksa set peraturan yang terhasil dan bukannya fail yang anda tulis. Mematikan seluruh firewall kerana satu perkhidmatan tidak dapat dicapai menukar masalah kecil dengan masalah besar.
Pengira sempit ialah cara murah untuk mencari aliran yang ditolak. Peraturan pengelogan terhad kepada satu destinasi dan satu port menunjukkan sama ada penurunan berlaku secara tempatan tanpa menangkap trafik orang lain. Buang peraturan pengelogan apabila siasatan tamat, kerana ia diagnostik dan bukan dasar, dan dokumentasi zon firewalld menerangkan bagaimana antara muka dan perkhidmatan bergabung.
Sahkan pembetulan tanpa kehilangan penguncian
Periksa keadaan yang digunakan dengan pengurus yang memilikinya, menggunakan arahan yang sepadan dengan backend yang anda catat. Senarai di bawah menganggap firewalld bertanggungjawab; gantikan dengan setara untuk nftables atau ufw dan bukannya menjalankan semuanya. Mencampurkan alat dalam satu sesi ialah cara mesin berakhir dengan dua set peraturan yang bercanggah.
sudo firewall-cmd --get-active-zones
sudo firewall-cmd --zone=trusted --list-all
sudo nft list ruleset | head -40
Arahan pertama menamakan zon dan antara muka yang ditugaskan kepadanya, yang menunjukkan di mana terowong sebenarnya mendarat. Yang kedua mencetak peraturan dan perkhidmatan sesuatu zon, jadi anda boleh melihat sama ada antara muka VPN diliputi sama sekali. Senarai nftables ialah kebenaran asas bagi backend yang digunakan, dan peraturan yang hanya wujud dalam fail konfigurasi tidak muncul di sana. Bandingkan ketiga-tiga output dengan peraturan yang anda tambah, dan ketidakpadanan biasanya menamakan dirinya sendiri.
Kemudian ulangi permintaan asal dan tingkah laku kegagalan yang anda perlukan. Laman yang baru berfungsi tidak memadai jika perubahan yang sama telah membuang penguncian klien, jadi uji juga laluan yang tidak dilindungi. Catat pengurus, backend, antara muka dan tujuan peraturan, kerana kemas kini pakej yang menghidupkan semula pengurus kedua akan membina semula seluruh kekacauan.