NAT algılama tek bir soruya yanıt verir: adresler veya portlar yolda değişti mi? Bir güvenlik duvarının IP protokolü 50'ye izin verip vermediğini yanıtlamaz. Hiç çeviri olmayan site geçitleri hâlâ native ESP'yi düşüren bir politikanın arkasında olabilir ve bu gereksinim keşfedilmek yerine yapılandırılmalıdır. Mekanizma ESP-in-UDP'dir ve bu bir karardır, kendi kendine ortaya çıkan bir yedek değildir.

Algılama adresler üzerinde aritmetiktir, güvenlik duvarı yoklaması değil

IKEv2 NAT algılama yüklerini taşır; bunlar kaynak ve hedef adreslerin ve portların karmalarını içerir. Her taraf aldığını yerel olarak gördüğüyle karşılaştırır ve uyuşmazlık ona paketi bir şeyin çevirdiğini söyler. Bu değiş tokuşta hiçbir şey ortadaki yönlendiricinin protokol 50'yi ilettiğini test etmez.

Pratik sonucu açıkça söylemeye değer. native ESP ile çalışan bir tünel yeni kısıtlayıcı güvenlik duvarını kendi kendine keşfetmez ve IKE başarılı olmaya devam ederken sonraki denemesi veri aşamasında başarısız olur. Kurulmuş IKE güvenlik ilişkileri ve korumalı trafik yok görürsünüz; bu, kabloda yakalayana kadar yönlendirme hatası gibi görünür.

Dolayısıyla kapsülleme yapılandırdığınız bağlantının bir özelliğidir, tarafların ağ davranışından pazarlık ettiği bir sonuç değildir.

encap değiş tokuşu nasıl değiştirir

Modern bir strongSwan kurulumunda, swanctl.conf aracılığıyla yönetilen, bağlantıdaki encap = yes ayarı NAT algılama değiş tokuşunu etkiler; böylece her iki taraf da ESP için UDP kapsülleme kullanır. Korumalı paketler sonra UDP içinde, geleneksel olarak 4500 portunda yol alır ve iki uç da bu düzenlemeyi kabul etmelidir.

connections {
    site {
        encap = yes
        # existing approved peer, authentication and child settings
    }
}

Bu parça gerçek bir bağlantı tanımının içine aittir ve tam bir site profili değildir. Zaten çalıştırdığınız eş adreslerini, kimlik doğrulamayı ve child trafik seçicilerini koruyun; eklenen tek anahtar, korumalı verilerin nasıl sarıldığını değiştirir, neyi koruduğunu değil.

strongSwan'ın NAT-traversal kılavuzu bu davranışı, MOBIKE kullanıldığında portun yüzmesiyle etkileşim dahil açıklar.

Backend'inize ait olan ayarı kullanın

strongSwan'ın iki yapılandırma backend'i vardır ve anahtar aralarında farklıdır. Bir swanctl.conf bağlantı encap alırken eski bir ipsec.conf bağlantı forceencaps alır. Bir backend'in anahtar sözcüğünü diğerine koymak, şikâyet etmeden yüklenen ve hiçbir şeyi değiştirmeyen bir yapılandırma üretir; bu bir hatadan daha kötüdür.

Herhangi bir şeyi düzenlemeden önce hangi daemon'un gerçekten çalıştığını denetleyin. Birçok dağıtımda iki dosya da bulunur çünkü biri önceki bir geçişin kalıntısıdır ve etkin olan hizmet biriminin başlattığıdır. Dosya zaman damgalarından tahmin etmek yerine o birimi okuyun. Buradaki beş saniyelik denetim, hiçbir şeyin yüklemediği bir ayarı saatlerce sınamayı önler.

Değişikliği bağlantının sahibi üzerinden uygulayın ve ilişkiyi denetlenen bir pencerede yeniden kurun. Zaten kurulu bir child değiştirilene kadar mevcut kapsüllemesini korur, bu yüzden yalnızca dosya düzenlemek yeni düzenlemenin kullanımda olduğunu kanıtlamaz.

Sarınmış verileri doğrulayın, yalnızca portu değil

Korumalı trafik akarken geçitte yakalayın, sonra bunu strongSwan'ın kendi görünümüyle karşılaştırın:

$ sudo tcpdump -ni eth0 'udp port 4500' -c 20
$ sudo swanctl --list-sas --ike site
$ sudo ip xfrm state list

native ESP IP protokolü 50 olarak görünür ve UDP'ye hiç benzemez. Sarınmış ESP, 4500 üzerinde yükü IKE olmayan UDP datagramları olarak görünür. Aynı porttaki IKE trafiği kapsüllemenin kanıtı değildir, çünkü MOBIKE IKE'yi oraya taşıyabilir ve veri yolu native kalır, bu yüzden port numarasını değil yükü okuyun.

Yolun MTU'sunu da göz önünde bulundurun. Sargı ek yük getirir ve native ESP taşıyan bir yol, paketler büyüdükçe ayarlamalar gerektirebilir. Gerekli ICMP işlemesi tasarımın parçası olmalıdır; kapsülleme bu bağımlılığı ortadan kaldırmaz.

Tünel içindeki yeni uygulama trafiği yakalamada iki uçta da sarınmış ESP olarak göründüğünde ve iç hizmet ile dönüş yolu hâlâ çalıştığında değişikliği kabul edin. Bundan azı, dosyada doğru görünen bir yapılandırmadır.

İlgili makaleler