ZeroTier ke LAN: peraturan laluan UFW, bukan kebenaran port
Membenarkan port pada gateway bukan sama dengan memajukan ke hos di belakangnya. Tetapkan laluan terurus, aktifkan transit dan pilih laluan balik.
Mencapai pencetak pada LAN pejabat melalui ahli ZeroTier kedengaran seperti satu peraturan, tetapi sebenarnya ia tiga keputusan di tiga tempat berbeza. Overlay mesti tahu di mana LAN berada, hos Linux mesti bersedia memajukan paket, dan LAN mesti tahu cara menghantar balasan kembali. Peraturan masuk yang membuka port pada gateway tidak menyentuh mana-mana daripada itu. Ia alat yang salah pada hos yang betul.
Tiga tugas, tiga pemilik
Laluan terurus milik konfigurasi rangkaian ZeroTier. Ia memberitahu ahli bahawa sesuatu awalan boleh dicapai melalui alamat ahli tertentu.
Pemajuan milik kernel Linux dan pihak yang memiliki dasar firewalnya. Ia menentukan sama ada paket yang tiba pada overlay akan keluar semula melalui antara muka fizikal. Hos yang tidak memajukan akan membuang paket itu secara senyap selepas menerimanya. Penghantar melihat tamat masa dan tiada apa-apa muncul dalam log perkhidmatan.
Laluan balik milik LAN. Hos-hos dan penghalangnya perlu tahu bahawa awalan overlay boleh dicapai melalui alamat LAN gateway anda, atau sesuatu mesti menterjemah trafik itu supaya soalan itu tidak timbul sama sekali.
Setiap satunya boleh betul sementara yang lain gagal, dan sebab itulah ujian yang hanya mengeping gateway tidak membuktikan apa-apa tentang perkhidmatan di belakangnya.
Halakan laluan terurus kepada ahli
Tambahkan laluan untuk awalan LAN yang dimaksudkan melalui alamat overlay gateway, bukan melalui alamat LAN-nya. Alamat overlay ialah alamat yang boleh dicapai oleh ahli lain; alamat LAN hanya bermakna pada kabel.
Ahli mesti menerima laluan terurus agar reka bentuk ini berfungsi, dan rangkaian tempatan mereka sendiri tidak boleh sudah menggunakan awalan yang anda iklankan. Komputer riba jauh yang di rumah berada pada 192.168.60.0/24 juga tidak boleh menghalakan 192.168.60.0/24 melalui overlay.
Kekalkan awalan yang diiklankan sesempit yang dibenarkan tugas. Mengiklankan agregat yang lebih besar untuk mempengaruhi keutamaan juga boleh menuntut ruang alamat yang bukan milik anda, dan konflik yang terhasil muncul pada peranti yang bersambung ke kedua-dua rangkaian. Ia juga boleh menyebabkan ahli lebih memilih laluan yang tidak menuju ke mana-mana. Kekalkan laluan itu jujur dan biarkan dasar melakukan selebihnya.
Tulis awalan dan alamat ahli dalam nota yang sama dengan peraturan firewall, kerana kerosakan paling biasa ialah laluan yang menunjuk kepada ahli yang salah.
Aktifkan transit dalam kernel
Baca nilai pemajuan yang sedang berjalan sebelum mengubah apa-apa, kemudian jadikan tetapan itu kekal melalui mekanisme yang sudah digunakan sistem anda, bukan melalui arahan sekali guna yang hilang apabila but semula.
Jika UFW memiliki dasar itu, peraturan laluannya menyatakan pemajuan untuk pasangan sumber, destinasi dan antara muka. Ia berasingan daripada peraturan masuk yang membuka perkhidmatan pada gateway itu sendiri:
sysctl net.ipv4.ip_forward
sudo ufw route allow in on zt3f2a1c9d out on eth0 proto tcp to 192.168.60.20 port 443
sudo ufw status verbose
Nama antara muka ialah peranti overlay sebenar pada hos itu, yang boleh anda baca daripada ip link; ia bukan rentetan tetap merentas pemasangan. Jika hos memajukan secara lalai dan UFW tiada di laluan, peraturan laluan akan diabaikan dan tetapan kernel yang penting.
Pilih cara balasan kembali
Dengan pemeliharaan sumber, perkhidmatan LAN melihat alamat overlay sebenar dan membalasnya. Itu memerlukan laluan pada hos LAN atau penghalangnya yang menghalakan awalan overlay ke gateway anda, dan itu perubahan di luar kotak Linux.
Apabila laluan itu tidak boleh ditambah, terjemahan sumber terbatas membuat permintaan kelihatan datang daripada gateway pada LAN. Balasan kemudian kembali secara setempat dan tiada perubahan penghalakan LAN diperlukan, dengan kos kehilangan sumber asal dalam log perkhidmatan.
Hadkan terjemahan kepada sumber overlay dan destinasi LAN yang khusus. Menterjemah semua yang keluar dari antara muka LAN ialah versi luas yang kemudian mengejutkan sesiapa yang membaca peraturan itu, dan ia juga menyembunyikan trafik yang sepatutnya disekat.
Tiada satu pun pilihan itu memberikan akses tanpa diminta dari LAN kembali kepada ahli overlay sewenang-wenangnya. Jika itu dikehendaki, ia peraturan berasingan dengan semakanannya sendiri.
Uji daripada ahli sebenar
Sambung daripada ahli lain, bukan daripada gateway, dan minta satu perkhidmatan yang dibenarkan. Kemudian cuba perkhidmatan yang sepatutnya kekal tertutup, dan ulangi kedua-dua ujian selepas menyambung semula dan selepas gateway but semula.
Ahli yang melaporkan ONLINE, atau ping yang berjaya ke alamat overlay gateway, tidak mengesahkan laluan, peraturan pemajuan atau laluan balik:
zerotier-cli listnetworks
ip -4 route get 192.168.60.20
sudo ufw status numbered
Arahan kedua menunjukkan antara muka mana yang akan digunakan paket ke hos LAN, dan yang ketiga menunjukkan sama ada peraturan laluan wujud dalam bentuk yang anda maksudkan. Jika kedua-duanya kelihatan betul dan perkhidmatan masih tamat masa, laluan balik ialah suspek yang tinggal.