Cómo instalar y configurar Fail2ban en Alma Linux 8

Cómo instalar y configurar Fail2ban en Alma Linux 8

Fail2ban es un sistema de prevenci√≥n de intrusiones gratuito y de c√≥digo abierto escrito en Python. Se utiliza para proteger su sistema contra ataques de fuerza bruta. Supervisa continuamente los archivos de registro SSH (y otros) para los intentos de autenticaci√≥n, despu√©s de un n√ļmero espec√≠fico de intentos de contrase√Īa incorrecta, Fail2Ban proh√≠be la direcci√≥n IP del cliente. Se puede usar para proteger varios servicios, incluidos SSH, vsftpd, Apache y Webmin.

En este tutorial, le mostraré cómo instalar el firewall Fail2Ban en Alma Linux 8.

requisitos previos

  • Un servidor que ejecuta Alma Linux 8.
  • Una contrase√Īa de root est√° configurada en el servidor.

Verificar la instalación del cortafuegos

De forma predeterminada, el paquete Firewalld viene preinstalado en Alma Linux 8. Primero, deber√° verificar si se est√° ejecutando o no. Puedes comprobarlo con el siguiente comando:

systemctl status firewalld

Si firewalld no se est√° ejecutando, obtendr√° el siguiente resultado:

? firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: man:firewalld(1)

Ahora, inicie el servicio firewalld con el siguiente comando:

systemctl start firewalld

Puede verificar el estado del firewalld usando el siguiente comando:

systemctl status firewalld

Debería ver el siguiente resultado:

? firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
   Active: active (running) since Sat 2022-02-19 08:57:14 UTC; 40s ago
     Docs: man:firewalld(1)
 Main PID: 7214 (firewalld)
    Tasks: 2 (limit: 23696)
   Memory: 27.9M
   CGroup: /system.slice/firewalld.service
           ??7214 /usr/libexec/platform-python -s /usr/sbin/firewalld --nofork --nopid

Feb 19 08:57:14 linux systemd[1]: Starting firewalld - dynamic firewall daemon...
Feb 19 08:57:14 linux systemd[1]: Started firewalld - dynamic firewall daemon.

Ahora, enumere todos los servicios configurados por firewalld usando el siguiente comando:

firewall-cmd --list-all

Debería ver el siguiente resultado:

public (active)
  target: default
  icmp-block-inversion: no
  interfaces: eth0 eth1
  sources: 
  services: cockpit dhcpv6-client ssh
  ports: 
  protocols: 
  forward: no
  masquerade: no
  forward-ports: 
  source-ports: 
  icmp-blocks: 
  rich rules: 

Instalar Fail2Ban

De forma predeterminada, el paquete Fail2Ban no est√° disponible en el repositorio predeterminado de Alma Linux. Por lo tanto, deber√° instalarlo desde el repositorio de EPEL. Puede instalar el repositorio EPEL con el siguiente comando:

dnf install epel-release -y

Una vez que se instala el repositorio EPEL, puede instalar el firewall Fail2Ban con el siguiente comando:

dnf install fail2ban fail2ban-firewalld -y

Una vez completada la instalación, inicie y habilite el servicio Fail2Ban con el siguiente comando:

systemctl start fail2ban
systemctl enable fail2ban

Puede verificar el estado del servicio fail2ban ejecutando el comando:

systemctl status fail2ban

Debería ver el siguiente resultado:

? fail2ban.service - Fail2Ban Service
   Loaded: loaded (/usr/lib/systemd/system/fail2ban.service; disabled; vendor preset: disabled)
   Active: active (running) since Sat 2022-02-19 08:58:34 UTC; 6s ago
     Docs: man:fail2ban(1)
  Process: 7838 ExecStartPre=/bin/mkdir -p /run/fail2ban (code=exited, status=0/SUCCESS)
 Main PID: 7840 (fail2ban-server)
    Tasks: 3 (limit: 23696)
   Memory: 10.8M
   CGroup: /system.slice/fail2ban.service
           ??7840 /usr/bin/python3.6 -s /usr/bin/fail2ban-server -xf start

Feb 19 08:58:34 linux systemd[1]: Starting Fail2Ban Service...
Feb 19 08:58:34 linux systemd[1]: Started Fail2Ban Service.
Feb 19 08:58:35 linux fail2ban-server[7840]: Server ready

Configurar Fail2Ban

El archivo de configuración principal de Fail2Ban se encuentra en /etc/fail2ban/jail.conf. Es una buena idea crear una copia del archivo de configuración principal. Puedes crearlo con el siguiente comando:

cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

De forma predeterminada, Fail2Ban utiliza el cortafuegos Iptables. Para habilitar el soporte de firewalld, ejecute el siguiente comando:

mv /etc/fail2ban/jail.d/00-firewalld.conf /etc/fail2ban/jail.d/00-firewalld.local

A continuación, reinicie el servicio Fail2Ban para aplicar los cambios:

systemctl restart fail2ban

SSH seguro con Fail2Ban

De forma predeterminada, Fail2Ban no está configurado para bloquear direcciones IP remotas. Deberá configurar el archivo de configuración de la cárcel Fail2Ban para cada servicio que desee proteger.

Para proteger el servicio SSH, cree un archivo de configuración de cárcel para SSH con el siguiente comando:

nano /etc/fail2ban/jail.d/sshd.local

Agregue las siguientes líneas: Anuncio

# This configuration will block the remote host for 2 hours after 3 failed SSH login attempts. 
[sshd]
enabled = true
bantime = 2h
maxretry = 3

Guarde y cierre el archivo cuando haya terminado, luego reinicie el servicio SSH para aplicar los cambios:

systemctl restart fail2ban

Ahora puede verificar la configuración de la cárcel con el siguiente comando:

fail2ban-client status

Obtendr√° la c√°rcel configurada en el siguiente resultado:

Status
|- Number of jail:	1
`- Jail list:	sshd

Para verificar la c√°rcel SSH en busca de cualquier IP prohibida, ejecute el siguiente comando:

fail2ban-client status sshd

Obtendr√° toda la lista de IP prohibidas en el siguiente resultado: Anuncio

Status for the jail: sshd
|- Filter
|  |- Currently failed:	6
|  |- Total failed:	15
|  `- Journal matches:	_SYSTEMD_UNIT=sshd.service + _COMM=sshd
`- Actions
   |- Currently banned:	2
   |- Total banned:	2
   `- Banned IP list:	96.9.67.48 43.154.142.8

Si desea desbanear la dirección IP manualmente, ejecute el siguiente comando:

fail2ban-client unban remote-ip-address

Conclusión

En la guía anterior, explicamos cómo instalar Fail2Ban en Alma Linux 8. También explicamos cómo usar Fail2Ban para proteger el servicio SSH. Ahora puede implementar Fail2Ban en el entorno de producción para proteger su sistema de ataques de fuerza bruta.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *