<%- end %>
}
+<%- end %>
+
+<%- node[:networking][:firewall][:helpers].each do |helper| %>
+ ct helper <%= helper[:name] %> {
+ type "<%= helper[:helper] %>" protocol <%= helper[:protocol] %>
+ }
+
<%- end %>
chain log-and-drop {
limit rate 1/second log
ip saddr @ip-blocklist jump log-and-drop
ip6 saddr @ip6-blocklist jump log-and-drop
- ct state { established, related } accept
-
- icmp type { destination-unreachable } accept
icmp type { echo-request } update @ratelimit-icmp-echo-ip { ip saddr limit rate 1/second } accept
icmp type { echo-request } drop
icmpv6 type { echo-request } update @ratelimit-icmp-echo-ip6 { ip6 saddr limit rate 1/second } accept
icmpv6 type { echo-request } drop
+ ct state { established, related } accept
+
meta l4proto { icmp, icmpv6 } jump log-and-drop
tcp flags & (fin|syn|rst|psh|ack|urg) == fin|psh|urg jump log-and-drop