IPv6 Firewall Router: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
 
(5 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
=Simple IPv4 Firwall
+
=Simple IPv4 Firwall=
</pre>
+
<pre>
 
table ip filter {
 
table ip filter {
 
chain input {
 
chain input {
Zeile 31: Zeile 31:
 
}
 
}
 
}
 
}
<pre>
+
</pre>
 
 
  
 +
=Simple Dual Stack Firewall=
  
  
  
 
<pre>
 
<pre>
#!/usr/sbin/nft -f
+
table inet filter {
 +
chain input {
 +
type filter hook input priority filter; policy drop;
 +
ct state established,related accept
 +
ct state new iif "ens3" tcp dport 22 accept
 +
ct state new iif "ens4" accept
 +
ct state new iifname "lo" accept
 +
ip6 nexthdr ipv6-icmp accept
 +
log prefix "--nftables-drop-input--"
 +
}
  
define local_tcp_ports = { 22 }
+
chain forward {
define webserver = "2a02:24d8:71:2445::102"
+
type filter hook forward priority filter; policy drop;
define wandev = ens4
+
ct state established,related accept
define landev = ens5
+
ct state new iif "ens4" oif "ens3" accept
define transit_4 = "192.168.44.0/24"
+
log prefix "--nftables-drop-forward--"
define transit_6 = "2a02:24d8:71:2444::/64"
+
}
define lan_4 = 192.168.45.0/24
 
define lan_6 = "2a02:24d8:71:2445::/64"
 
  
 
+
chain output {
flush ruleset
+
type filter hook output priority filter; policy drop;
table inet filter {
+
ct state established,related accept
    chain input {
+
ip6 nexthdr ipv6-icmp accept
        type filter hook input priority filter; policy drop;
+
ct state new accept
        ct state established,related accept
+
log prefix "--nftables-drop-output--"
        ct state new tcp dport $local_tcp_ports accept
+
}
        ct state new iifname "lo" accept
 
        ct state new icmp type echo-request accept
 
        ip6 nexthdr icmpv6 accept
 
        log prefix "--nftables-drop-input--"
 
    }
 
    chain forward {
 
        type filter hook forward priority filter; policy drop;
 
        ct state established,related accept
 
        ct state new iif $landev oif $wandev accept
 
        ct state new iif $wandev oif $landev ip6 daddr $webserver tcp dport 80  accept
 
        log prefix "--nftables-drop-forward--"
 
    }
 
 
 
    chain output {
 
        type filter hook output priority filter; policy drop;
 
        ct state established,related accept
 
        ip6 nexthdr icmpv6 accept
 
        ct state new accept
 
        log prefix "--nftables-drop-output--"
 
    }
 
 
}
 
}
 
 
table ip nat {
 
table ip nat {
 
chain postrouting {
 
chain postrouting {
type nat hook postrouting priority 100;
+
type nat hook postrouting priority srcnat; policy accept;
oif ens4 masquerade
+
oif "ens3" masquerade
}
+
}
 
}
 
}
 +
 +
 
</pre>
 
</pre>

Aktuelle Version vom 31. Januar 2024, 10:55 Uhr

Simple IPv4 Firwall

table ip filter {
	chain input {
		type filter hook input priority filter; policy drop;
		ct state established,related accept
		ct state new iif "ens4" tcp dport 22 accept
		ct state new iif "ens5" accept
		ct state new iifname "lo" accept
		log prefix "--nftables-drop-input--"
	}

	chain forward {
		type filter hook forward priority filter; policy drop;
		ct state established,related accept
		ct state new iif "ens5" oif "ens4" accept
		log prefix "--nftables-drop-forward--"
	}

	chain output {
		type filter hook output priority filter; policy drop;
		ct state established,related accept
		ct state new accept
		log prefix "--nftables-drop-output--"
	}
}
table ip nat {
	chain postrouting {
		type nat hook postrouting priority srcnat; policy accept;
		oif "ens4" masquerade
	}
}

Simple Dual Stack Firewall

table inet filter {
	chain input {
		type filter hook input priority filter; policy drop;
		ct state established,related accept
		ct state new iif "ens3" tcp dport 22 accept
		ct state new iif "ens4" accept
		ct state new iifname "lo" accept
		ip6 nexthdr ipv6-icmp accept
		log prefix "--nftables-drop-input--"
	}

	chain forward {
		type filter hook forward priority filter; policy drop;
		ct state established,related accept
		ct state new iif "ens4" oif "ens3" accept
		log prefix "--nftables-drop-forward--"
	}

	chain output {
		type filter hook output priority filter; policy drop;
		ct state established,related accept
		ip6 nexthdr ipv6-icmp accept
		ct state new accept
		log prefix "--nftables-drop-output--"
	}
}
table ip nat {
	chain postrouting {
		type nat hook postrouting priority srcnat; policy accept;
		oif "ens3" masquerade
	}
}