Cómo instalar y configurar Fail2ban en Ubuntu 18.04 LTS

27 feb 2021 3 min di lettura
Cómo instalar y configurar Fail2ban en Ubuntu 18.04 LTS
Indice dei contenuti

Introducción

Cualquier servicio expuesto a la red puede ser un objetivo potencial. Podemos notar fácilmente numerosos intentos de conexión no programados al leer los archivos de registro de nuestro servidor.

Fail2ban es una herramienta que puede ayudarnos a monitorear y bloquear todas las conexiones no autorizadas a nuestro servidor.

Fail2ban modifica automáticamente la configuración del firewall de IPtables si es necesario, para bloquear direcciones IP no autorizadas.

En esta guía, le mostraremos cómo instalar y usar Fail2ban en un servidor Ubuntu 18.04 LTS.

Si su intención es instalar Fail2ban en un servidor remoto, continúe leyendo; de lo contrario, si desea instalar Fail2ban en su computadora local, omita el primer párrafo "Conectando al servidor" y lea el siguiente.

Conexión al servidor

Para acceder al servidor, necesita conocer la dirección IP. También necesitará la contraseña para la autenticación.

Para conectarse al servidor como root, escriba este comando:

ssh root@IP_DEL_SERVER

A continuación, se le pedirá que ingrese la contraseña del usuario root.

Si no usa el usuario root, puede iniciar sesión con otro nombre de usuario usando el mismo comando, luego cambie el primer parámetro:

ssh VOSTRO_UTENTE@IP_DEL_SERVER

Luego se le pedirá que ingrese su contraseña de usuario.

Ahora está conectado a su servidor, está listo para iniciar la instalación de Fail2ban.

Instalar Fail2ban

Fail2ban está disponible en los repositorios predeterminados de Ubuntu, por lo que se puede instalar fácilmente a través de apt:

sudo apt update
sudo apt install fail2ban

Podemos encontrar los archivos de configuración de Fail2ban en el directorio /etc /fail2ban. El archivo principal para modificar es jail.conf.

jail.conf pueden ser sobrescritos por las actualizaciones de paquetes, por lo que recomiendo hacer una copia de este archivo que llamaremos jail.local, esto va a sobrescribir el original. De esta forma no tendremos problemas incluso después de las actualizaciones del paquete Fail2ban.

La sección principal de jail.conf (jail.local, nuestra copia) se llama [DEFAULT]. A continuación, encontramos las distintas secciones de los servicios individuales, como [sshd].

Creemos nuestro archivo jail.local desde la terminal:

sudo nano /etc/fail2ban/jail.local

Peguemos el siguiente texto:

[DEFAULT]
 # Ban hosts for one hour:
 bantime = 3600

 # Override /etc/fail2ban/jail.d/00-firewalld.conf:
 banaction = iptables-multiport

 [sshd]
 enabled = true

Guarde y cierre el archivo.

Hemos configurado un nuevo tiempo bantime predeterminado de una hora para todos los servicios.

Ahora podemos reiniciar el servicio Fail2ban usando systemctl:

sudo systemctl restart fail2ban

Para verificar el estado de Fail2ban:

sudo fail2ban-client status

Para obtener información más detallada, como la lista de direcciones IP prohibidas, emita este comando:

sudo fail2ban-client status sshd

Para monitorear las acciones recientes de Fail2ban:

sudo tail -F /var/log/fail2ban.log

Configuración

A continuación se ofrecen algunos consejos para configurar Fail2ban.

Abramos el archivo jail.local nuevamente:

sudo nano /etc/fail2ban/jail.local

En la sección [PREDETERMINADO], si queremos recibir correos electrónicos de notificación de Fail2ban, agregue los siguientes elementos:

destemail = [email protected]
 action = %(action_mwl)s

Podemos agregar una dirección IP permanente, como la de nuestro equipo, para que sea ignorada, para que nunca sea bloqueada:

ignoreip = TUO_IP

De forma predeterminada, el puerto utilizado para las conexiones ssh es el 22. Si usa un puerto diferente, necesita cambiar la configuración:

En la sección [sshd], en enabled = true agregamos el puerto:

port = LA_TUA_PORTA

Agregamos la ruta del archivo de registro que vamos a utilizar:

logpath = /var/log/auth.log

Podemos cambiar el número de intentos de inicio de sesión antes de ser baneado:

maxretry = 3

Resumen:


[DEFAULT]
 # Ban hosts for one hour:
 bantime = 3600
 destemail = [email protected]
 action = %(action_mwl)s
 ignoreip = TUO_IP

 # Override /etc/fail2ban/jail.d/00-firewalld.conf:
 banaction = iptables-multiport

 [sshd]
 enabled = true
 port = LA_TUA_PORTA
 logpath = /var/log/auth.log
 maxretry = 3

Si desea establecer una prohibición permanente, cambie el valor del parámetro bantime a -1:

...
 bantime = -1...

Guarde y cierre el archivo.

Reinicie Fail2ban:

sudo service fail2ban restart

Para verificar el estado de Fail2ban:

sudo fail2ban-client status

Desbloquear una dirección IP

Para desbloquear una dirección IP manualmente, escriba el siguiente comando desde el terminal:

fail2ban-client set sshd unbanip INDIRIZZO_IP

Conclusión

La instalación y configuración de Fail2ban en Ubuntu 18.04 LTS ha finalizado.

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.