GNU/Linux >> Tutoriales Linux >  >> Linux

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 utilizar 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

  • Un servidor que ejecuta Alma Linux 8.
  • Se configura una contraseña raíz 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 la compatibilidad con 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:

# 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:

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.


Linux
  1. Cómo instalar y configurar Nagios en Linux

  2. Cómo instalar y configurar Memcached en Ubuntu Linux

  3. Cómo instalar Fail2ban con Firewalld en Rocky Linux 8

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

  5. Cómo instalar y configurar EMC PowerPath en Linux

Cómo instalar y configurar Perf en distribuciones de Linux

Cómo instalar y configurar Terraform en distribuciones de Linux

Cómo instalar y configurar Gradle en distribuciones de Linux

Cómo instalar y configurar Git en distribuciones de Linux

Cómo instalar y configurar Yarn en distribuciones de Linux

Cómo instalar y configurar Spotify en distribuciones de Linux