IPv6 Firewall Router: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
 
(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
	}
}