Tengo un servidor Linux y utilizo webmin para la gestión del mismo. Quiero proteger el acceso a webmin ante ataques de fuerza bruta. ¿Como puedo bloquear los intentos fallidos de login en webmin?. Necesito proteger mi server de posibles atacantes y banear sus IPs, ¿como lo hago?, ¿que software necesito?. ¿Como proteger acceso a webmin con Fail2ban?.
Si no tienes instalado Fail2ban, puedes revisar la siguiente entrada, donde explico como realizar la instalación de Fail2ban y la configuración del plugin para WordPress.
Proteger acceso a Webmin con Fail2ban
En esta entrada respondemos a estas preguntas con la mejor solución para proteger webmin contra ataques de fuerza bruta. Este tutorial de seguridad está destinado a aquellos sysadmins que trabajan con Linux y webmin.
Requisitos previos:
- Servidor Linux (probado en Debian 8 Jessie)
- Webmin (probado en versión 1.870)
- Servidor http Apache2 (probado en 2.4.10-10+deb8u8)
Crear Jail en Fail2ban
Creamos el jail en fail2ban que se encargará de definir los parámetros que se emplearán a la hora de banear alguna IP, por ejemplo; número de intentos, tipo de filtro, tiempo de baneo, etc.. En mi caso he creado el archivo webmin.conf dentro de /etc/fail2ban/jail.d con el siguiente contenido.
1 2 3 4 5 6 7 |
[webmin-auth] enabled = true # Indicamos que el jail está habilitado port = 10000 # Puerto que vamos a bloquear filter = webmin-auth # Nombre del filtro que vamos a aplicar logpath = /var/log/auth.log # Log donde se registran los intentos de acceso en webmin, podría variar según la distribución de linux maxretry = 2 # Número de intentos para banear IP |
Por último reiniciamos fail2ban para que los cambios surtan efecto.
1 |
/etc/init.d/fail2ban restart |
Para probar el funcionamiento de fail2ban podemos intentar loguearnos desde algún dispositivo a nuestro servidor, comprobaremos que, después de 2 intentos fallidos, nuestra IP quedará bloqueada durante el tiempo que hemos elegido en el puerto indicado.