# firewalld config file # default zone # The default zone used if an empty zone string is used. # Default: public DefaultZone=public # Clean up on exit # If set to no or false the firewall configuration will not get cleaned up # on exit or stop of firewalld. # Default: yes CleanupOnExit=yes # Clean up kernel modules on exit # If set to yes or true the firewall related kernel modules will be # unloaded on exit or stop of firewalld. This might attempt to unload # modules not originally loaded by firewalld. # Default: no CleanupModulesOnExit=no # IPv6_rpfilter # Performs reverse path filtering (RPF) on IPv6 packets as per RFC 3704. # Possible values: # - strict: Performs "strict" filtering as per RFC 3704. This check # verifies that the in ingress interface is the same interface # that would be used to send a packet reply to the source. That # is, ingress == egress. # - loose: Performs "loose" filtering as per RFC 3704. This check only # verifies that there is a route back to the source through any # interface; even if it's not the same one on which the packet # arrived. # - strict-forward: This is almost identical to "strict", but does not perform # RPF for packets targeted to the host (INPUT). # - loose-forward: This is almost identical to "loose", but does not perform # RPF for packets targeted to the host (INPUT). # - no: RPF is completely disabled. # # The rp_filter for IPv4 is controlled using sysctl. # Note: This feature has a performance impact. See man page FIREWALLD.CONF(5) # for details. # Default: strict IPv6_rpfilter=strict # IndividualCalls # Do not use combined -restore calls, but individual calls. This increases the # time that is needed to apply changes and to start the daemon, but is good for # debugging. # Default: no IndividualCalls=no # LogDenied # Add logging rules right before reject and drop rules in the INPUT, FORWARD # and OUTPUT chains for the default rules and also final reject and drop rules # in zones. Possible values are: all, unicast, broadcast, multicast and off. # Default: off LogDenied=off # FirewallBackend # Selects the firewall backend implementation. # Choices are: # - nftables (default) # - iptables (iptables, ip6tables, ebtables and ipset) # Note: The iptables backend is deprecated. It will be removed in a future # release. FirewallBackend=nftables # FlushAllOnReload # Flush all runtime rules on a reload. In previous releases some runtime # configuration was retained during a reload, namely; interface to zone # assignment, and direct rules. This was confusing to users. To get the old # behavior set this to "no". # Default: yes FlushAllOnReload=yes # ReloadPolicy # Policy during reload. By default all traffic except for established # connections is dropped while the rules are updated. Set to "DROP", "REJECT" # or "ACCEPT". Alternatively, specify it per table, like # "OUTPUT:ACCEPT,INPUT:DROP,FORWARD:REJECT". # Default: ReloadPolicy=INPUT:DROP,FORWARD:DROP,OUTPUT:DROP ReloadPolicy=INPUT:DROP,FORWARD:DROP,OUTPUT:DROP # RFC3964_IPv4 # As per RFC 3964, filter IPv6 traffic with 6to4 destination addresses that # correspond to IPv4 addresses that should not be routed over the public # internet. # Defaults to "yes". RFC3964_IPv4=yes # StrictForwardPorts # If set to yes, the generated destination NAT (DNAT) rules will NOT accept # traffic that was DNAT'd by other entities, e.g. docker. Firewalld will be # strict and not allow published container ports until they're explicitly # allowed via firewalld. # If set to no, then docker (and podman) integrates seamlessly with firewalld. # Published container ports are implicitly allowed. # Defaults to "no". StrictForwardPorts=no # NftablesFlowtable # This may improve forwarded traffic throughput by enabling nftables flowtable. # It is a software fastpath and avoids calling nftables rule evaluation for # data packets. This only works for TCP and UDP traffic. # The value is a space separated list of interfaces. # Example value "eth0 eth1". # Defaults to "off". NftablesFlowtable=off # NftablesCounters # If set to yes, add a counter to every nftables rule. This is useful for # debugging and comes with a small performance cost. # Defaults to "no". NftablesCounters=no # NftablesTableOwner # If set to yes, the generated nftables rule set will be owned exclusively by # firewalld. This prevents other entities from mistakenly (or maliciously) # modifying firewalld's rule set. If you intentionally modify firewalld's # rules, then you will have to set this to "no". # Defaults to "yes". NftablesTableOwner=yes