Prevenir ataques SSH

Si estamos preocupados por la seguridad de nuestros servidores y mas del servicio/protocolo Secure Shell cuando esta relacionado con ataques de fuerza bruta ya sea por medio de diccionarios, entonces debemos de utilizar DenyHosts

, esta aplicación nos permitirá detectar posibles ataques antes de que estos hagan efecto.

 

La manera en que funciona DenyHosts es que monitorea el archivo /var/log/auth.log (en el caso de Debian – Ubuntu…) para detectar errores de autentificación al sistema y despues bajo ciertas reglas bloquer la IP o servicio que queramos mediante el archivo /etc/hosts.deny

Bueno, ahora que conocemos como funciona DenyHosts, es hora de empezar con la instalación, y para variar!! la forma mas sencilla (más que en MS-windows) desde consola (terminal) es con un simple:

apt-get install denyhosts

Despues procedemos con la configuración que se encuentra en /etc/denyhosts.conf algunos de los parametros importantes son:

# Lugar donde se encuentra nuestro archivo de Log
SECURE_LOG = /var/log/auth.log
# Lugar donde se encuentra nuestro archivo de bloqueo de hosts
HOSTS_DENY = /etc/hosts.deny
# El periodo en el que la IP va a ser eliminada de la lista de bloqueo, puede ser en hora (h), dias (d)…
PURGE_DENY = 12h
# Cual servicio queremos que sea bloqueado, puede ser sshd, o ALL para todos
BLOCK_SERVICE = ALL
# Numero de veces de error cuando se ingresa con un usuario NO existente
# Se supone que el root conoce a sus usuarios y no debe de equivocarse
DENY_THRESHOLD_INVALID = 2
# Numero de veces de error con un usuario SI existente en el sistema
DENY_THRESHOLD_VALID = 10
# Numero de veces de error con el usuario ROOT
DENY_THRESHOLD_ROOT = 2
DENY_THRESHOLD_RESTRICTED = 1
WORK_DIR = /var/lib/denyhosts
# Reportar entradas sospechosas
SUSPICIOUS_LOGIN_REPORT_ALLOWED_HOSTS=YES
# Buscar el nombre del host del atacante si este esta disponible
HOSTNAME_LOOKUP=YES
LOCK_FILE = /var/run/denyhosts.pid
# Email para notificar los bloqueos
ADMIN_EMAIL = cliente_at_servidor_dot_com
SMTP_HOST = localhost
SMTP_PORT = 25
SMTP_FROM = DenyHosts
SMTP_SUBJECT = DenyHosts Reporte
SMTP_DATE_FORMAT = %a, %d %b %Y %H:%M:%S %z
AGE_RESET_VALID=5d
AGE_RESET_ROOT=25d
AGE_RESET_RESTRICTED=25d
AGE_RESET_INVALID=10d
DAEMON_LOG = /var/log/denyhosts
DAEMON_SLEEP = 30s
DAEMON_PURGE = 1h

Y listo, reiniciamos el servicio DenyHosts /etc/init.d/denyhosts restart ahora solo falta esperar los correos los cuales llegan con el siguiente formato:

Added the following hosts to /etc/hosts.deny: 200.48.220.4 (mail.epsel.com.pe) 

 

Anuncios
A %d blogueros les gusta esto: