Blame SPECS/main.nft

Packit c07a97
# Sample configuration for nftables service.
Packit c07a97
# Load this by calling 'nft -f /etc/nftables/main.nft'.
Packit c07a97
Packit c07a97
# Note about base chain priorities:
Packit c07a97
# The priority values used in these sample configs are
Packit c07a97
# offset by 20 in order to avoid ambiguity when firewalld
Packit c07a97
# is also running which uses an offset of 10. This means
Packit c07a97
# that packets will traverse firewalld first and if not
Packit c07a97
# dropped/rejected there will hit the chains defined here.
Packit c07a97
# Chains created by iptables, ebtables and arptables tools
Packit c07a97
# do not use an offset, so those chains are traversed first
Packit c07a97
# in any case.
Packit c07a97
Packit c07a97
# drop any existing nftables ruleset
Packit c07a97
flush ruleset
Packit c07a97
Packit c07a97
# a common table for both IPv4 and IPv6
Packit c07a97
table inet nftables_svc {
Packit c07a97
Packit c07a97
	# protocols to allow
Packit c07a97
	set allowed_protocols {
Packit c07a97
		type inet_proto
Packit c07a97
		elements = { icmp, icmpv6 }
Packit c07a97
	}
Packit c07a97
Packit c07a97
	# interfaces to accept any traffic on
Packit c07a97
	set allowed_interfaces {
Packit c07a97
		type ifname
Packit c07a97
		elements = { "lo" }
Packit c07a97
	}
Packit c07a97
Packit c07a97
	# services to allow
Packit c07a97
	set allowed_tcp_dports {
Packit c07a97
		type inet_service
Packit c07a97
		elements = { ssh, 9090 }
Packit c07a97
	}
Packit c07a97
Packit c07a97
	# this chain gathers all accept conditions
Packit c07a97
	chain allow {
Packit c07a97
		ct state established,related accept
Packit c07a97
Packit c07a97
		meta l4proto @allowed_protocols accept
Packit c07a97
		iifname @allowed_interfaces accept
Packit c07a97
		tcp dport @allowed_tcp_dports accept
Packit c07a97
	}
Packit c07a97
Packit c07a97
	# base-chain for traffic to this host
Packit c07a97
	chain INPUT {
Packit c07a97
		type filter hook input priority filter + 20
Packit c07a97
		policy accept
Packit c07a97
Packit c07a97
		jump allow
Packit c07a97
		reject with icmpx type port-unreachable
Packit c07a97
	}
Packit c07a97
}
Packit c07a97
Packit c07a97
# By default, any forwarding traffic is allowed.
Packit c07a97
# Uncomment the following line to filter it based
Packit c07a97
# on the same criteria as input traffic.
Packit c07a97
#include "/etc/nftables/router.nft"
Packit c07a97
Packit c07a97
# Uncomment the following line to enable masquerading of
Packit c07a97
# forwarded traffic. May be used with or without router.nft.
Packit c07a97
#include "/etc/nftables/nat.nft"