❄️ Dotfiles for our NixOS system configuration.

chore(firewall): whatever, let's just go without comments

Chloe 9d64a793 aad00b94

Changed files
+2 -1
services
fail2ban
+2 -1
services/fail2ban/default.nix
···
# Report IP to AbuseIPDB, reading API key from Agenix secret file
# Uses double quotes to allow shell expansion of $(cat /run/agenix/abuseipdb)
# Sleep 12 seconds to respect AbuseIPDB rate limit (~5 requests per minute)
-
actionban = sleep 12; curl --fail 'https://api.abuseipdb.com/api/v2/report' -H 'Accept: application/json' -H "Key: $(cat /run/agenix/abuseipdb)" --data-urlencode 'ip=<ip>' --data-urlencode 'comment=<matches>' --data 'categories=<abuseipdb_category>'
actionstart =
actionstop =
···
# Report IP to AbuseIPDB, reading API key from Agenix secret file
# Uses double quotes to allow shell expansion of $(cat /run/agenix/abuseipdb)
# Sleep 12 seconds to respect AbuseIPDB rate limit (~5 requests per minute)
+
# Note: Don't use <matches> - fail2ban's wrapper causes issues with multiline content
+
actionban = sleep 12; curl --fail 'https://api.abuseipdb.com/api/v2/report' -H 'Accept: application/json' -H "Key: $(cat /run/agenix/abuseipdb)" --data-urlencode 'ip=<ip>' --data 'categories=<abuseipdb_category>'
actionstart =
actionstop =