Nftables Linux - Security und Firewall Labor: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
(Die Seite wurde neu angelegt: „Kategorie:Nftables Kategorie:Linux = Routing Firewall = * Eine einfache Firewall, die Pakete aus dem LAN ins WAN weiterleitet * Pakete aus dem WAN von…“) |
|||
| (9 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 22: | Zeile 22: | ||
* Sowohl dynamische als auch statische WAN IPs können damit Zugriff auf das Internet gewähren | * Sowohl dynamische als auch statische WAN IPs können damit Zugriff auf das Internet gewähren | ||
* '''vim ''/etc/nftables.conf'' ''' | * '''vim ''/etc/nftables.conf'' ''' | ||
| + | <pre> | ||
| + | #!/usr/sbin/nft -f | ||
| + | flush ruleset | ||
| + | |||
| + | table inet nat { | ||
| + | chain postrouting { | ||
| + | type nat hook postrouting priority 100; policy accept; | ||
| + | oif "name_des_wan_interfaces" masquerade | ||
| + | } | ||
| + | } | ||
| + | </pre> | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
'''Merksatz''' | '''Merksatz''' | ||
| Zeile 43: | Zeile 41: | ||
;Enablen | ;Enablen | ||
* '''systemctl enable --now nftables''' | * '''systemctl enable --now nftables''' | ||
| + | |||
| + | ==Unser erstes NAT== | ||
| + | <pre> | ||
| + | #!/usr/sbin/nft -f | ||
| + | |||
| + | flush ruleset | ||
| + | |||
| + | define wandev = enp0s3 | ||
| + | define wanip = 192.168.HS.1xx | ||
| + | define lan = 172.17.1xx.0/24 | ||
| + | define server = 172.16.1xx.0/24 | ||
| + | define mgmt = 172.18.1xx.0/24 | ||
| + | |||
| + | table inet nat { | ||
| + | chain postrouting { | ||
| + | type nat hook postrouting priority 100; policy accept; | ||
| + | |||
| + | oif $wandev ip saddr $lan snat to $wanip | ||
| + | oif $wandev ip saddr $server snat to $wanip | ||
| + | oif $wandev ip saddr $mgmt snat to $wanip | ||
| + | } | ||
| + | } | ||
| + | </pre> | ||
| + | |||
| + | ==Kontrolle== | ||
| + | *nft list ruleset | ||
= Links = | = Links = | ||
* https://wiki.gentoo.org/wiki/Nftables/Examples | * https://wiki.gentoo.org/wiki/Nftables/Examples | ||
Aktuelle Version vom 15. April 2025, 04:40 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
table inet nat {
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
define wanip = 192.168.HS.1xx
define lan = 172.17.1xx.0/24
define server = 172.16.1xx.0/24
define mgmt = 172.18.1xx.0/24
table inet nat {
chain postrouting {
type nat hook postrouting priority 100; policy accept;
oif $wandev ip saddr $lan snat to $wanip
oif $wandev ip saddr $server snat to $wanip
oif $wandev ip saddr $mgmt snat to $wanip
}
}
Kontrolle
- nft list ruleset