From e6ed60548397627bf10f561f9438201dbba0a36e Mon Sep 17 00:00:00 2001 From: Azat Bahawi Date: Sun, 21 Apr 2024 02:15:42 +0300 Subject: 2024-04-21 --- modules/fail2ban.nix | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 modules/fail2ban.nix (limited to 'modules/fail2ban.nix') diff --git a/modules/fail2ban.nix b/modules/fail2ban.nix new file mode 100644 index 0000000..a0cc2b4 --- /dev/null +++ b/modules/fail2ban.nix @@ -0,0 +1,37 @@ +{ + config, + lib, + this, + ... +}: +with lib; +let + cfg = config.nixfiles.modules.fail2ban; +in +{ + options.nixfiles.modules.fail2ban.enable = mkEnableOption "fail2ban"; + + config = mkIf cfg.enable { + ark.directories = [ "/var/lib/fail2ban" ]; + + services.fail2ban = { + enable = true; + + bantime-increment = { + enable = true; + maxtime = "24h"; + rndtime = "8m"; + }; + + ignoreIP = optionals (hasAttr "wireguard" this) ( + with config.nixfiles.modules.wireguard; + [ + ipv4.subnet + ipv6.subnet + ] + ); + + jails.DEFAULT.settings.blocktype = "DROP"; + }; + }; +} -- cgit v1.2.3