Cómo instalar Fail2ban en Rocky Linux y Almalinux
- 1321
- 317
- Claudia Baca
Escrito en Pitón, Fail2ban es una fuente gratuita y abierta Sistema de Prevención de Intrusión (IPS) que protege el servidor contra ataques de fuerza bruta.
Después de un número especificado de intentos de contraseña incorrectos, la dirección IP del cliente puede acceder al sistema durante un período especificado o hasta que el administrador del sistema lo desbloquee. De esta manera, el sistema se protege de los repetidos ataques de fuerza bruta de un solo anfitrión.
[También puede que le guste: cómo asegurar y endurecer el servidor OpenSsh]
Fail2ban es altamente configurable y se puede configurar para asegurar una gran cantidad de servicios como Ssh, VSFTPD, apache, y Webmin.
En esta guía, nos centramos en cómo puede instalar y configurar Fail2ban en Rocky Linux y Almalinux.
Paso 1: Asegúrese de que se ejecute Firewalld
Por defecto, Rocoso Viene con Firewalld Running. Sin embargo, si este no es el caso en su sistema, comience Cortafuegos ejecutando:
$ sudo systemctl iniciar firewalld
Luego habilite que comience en el tiempo de arranque:
$ sudo systemctl habilitar firewalld
Luego verifique el estado de Firewalld
$ sudo systemctl status firewalldVerifique el estado de firewalld
Además, puede confirmar todo el Cortafuegos Reglas actualmente se aplican utilizando el comando:
$ sudo firewall-cmd --list-tholLista de reglas de firewalld
Paso 2: Instale Epel en Rocky Linux
Como requisito para la instalación de fail2ban y otros paquetes requeridos, debe instalar el Epel Repositorio que proporciona paquetes adicionales de alta calidad para distribuciones basadas en RHEL.
$ sudo DNF Instalar Epel-LanzamientoInstale Epel en Rocky Linux
Paso 3: Instale Fail2Ban en Rocky Linux
Con Epel Instalado, proceder e instalar fail2ban y el Fail2ban-Firewalld paquete.
$ sudo dnf instalación fail2ban fail2ban-firewalld
Esto instala el servidor Fail2Ban y el componente Firewalld junto con otras dependencias.
Instalar fail2ban en Rocky LinuxCon la instalación de Fail2Ban Complete, inicie el servicio Fail2Ban.
$ sudo systemctl start fail2ban
Y habilite que comience en el tiempo de arranque.
$ sudo systemctl habilitar fail2ban
Puede verificar el estado del servicio Fail2Ban ejecutando el comando:
$ sudo systemctl status fail2ban
La salida es una confirmación de que Fail2Ban se está ejecutando como esperaríamos.
Verifique el estado de Fail2BanPaso 4: Configuración de Fail2Ban en Rocky Linux
Continuando, necesitamos configurar fail2ban para que funcione según lo previsto. Idealmente, editaríamos el archivo de configuración principal - /etc/fail2ban/cárcel.confusión. Sin embargo, esto se desanima. Como solución alternativa, copiará el contenido de la cárcel.Archivo de configuración de conf a celda.local archivo.
$ sudo cp/etc/fail2ban/cárcel.conf/etc/fail2ban/cárcel.local
Ahora, abra el celda.local archivo usando su editor preferido.
$ sudo vim/etc/fail2ban/cárcel.local
Bajo la [POR DEFECTO] Sección, asegúrese de tener la siguiente configuración a medida que aparecen.
bantime = 1h findtime = 1h maxretry = 5
Definamos los atributos:
- El bantime La directiva especifica la duración del tiempo en que un cliente estará prohibido después de los intentos de autenticación fallidos.
- El FindTime La directiva es la duración o el período dentro del cual Fail2Ban considerará al considerar los intentos de contraseña incorrectos repetidos.
- El maxretería El parámetro es el número máximo de intentos de contraseña incorrectos antes de que el cliente remoto se bloquee para acceder al servidor. Aquí, el cliente se bloqueará después de 5 fallas de autenticación.
Por defecto, Fail2ban funciona con iptables. Sin embargo, esto ha sido desaprobado a favor del firewalld. Necesitamos configurar fail2ban para trabajar junto con firewalld en lugar de iptables.
Entonces, ejecute con el comando:
$ sudo MV/etc/fail2ban/cárcel.D/00-Firewalld.conf/etc/fail2ban/cárcel.D/00-Firewalld.local
Para aplicar los cambios, reiniciar Fail2ban:
$ sudo systemctl reiniciar fail2ban
Paso 5: Asegurar el servicio SSH con Fail2Ban
Por defecto, Fail2Ban no bloquea ningún host remoto hasta que habilite la configuración de la cárcel para un servicio que desea asegurar. La configuración de la cárcel se especifica en el /etc/fail2ban/cárcel.d ruta y anulará la configuración especificada en la cárcel.archivo local.
En este ejemplo, crearemos un archivo de configuración de la cárcel para proteger el servicio SSH. Por lo tanto, cree el archivo de cárcel ssh.
$ sudo vim/etc/fail2ban/cárcel.d/sshd.local
A continuación, pegue las siguientes líneas:
[sshd] habilitado = true # anular la configuración global predeterminada # para la cárcel específica sshd bantime = 1d maxretry = 3
En la configuración anterior, se prohibirá a un host remoto acceder al sistema durante 1 día después de 3 intentos de inicio de sesión de SSH fallidos. Guardar los cambios y reiniciar el servicio Fail2Ban.
$ sudo systemctl reiniciar fail2ban
A continuación, verifique el estado de configuración de la cárcel utilizando el fail2ban-client utilidad de línea de comandos.
$ sudo fail2ban-client status
Desde la salida, podemos ver que tenemos 1 cárcel configurada para un servicio llamado 'SSHD'.
Verifique el estado de la cárcel de Fail2BanAdemás, puede confirmar el maxretería Valor de la cárcel SSHD usando la opción Get.
$ sudo fail2ban-client get sshd maxretry 3
El valor impreso 3 debe coincidir con lo que especificó en el SSHD.local archivo.
Paso 6: Prueba de configuración de Fail2Ban
Después de configurar Fail2Ban y crear un archivo de configuración de la cárcel para el servicio SSH, vamos a realizar una ejecución de una prueba y simular 3 inicios de sesión fallidos al especificar una contraseña incorrecta para cada solicitado de contraseña.
Así que dirígete a un sistema remoto de Linux e intenta iniciar sesión usando la contraseña incorrecta. Después de 3 intentos fallidos, la conexión se eliminará y cualquier intento posterior de volver a conectar se bloqueará hasta que la duración de la prohibición vuelva a las.
Prueba de Fail2Ban en LinuxPara recopilar información sobre los sistemas de cliente bloqueados, verifique el estado de la cárcel.
$ sudo fail2ban-client sshdCompruebe el estado del bloque fail2ban
Para desahogar o eliminar al cliente de la cárcel, ejecute el comando:
$ sudo fail2ban-client no 192.168.2.102
Una vez más, verifique el estado de la cárcel para asegurarse de que el cliente no esté incluido en la lista de IP prohibida.
$ sudo fail2ban-client sshdCompruebe la lista de bloques Fail2Ban
Como hemos visto, Fail2ban es una herramienta muy útil para evitar intrusos que buscan violar su sistema Linux. Funciona junto con Firewalld para prohibir los sistemas de clientes durante una duración especificada después de un número específico de intentos de inicio de sesión fallidos. Al hacerlo, proporciona una capa adicional de protección para su servidor Linux.
- « Cómo instalar la pila de lámparas en Almalinux 8.4
- 10 ejemplos de comando SFTP para transferir archivos en servidores remotos en Linux »