GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo instalar y configurar Fail2Ban en Ubuntu 20.04

¿Alguna vez creó un servidor web, abrió la terminal y notó la cantidad de intentos de inicio de sesión mientras estaba desconectado? Los atacantes utilizan un método llamado "fuerza bruta". La fuerza bruta es un método para obtener acceso a un servidor web ingresando contraseñas aleatorias, utilizando un script, con la esperanza de obtener acceso.

Para ayudar a prevenir esto, usamos una herramienta llamada Fail2Ban.

¿Qué es Fail2Ban?

Fail2Ban es un marco de software de prevención de intrusiones que protege los servidores informáticos de los ataques de fuerza bruta. Escrito en el lenguaje de programación Python, puede ejecutarse en sistemas POSIX que tengan una interfaz para un sistema de control de paquetes o un firewall instalado localmente, por ejemplo, iptables o TCP Wrapper. — Wikipedia

Instalando Fail2Ban

En esta guía, cubriremos la instalación y configuración de Fail2Ban en un servidor web Ubuntu 20.04.

Paso 1:actualice el sistema e instale Fail2Ban

Ejecutemos nuestro comando de actualización.

$ sudo apt update && sudo apt upgrade -y

Ahora instalemos Fail2Ban.

$ sudo apt install fail2ban

Una vez instalado, Fail2Ban debería iniciarse automáticamente. Por si acaso, verifiquemos su estado usando el siguiente comando para estar seguros.

$ sudo systemctl status fail2ban

Nuestra instalación de Fail2Ban está instalada y activa. :)

Paso 2:configurar Fail2Ban

Al instalar Fail2Ban, el script crea dos archivos de configuración, /etc/fail2ban/fail.conf/etc/fail2ban/fail.d/defaults-debian.conf . Cualquier cambio en estos archivos tiene la posibilidad de sobrescribirse durante las actualizaciones del paquete.

Fail2ban lee los archivos de configuración en este orden. El .local archivo anula la configuración de .cong archivo.

/etc/fail2ban/jail.conf

/etc/fail2ban/jail.d/*.conf

/etc/fail2ban/jail.local

/etc/fail2ban/jail.d/*.local

La forma más eficiente de configurar Fail2Ban será copiando el contenido de jail.confjail.local luego modifique el archivo local.

Paso 2.1 — Crear nuestro archivo local y configurar el servidor

Ahora copiemos nuestro jail.conf archivo a nuestro jail.local archivo.

$ sudo cp /etc/fail2ban/jail.{conf,local}

Después de ingresar este comando, la terminal abrirá inmediatamente una nueva línea.*

Configure el servidor Fail2Ban abriendo el jail.local archivo con nano o su editor de texto favorito.

$ sudo nano /etc/fail2ban/jail.local

Ahora deberías estar en jail.local y vea los comentarios que describen lo que hace cada configuración.

Paso 2.2:Lista blanca de direcciones IP

Las direcciones IP, los rangos y los hosts que desea excluir de la prohibición deben agregarse a ignoreip directiva.

Descomente (elimine el símbolo #) la línea ignoreip y agregue sus direcciones IP separadas por un espacio.

Paso 2.3:configuración de reglas de prohibición

Unas pocas líneas debajo del comentario ignoreip, encontrará bantimefindtimemaxretry .

bantime es el período de tiempo que la IP está prohibida. El tiempo de prohibición predeterminado es de 10 minutos. Lo más probable es que desee un bantime más prolongado. . Puede prohibir a un usuario de forma permanente mediante el uso de un número negativo. Si no usa un sufijo (es decir, 10 en lugar de 10d), el tiempo será en segundos. Puede configurar este tiempo para la duración que desee, usaremos 10d.

bantime = 10d

findtime es el tiempo que transcurre entre el número de fallas antes de que se prohíba la IP. Esto es diferente de maxretry ya que esto no bloquea en función de la cantidad de intentos de inicio de sesión, en lugar de la cantidad sucesiva.

finetime = 5m

maxretry es el número de inicios de sesión fallidos antes de que se prohíba la IP. Nuevamente, puede configurar esto a su gusto.

maxretry = 5

Paso 2.4:Notificaciones por correo electrónico

Fail2Ban se puede configurar para enviar alertas por correo electrónico cuando se ha prohibido una IP. Debe tener SMTP configurado en su servidor web. El primer paso es que necesitamos cambiar el comentario de acción.

action = %(action_MW)s

Esto prohíbe la IP y envía una alerta por correo electrónico con un informe whois. Si desea incluir registros en el correo electrónico, use %(action_MWl)s en su lugar.

También deberá ajustar las direcciones de correo electrónico de envío y recepción para que el sistema le avise correctamente.

destemail = [email protected]
sender = [email protected]

Paso 2.5:cárceles

Una cárcel en Fail2Ban es una combinación de un filtro y una o varias acciones. Un filtro define una expresión regular que coincide con un patrón correspondiente a un intento de inicio de sesión fallido u otra actividad sospechosa. Las acciones definen comandos que se ejecutan cuando el filtro detecta una dirección IP abusiva. — Plesk

Fail2Ban viene con una variedad de cárceles para diferentes servicios. Incluyendo la opción de crear los tuyos propios.

Una instalación predeterminada de Fail2Ban tiene una cárcel ssh habilitada. Para habilitar una cárcel, deberá agregar enabled = true después del título de la cárcel. Usando OpenWebMail como ejemplo:

[openwebmail]
enabled = true
port = http,https
logpath = /var/log/openwemail.log

Si desea establecer reglas de prohibición para un servicio, puede hacerlo en el servicio.

[sshd]
enabled = true
maxretry = 5
findtime = 5m
bantime = 10d
ignoreip = 192.169.0.1/8 12.34.56.78

Puede editar filtros en /etc/fail2ban/filter.d directorio.

Paso 3:Reiniciar Fail2Ban

Después de cada instalación y configuración finalizadas, es mejor reiniciar el servicio para que los cambios surtan efecto.

$ sudo systemctl restart fail2ban

Paso 4:línea de comando Fail2ban

Usando la herramienta fail2ban-client puede realizar cambios con el script Fail2Ban. Para usar la línea de comando, use:

$ sudo fail2ban-client [seguido de tu comando]

Para ver las opciones disponibles, use:

$ sudo fail2ban-client -h

Aquí hay algunos comandos útiles:

Desbloquear dirección IP:

$ sudo fail2ban-client set sshd unbanip 12.34.56.789

Prohibir una dirección IP:

$ sudo fail2ban-client set sddh banip 12.34.56.789


Ubuntu
  1. Cómo instalar y configurar Redis en Ubuntu 18.04

  2. Cómo instalar y configurar Redmine en Ubuntu 18.04

  3. Cómo instalar y configurar Fail2ban en Ubuntu 20.04

  4. ¿Cómo instalar y configurar Fail2ban en Ubuntu?

  5. Cómo instalar y configurar Fail2ban en Ubuntu 20.04 LTS

Cómo instalar y configurar Cacti en Ubuntu 20.04

Cómo instalar y configurar Git en Ubuntu 20.04

Instalar y configurar Fail2ban en Ubuntu 20.04

Cómo instalar y configurar OpenVAS 9 en Ubuntu

Cómo instalar y configurar Redis en Ubuntu 20.04

Cómo instalar y configurar Neo4j en Ubuntu 20.04