Fail2ban (Español)
Fail2ban escanea los archivos de registro (por ejemplo, /var/log/httpd/error_log
) y prohíbe las IP que muestran signos maliciosos así como la que muestren muchos errores de contraseña, búsqueda de vulnerabilidades, etc. Normalmente, Fail2ban se utiliza para actualizar las reglas del cortafuegos a fin de rechazar las direcciones IP durante un período de tiempo específico, aunque también permite configurar cualquier otra acción (por ejemplo, enviar un correo electrónico).
ignoreip
.Utilización
Configure Fail2ban y active/inicie fail2ban.service
.
fail2ban-client
fail2ban-client permite monitorear un «conjunto de reglas encapsuladas» (en adelante, cápsulas) (recarga, reinicio, estado, etc.). Para ver todas las órdenes disponibles:
$ fail2ban-client
Para ver todas las cápsulas activadas:
# fail2ban-client status
Para verificar el estado de una cápsula, por ejemplo para sshd:
# fail2ban-client status sshd
Status for the jail: sshd |- Filter | |- Currently failed: 1 | |- Total failed: 9 | `- Journal matches: _SYSTEMD_UNIT=sshd.service + _COMM=sshd `- Actions |- Currently banned: 1 |- Total banned: 1 `- Banned IP list: 0.0.0.0
Configuración
Debido a la posibilidad de que el archivo /etc/fail2ban/jail.conf
se sobrescriba o actualice durante una puesta al día de la distribución, se recomienda crear un archivo local . Por ejemplo, para cambiar el tiempo de prohibición predeterminado a 1 día:
O cree archivos separados name.local en el directorio , por ejemplo .
Reinicie fail2ban.service
para aplicar los cambios de configuración.
Activar cápsulas
Por defecto, todas las cápsulas están desactivadas. Añada enabled = true
a la cápsula que desea usar, por ejemplo, para activar la cápsula OpenSSH:
Recibir un correo electrónico de alerta
Si desea recibir un correo electrónico cuando alguien ha sido baneado, debe configurar un cliente SMTP (por ejemplo, msmtp) y cambiar la acción predeterminada, como se indica a continuación.
/etc/fail2ban/jail.local
[DEFAULT] destemail = yourname@example.com sender = yourname@example.com # para prohibir y enviar un correo electrónico con un informe sobre «whois» al correo electrónico. action = %(action_mw)s # hace lo mismo que «action_mw» pero también envía líneas de registro relevantes. #action = %(action_mwl)s
Consejos y trucos
Cápsula SSH personalizada
Edite , agregue esta sección y actualice la lista de direcciones IP confiables en :
Fortalecer el servicio
Actualmente, Fail2ban debe ejecutarse como root. Por lo tanto, es posible que desee considerar fortalecer el proceso con systemd (Español).
Cree un archivo de configuración drop-in para fail2ban.service
:
/etc/systemd/system/fail2ban.service.d/override.conf
[Service] PrivateDevices=yes PrivateTmp=yes ProtectHome=read-only ProtectSystem=strict NoNewPrivileges=yes ReadWritePaths=-/var/run/fail2ban ReadWritePaths=-/var/lib/fail2ban ReadWritePaths=-/var/log/fail2ban ReadWritePaths=-/var/spool/postfix/maildrop ReadWritePaths=-/run/xtables.lock CapabilityBoundingSet=CAP_AUDIT_READ CAP_DAC_READ_SEARCH CAP_NET_ADMIN CAP_NET_RAW
El parámetro de permitirá a Fail2ban el acceso de lectura completa a cada directorio y archivo. Los parámetros y permitirán que Fail2ban funcione en cualquier cortafuegos que tenga una interfaz en línea de órdenes. Consulte capabilities(7) para obtener más información.
Al usar la jerarquía del sistema de archivos será de «solo lectura», permitirá que Fail2ban tenga acceso de escritura en las rutas que considere necesarias.
Cree con la ruta correcta :
Cree el directorio /var/log/fail2ban/
como root.
Finalmente, recargue el demonio de systemd para aplicar los cambios de la unidad y reinicie fail2ban.service
.
Véase también
- Using a Fail2Ban Jail to Whitelist a User
- Optimising your Fail2Ban filters
- Fail2Ban and sendmail
- Fail2Ban and iptables
- Fail2Ban 0.8.3 Howto
- Monitoring the fail2ban log
- Supervisión del registro de fail2ban