Cuantas veces nos encontramos con ataques en nuestros equipos, tratando de adivinar el password de un usuario. Bueno existe la forma de bloquear un acceso por un tiempo limitado.
Primero editamos el archivo /etc/pam.d/password-auth (esto solo bloqueara los accesos por ssh)
Y anexamos la linea:
auth required pam_tally2.so deny=3 unlock_time=60 quiet
unlock_time: Tiempo que debe transcurrir para desbloquear la cuenta en segundos.
deny: Cuantas veces se debe de equivocar al introducir la clave para bloquear la cuenta.
%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth required pam_env.so
auth required pam_tally2.so deny=3 unlock_time=60 quiet
auth sufficient pam_unix.so nullok try_first_pass
auth requisite pam_succeed_if.so uid >= 1000 quiet_success
auth required pam_deny.so
account required pam_unix.so
account sufficient pam_localuser.so
account sufficient pam_succeed_if.so uid < 1000 quiet
account required pam_permit.so
password requisite pam_pwquality.so try_first_pass retry=3 authtok_type=
password sufficient pam_unix.so sha512 shadow nullok try_first_pass use_authtok
password required pam_deny.so
session optional pam_keyinit.so revoke
session required pam_limits.so
-session optional pam_systemd.so
session [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session required pam_unix.so
Y eso es todos, podemos revisar los intentos fallidos mediante este comando
pam_tally2
[root@server~]# pam_tally2
Login Failures Latest failure From
root 2 11/13/14 12:15:22 192.168.1.200
Sólo se registraran los usuarios existentes.