mirror of
https://github.com/lxstinthesky/matrix.git
synced 2025-11-07 19:32:44 +00:00
added a fail2ban configuration for ssh
This commit is contained in:
@@ -8,6 +8,7 @@
|
|||||||
PermitRootLogin = "no"; # Disable root login
|
PermitRootLogin = "no"; # Disable root login
|
||||||
PasswordAuthentication = false; # Force SSH key auth only
|
PasswordAuthentication = false; # Force SSH key auth only
|
||||||
PubkeyAuthentication = true; # Enable SSH keys
|
PubkeyAuthentication = true; # Enable SSH keys
|
||||||
|
LogLevel = "VERBOSE"; # More detailed logging, for fail2ban
|
||||||
};
|
};
|
||||||
ports = [ 22 ];
|
ports = [ 22 ];
|
||||||
# using the same key as for initrd
|
# using the same key as for initrd
|
||||||
@@ -16,6 +17,27 @@
|
|||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
services.fail2ban = {
|
||||||
|
enable = true;
|
||||||
|
maxretry = 5; # Ban IP after 5 failures
|
||||||
|
ignoreIP = [
|
||||||
|
|
||||||
|
];
|
||||||
|
bantime = "24h"; # Ban IPs for one day on the first ban
|
||||||
|
bantime-increment = {
|
||||||
|
enable = true; # Enable increment of bantime after each violation
|
||||||
|
multipliers = "1 2 3 4 5 6 7"; # everytime one day more
|
||||||
|
maxtime = "168h"; # Do not ban for more than 1 week
|
||||||
|
overalljails = true; # Calculate the bantime based on all the violations
|
||||||
|
};
|
||||||
|
|
||||||
|
# fail2ban ships with a default sshd jail, we override it here, to be explicit
|
||||||
|
jails.sshd.settings = {
|
||||||
|
port = 22; # explicit
|
||||||
|
maxretry = 5;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
# remote unlock for luks via ssh
|
# remote unlock for luks via ssh
|
||||||
boot.kernelParams = [ "ip=dhcp" ];
|
boot.kernelParams = [ "ip=dhcp" ];
|
||||||
boot.initrd = {
|
boot.initrd = {
|
||||||
|
|||||||
Reference in New Issue
Block a user