El script DenyHosts, es muy popular entre los system administrator de Unix/Linux porque nos permite bloquear automáticamente ataques de fuerza bruta, es decir aquellos que usando un login conocido intentan un diccionario de passwords hasta que dan con una combinación usuario/password válida. El problema radica en que el script sigue una serie de reglas fijas y uno de nuestros desprevenidos usuarios puede disparar una de las alertas y su IP queda automáticamente bloqueada para futuros accesos. Este bloqueo se suele implementar a tavés de la inclusión de /etc/hosts.deny, sin embargo el solamente borrar el IP de /etc/hosts.deny no resuelve el problema ya que DenyHosts guarda sus propios logs y la IP es insertada nuevamente si no la encuentra, porque el script asume que el hacker esta intentando ganar acceso delistando su IP. Entonces, cómo debemos remover una IP válida de DenyHosts, aquí los pasos para Debian/Ubuntu, pero pueden usar el mismo criterio para cualquier otra distribución Linux.
- Detenga el daemon de DenyHosts, puede hacerlo de la siguiente manera: /etc/init.d/denyhosts stop
- Remueva el IP válida de /etc/hosts.deny
- Vaya al directorio donde DenyHosts guarda su data /var/lib/denyhosts, si no tiene ese directorio en su distribución puede saber donde DenyHosts guarda su data ejecutando esta comando: grep ^WORK_DIR /etc/denyhosts.conf
- Busque todas las apariciones de su IP en los archivos de ese directorio, lo anterior lo puede hacer con el comando (donde www.xx.yy.zz es la IP que desea deslistar): grep ww.xx.yy.zz ./*
- Abra con el editor de textos favorito cada uno de los archivos donde aparece y remueva la línea donde aparece listada su IP.
- reinicie DenyHosts: /etc/init.d/denyhosts start
Listo con los sencillos pasos anteriores habrá resuelto su problema de remover un IP válido de DenyHosts.