Add nftables.conf workstation firewall config

This commit is contained in:
Anthony Rose 2020-06-11 15:44:46 +01:00
parent 74210dcea8
commit 840147f9d6

View file

@ -0,0 +1,43 @@
#!/usr/sbin/nft -f
flush ruleset
table inet filter {
chain input {
type filter hook input priority 0; policy accept;
# Accept any localhost and libvirt traffic.
iif "lo" accept
iif "virbr0" accept
# Accept traffic originated from us.
ct state established,related accept
# Open ports for public services.
tcp dport ssh ct state new accept
tcp dport 8000 ct state new accept # Python HTTP server.
# Accept neighbour discovery otherwise IPv6 connectivity breaks.
ip6 nexthdr icmpv6 icmpv6 type { nd-neighbor-solicit, nd-router-advert, nd-neighbor-advert } accept
# Count and drop any other traffic.
counter drop
}
chain forward {
type filter hook forward priority 0; policy accept;
}
chain output {
type filter hook output priority 0; policy accept;
}
}
table ip nat {
chain postrouting {
type nat hook postrouting priority 100;
# Masquerade NAT traffic (useful for VMs).
masquerade
}
}