Cómo instalar Fail2Ban para proteger SSH en CentOS/RHEL 8

Cómo instalar Fail2Ban para proteger SSH en CentOS/RHEL 8

Fail2ban. es una herramienta de prevención de intrusiones gratuita, de código abierto y ampliamente utilizada que analiza los archivos de registro en busca de direcciones IP que muestren señales maliciosas, como demasiadas fallas de contraseña, y mucho más, y las prohíbe (actualiza las reglas del firewall para rechazar las direcciones IP). De forma predeterminada, se envía con filtros para varios servicios, incluido sshd.

Lea también. Configuración inicial del servidor con CentOS/RHEL 8

En este artículo, explicaremos cómo instalar y configurar fail2ban. para proteger SSH. y mejorar la seguridad del servidor SSH. contra ataques de fuerza bruta en CentOS/RHEL 8.

Instalación de Fail2ban en CentOS/RHEL 8

El paquete fail2ban. no está en los repositorios oficiales pero está disponible en el repositorio EPEL. Después de iniciar sesión en su sistema, acceda a una interfaz de línea de comandos, luego habilite el repositorio EPEL en su sistema como se muestra.

# dnf install epel-release O # dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm  Instale EPEL Repo en CentOS y RHEL 8  Instalar EPEL Repo en CentOS y RHEL 8 Instale EPEL Repo en CentOS y RHEL 8

Luego, instale el paquete Fail2ban. ejecutando el siguiente comando.

# dnf install fail2ban  Instalar Fail2ban en CentOS y RHEL 8  Instalar Fail2ban en CentOS y RHEL 8 Instale Fail2ban en CentOS y RHEL 8

Configuración de Fail2ban para proteger SSH

freestar.config.enabled_slots.push

Los archivos de configuración fail2ban. se encuentran en el directorio /etc/fail2ban/ y los filtros se almacenan en /etc directorio/fail2ban/filter.d/ (el archivo de filtro para sshd es /etc/fail2ban/filter.d/sshd.conf. .

La configuración global el archivo para el servidor fail2ban es /etc/f ail2ban/jail.conf. sin embargo, no se recomienda modificar este archivo directamente, ya que probablemente se sobrescribirá o mejorará en caso de una actualización del paquete en el futuro.

Como alternativa, se recomienda crear y agregar sus configuraciones en un archivo jail.local. o archivos .conf separados en el directorio /etc/fail2ban/jail.d/. Tenga en cuenta que los parámetros de configuración establecidos en jail.local. anularán lo que esté definido en jail.conf.

Para este artículo, crearemos un archivo separado llamado jail.local. en el directorio /etc/fail2ban/ como se muestra.

# vi/etc/fail2ban/jail.local

Una vez que el archivo está abra, copie y pegue la siguiente configuración en él. La sección [DEFAULT] contiene opciones globales y [sshd] contiene parámetros para la cárcel sshd.

[DEFAULT] ignoreip = 192.168.56.2/24 bantime = 21600 findtime = 300 maxretry = 3 banaction = iptables-multiport backend = systemd [sshd] enabled = true  Configuración Fail2ban  Configuración Fail2ban Configuración Fail2ban

Expliquemos brevemente las opciones en la configuración anterior:

  • ignoreip. especifica la lista de direcciones IP o nombres de host que no se deben prohibir.
  • bantime. especifica la cantidad de segundos que un host está prohibido (es decir, la duración efectiva de la prohibición).
  • maxretry. specif Es el número de fallas antes de que un host sea baneado.
  • findtime. fail2ban bloqueará un host si ha generado “ maxretry. durante el último ” findtime. ”segundos.
  • banaction. acción de prohibición.
  • backend. especifica el backend utilizado para obtener la modificación del archivo de registro.

La configuración anterior, por lo tanto, significa si una IP ha fallado 3. veces en los últimos 5. minutos, prohíbalo durante 6. horas e ignore la dirección IP 192.168.56.2.

A continuación, inicie y habilite fail2ban. servicio por ahora y verifique si está funcionando usando el siguiente comando systemctl.

# systemctl start fail2ban # systemctl enable fail2ban # systemctl status fail2ban  Iniciar el servicio Fail2ban  Iniciar el servicio Fail2ban Iniciar el servicio Fail2ban

Supervisión de la dirección IP fallida y prohibida mediante fail2ban-client

Después de configurar fail2ban. para proteger sshd. puede monitorear direcciones IP fallidas y prohibidas usando el fail2ban-client. Para ver el estado actual del servidor fail2ban, ejecute el siguiente comando.

# fail2ban-client status Verificar estado de la cárcel Fail2ban Comprobar el estado de la cárcel de Fail2ban Comprobar el estado de la cárcel de Fail2ban

Para supervisar la cárcel sshd. ejecute.

# fail2ban-client status sshd  Supervisar los inicios de sesión fallidos de SSH con Fail2ban  Supervisar los inicios de sesión fallidos de SSH con Fail2ban Supervisar los inicios de sesión fallidos de SSH con Fail2ban

Para desbloquear una dirección IP en fail2ban (en todas las cárceles y base de datos), ejecute el siguiente comando.

# fail2ban-client unban 192.168.56.1

Para obtener más información sobre fail2ban, lea las siguientes páginas de manual.

# man jail.conf # man fail2ban-client

¡Eso resume esta guía! Si tiene alguna pregunta o pensamiento que desee compartir sobre este tema, no dude en comunicarse con nosotros a través del formulario de comentarios a continuación.