Estoy ejecutando mi enrutador OpenWrt como un cliente OpenVPN en una configuración VPN de sitio a sitio. Después de actualizar a OpenWrt 22.03, tengo que migrar las reglas personalizadas de mi firewall a nftables. ¿Me pueden ayudar a encontrar el archivo nft para esto:
- /usr/sbin/iptables -t nat -I ENRUTAMIENTO PREVIO -i tun+ -d 10.2.1.0/24 -j NETMAP –to 192.168.1.0/24
- /usr/sbin/iptables -t nat -I POSTROUTING -o tun+ -s 192.168.1.0/24 -j NETMAP –to 10.2.1.0/24
¿Con ayuda? Esto no está funcionando:
table ip nat {
chain prerouting {
type filter hook prerouting priority 0; policy accept;
ip saddr 10.2.1.0/24 dnat 192.168.1.0/24
}
chain postrouting {
type filter hook postrouting priority 100; policy accept;
ip saddr 192.168.1.0/24 snat 10.2.1.0/24
}
}
ykuksenko
mi respuesta preliminar (todavía no he probado la parte srcnat):
El ejemplo que proporcionó creo que hace la agrupación NAT (creo que ese es el termino correcto), en lugar de 1:1 nat; que hace una entrada .1
la dirección termina con un aleatorio .0-.255
IP de destino.
Lo que parece funcionar para mí. (Intentaré actualizar si encuentro algo para cambiar la respuesta).
- asegúrese de que el firewall permita el acceso a la zona a la que está intentando acceder: noté este cambio en la configuración después de cambiarlo en la interfaz de usuario de luci. No estoy seguro si hay más.
config forwarding
option src 'vpn'
option dest 'lan'
- agregue lo siguiente a
/etc/config/firewall
config include
option type 'nftables'
option path '/etc/firewall_1to1_nat.nft'
option position 'ruleset-post'
- crear
/etc/firewall_1to1_nat.nft
– esto se traducirá entrante10.11.0.0/24
a192.168.0.0/24
y vuelta
flush table NAT1to1
table ip NAT1to1 {
chain dstnat {
type nat hook prerouting priority dstnat; policy accept;
ip daddr 10.11.0.0/24 iif WIREGUARD counter meta nftrace set 1 dnat ip prefix to ip daddr map { 10.11.0.0/24 : 192.168.0.0/24 }
}
chain srcnat {
type nat hook postrouting priority srcnat; policy accept;
ip saddr 192.168.0.0/24 oif WIREGUARD counter meta nftrace set 1 snat ip prefix to ip saddr map { 192.168.0.0/24 : 10.11.0.0/24 }
}
}
Nota: quitar el counter
y meta nftrace set 1
bits según sea necesario.
Nota: esto funciona en ip
escriba nftables pero no el inet
tipo. inet
Las mesas terminan con un Error: Could not process rule: Not supported
mensaje.
Fuente: https://git.netfilter.org/nftables/commit/?id=35a6b10c1bc488ca195e9c641563c29251f725f3