Nftables Linux - Security und Firewall Labor: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 39: Zeile 39:
  
 
==Unser erstes NAT==
 
==Unser erstes NAT==
 +
#!/usr/sbin/nft -f
 +
flush ruleset
 +
define wandev = enp0s3
 +
    chain postrouting {
 +
        type nat hook postrouting priority 100; policy accept;
 +
        oif ''"$wandev"'' '''masquerade'''
 +
    }
 +
}
  
 
= Links =
 
= Links =
 
* https://wiki.gentoo.org/wiki/Nftables/Examples
 
* https://wiki.gentoo.org/wiki/Nftables/Examples

Version vom 15. April 2025, 04:31 Uhr

Routing Firewall

  • Eine einfache Firewall, die Pakete aus dem LAN ins WAN weiterleitet
  • Pakete aus dem WAN von etablierten Verbindungen sollen ins LAN geleitet werden

Routing aktivieren

  • sysctl -w net.ipv4.ip_forward=1
  • falls das rebootfähig sein soll, muss die Datei /etc/sysctl.conf bearbeitet werden
  • vim /etc/sysctl.conf
...
net.ipv4.ip_forward = 1
...
  • sysctl -p

Einfaches NAT

  • Quell IP Adressen aus dem LAN sollen auf die WAN IP geändert werden
  • Am einfachsten ist dafür das "Masquerading";
  • Sowohl dynamische als auch statische WAN IPs können damit Zugriff auf das Internet gewähren
  • vim /etc/nftables.conf
#!/usr/sbin/nft -f
flush ruleset

    chain postrouting {
        type nat hook postrouting priority 100; policy accept;
        oif "name_des_wan_interfaces" masquerade
    }
}

Merksatz

  • DNAT früh, weil das Ziel schon geändert sein muss, bevor geroutet wird.
  • SNAT spät, weil erst klar sein muss, welches Interface das Paket verlässt.
Enablen
  • systemctl enable --now nftables

Unser erstes NAT

#!/usr/sbin/nft -f
flush ruleset
define wandev = enp0s3
    chain postrouting {
        type nat hook postrouting priority 100; policy accept;
        oif "$wandev" masquerade
    }
}

Links