VPN arayüzü gelirken nftables politikasını sabit tutun
Ada dayalı nftables kuralları görünüp kaybolan bir tünele dayanır, ancak rotalar ve mevcut akışlar otomatik olarak izlemez. Sahipleri ayırın.
Tüneller tek kullanımlıktır; politika öyle olmamalı. Bir Linux geçidinde tünel arayüzünü ada göre eşleştiren nftables kuralı bir kez yüklenebilir ve o arayüz her göründüğünde uygulanmaya devam eder. Arayüzün yine de bir yaşam döngüsü vardır: oluşturulur, kaybolur ve çevresindeki rotalar ile çeviriler kendi takvimlerini izler. Bu sahipleri ayırmak, yeniden bağlanma sırasında erişimi sabit tutan şeydir.
Ad eşleşmesi arayüzden daha uzun yaşar
nftables sayısal arayüz dizini eşleşmeleri ile dinamik ad eşleşmeleri iifname ve oifname sunar. Bu adları kullanan kurallar tünel aygıtı henüz oluşturulmamışken bile temiz yüklenir, ki açılışta bir kural kümesinin tam olarak ihtiyaç duyduğu şey budur. Arayüz yeniden adlandırılırsa eşleşme durur ve yeni bir arayüz o adı aldığında yeniden başlar. Sayısal dizinde bu özellik yoktur, bu yüzden tünel için olağan seçim ad biçimidir.
Ad bir eşleşme anahtarıdır, diğer uçta kimin olduğunun kanıtı değildir. Eşin kimlik doğrulaması VPN'in işi olarak kalır.
Kural eklemeden önce zinciri okuyun
Kural kümesinin şu anda ne içerdiğine ve yeni bir kuralın nereye oturacağına bakın, çünkü sonucu sıra belirler.
nft list ruleset
nft -c -f /etc/nftables.confListe zincirleri, kuralları ve tutamaçları gösterir ve denetim kipi aday dosyayı yüklemeden doğrular. Aynı akış için önceki bir kabulden sonra yerleştirilen yalnızca tünele özel izin hiçbir şeyi değiştirmez, çünkü ilk eşleşen kural kazanır. Bu yüzden geç gelen bir kural doğru görünebilir ve hiçbir etkisi olmayabilir. Zinciri sırayla okuyun ve istemciden üst bağlantıya giden trafik yasağının hâlâ her daha geniş şeyden önce geldiğini doğrulayın.
Rotaların, çevirinin ve akışların başka sahipleri vardır
Arayüzün varlığı rota oluşturmaz ve eşi kimlik doğrulamaz. Bunlar VPN yöneticisine aittir, çevirinin ise üçüncü bir yaşam döngüsü vardır.
conntrack -L -s 10.20.0.0/24 | head
ip route show dev vpn0conntrack listesi mevcut akışları özgün ve çevrilmiş değerleriyle gösterir, rota listesi ise yöneticinin arayüz için ne kurduğunu gösterir. NAT kuralları bağlantı izleme durumunu ilk pakette oluşturur, bu yüzden kurulmuş bir akış kural değiştikten sonra bile çevirisini korur. Bu yüzden güncellenen bir kural ile yeni yolu kullanan bir akış iki farklı ifadedir. Hangi oturumların yeniden bağlanması gerektiğine karar verin ve ilgisiz akışları rahat bırakın.
Soğuk başlangıcı, kaybı ve kurtarmayı kabul edin
Geçidi açılışta tünel yokken, sonra varken, sonra bir kesinti ve dönüşten sonra deneyin. Yasak yönlendirmenin tünel yokken reddedilmeye devam ettiğini, eş kimlik doğrulandıktan sonra yeni izin verilen akışın çalıştığını ve kurtarmanın ilgisiz durumu temizlemeyi gerektirmediğini doğrulayın. Bir profilin durdurma eylemi olarak tüm POSTROUTING zincirini veya her conntrack girdisini silmeyin, çünkü diğer hizmetler bunları paylaşır. Yalnızca bir başlatma kancasının sıfırla çıktığını değil, hangi bileşenin arayüzü, rotayı ve politikayı değiştirdiğini kaydedin.
Yeniden bağlanmayı atlatan politika, sahipleri adlandırılmış ve kuralları tünel hem kapalı hem açıkken denenmiş olandır. Başarı bildiren bir kanca yalnızca kancanın çalıştığını kanıtlar.