1
Sieć / Przejście z iptables na nftables. Serwer z DNS i VPN...
« dnia: 2021-11-12, 11:20:40 »
Witam wszystkich. Postaram się opisać mój problem najbardziej przejrzyście.
Postanowiłem zmienić firewall z iptables na nftables. Pierwsza moja przygoda z tą zaporą. Używam do dłumaczenia iptables-translate. Co natomiast nie działa? Na serwerze jest usługa DNS (serwer cacheujący na Unbound), VPN (Wire Guard), SMB oraz dodatkowo Apache+SSL.
Problemy w nftables:
1. DNS - po uruchomieniu nie keszuje nic
2. Po zalogowaniu się na VPN (w którym sieć lokalna ma adresy 10.200.200.XX na interfejsie wg0) nie można np. mapować dysków (SMB) które dostępne są w właściwej sieci pod adresami 192.168.0.XX
Wszystkie problemy w/w działają oczywiście pod iptables.
Zamieszczam poniżej do porównania pełną konfigurację firewalli do analizy
a to jest to samo tylko w przekąłdnie na nftables
Z góry dziękuję za pomysły, sugestie, pomoc...
Postanowiłem zmienić firewall z iptables na nftables. Pierwsza moja przygoda z tą zaporą. Używam do dłumaczenia iptables-translate. Co natomiast nie działa? Na serwerze jest usługa DNS (serwer cacheujący na Unbound), VPN (Wire Guard), SMB oraz dodatkowo Apache+SSL.
Problemy w nftables:
1. DNS - po uruchomieniu nie keszuje nic
2. Po zalogowaniu się na VPN (w którym sieć lokalna ma adresy 10.200.200.XX na interfejsie wg0) nie można np. mapować dysków (SMB) które dostępne są w właściwej sieci pod adresami 192.168.0.XX
Wszystkie problemy w/w działają oczywiście pod iptables.
Zamieszczam poniżej do porównania pełną konfigurację firewalli do analizy
Kod: [Zaznacz]
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [232:27745]
-A INPUT -i lo -j ACCEPT
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -p udp -m udp --dport 53 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
-A INPUT -p udp -m udp --sport 53 -m conntrack --ctstate ESTABLISHED -j ACCEPT
-A INPUT -p udp -m udp --dport 51820 -m conntrack --ctstate NEW -j ACCEPT
-A INPUT -j DROP
-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i wg0 -o wg0 -m conntrack --ctstate NEW -j ACCEPT
-A OUTPUT -p udp -m udp --sport 53 -m conntrack --ctstate ESTABLISHED -j ACCEPT
-A OUTPUT -p udp -m udp --dport 53 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
COMMIT
*nat
:PREROUTING ACCEPT [533570:88784442]
:INPUT ACCEPT [3060:204088]
:OUTPUT ACCEPT [1317:93210]
:POSTROUTING ACCEPT [8:480]
-A POSTROUTING -s 10.200.200.0/24 -o eth0 -j MASQUERADE
COMMIT
a to jest to samo tylko w przekąłdnie na nftables
Kod: [Zaznacz]
table ip filter {
chain input {
type filter hook input priority filter; policy drop;
iifname "lo" counter packets 202 bytes 658758 accept
ct state established,related counter packets 37298 bytes 8916101 accept
tcp dport 22 counter packets 1609 bytes 254971 accept
udp dport 53 ct state established counter packets 0 bytes 0 accept
udp sport 53 ct state established counter packets 0 bytes 0 accept
udp dport 51820 ct state new counter packets 2 bytes 352 accept
nft add rule ip filter INPUT counter drop
}
chain output {
type filter hook output priority filter; policy accept;
udp sport 53 ct state established counter packets 1150 bytes 159030 accept
udp dport 53 ct state established counter packets 0 bytes 0 accept
}
chain forward {
type filter hook forward priority filter; policy accept;
ct state established,related counter packets 5084 bytes 2919832 accept
iifname "wg0" oifname "wg0" ct state new counter packets 0 bytes 0 accept
}
}
table ip nat {
chain prerouting {
type nat hook prerouting priority dstnat; policy accept;
}
chain postrouting {
type nat hook postrouting priority srcnat; policy accept;
oifname "eth0" ip saddr 10.200.200.0/24 counter packets 341 bytes 36726 masquerade
}
}
Z góry dziękuję za pomysły, sugestie, pomoc...