]> git.openstreetmap.org Git - chef.git/blobdiff - cookbooks/networking/templates/default/nftables.conf.erb
Fix icmp echo rate limiting
[chef.git] / cookbooks / networking / templates / default / nftables.conf.erb
index 957955af4121d3432a28221d9635c336512fcb67..f1773f384826a905e83dbf91f17b001d7f725d70 100644 (file)
@@ -57,6 +57,13 @@ table inet chef-filter {
 <%- 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
@@ -79,9 +86,6 @@ table inet chef-filter {
     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
 
@@ -89,6 +93,8 @@ table inet chef-filter {
     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