Oefenweb.fail2ban

fail2ban

CI Ansible Galaxy

Configura fail2ban en sistemas similares a Debian.

Requisitos

Ninguno

Variables

  • fail2ban_loglevel: [predeterminado: 3, o INFO en versiones más nuevas]: Establece el nivel de salida del log (ej. 1 = ERROR, 2 = WARN, 3 = INFO, 4 = DEBUG)

  • fail2ban_logtarget: [predeterminado: /var/log/fail2ban.log]: Establece el destino del log. Este puede ser un archivo, SYSLOG, STDERR o STDOUT

  • fail2ban_syslog_target: [predeterminado: /var/log/fail2ban.log]:

  • fail2ban_syslog_facility: [predeterminado: 1]:

  • fail2ban_socket: [predeterminado: /var/run/fail2ban/fail2ban.sock]: Establece el archivo de socket, que se usa para comunicarse con el demonio

  • fail2ban_pidfile: [predeterminado: /var/run/fail2ban/fail2ban.pid]: Establece el archivo pid, que se usa para almacenar el ID del proceso del demonio (Sólo funciona en fail2ban >= 0.8.9)

  • fail2ban_dbpurgeage: [predeterminado: 86400]: Establece la antigüedad a la que se deben eliminar las prohibiciones de la base de datos

  • fail2ban_ignoreips: [predeterminado: [127.0.0.1/8]]: Qué dirección IP/máscara CIDR/anfitrión DNS deben ser ignorados por las acciones de fail2ban

  • fail2ban_bantime: [predeterminado: 600]: Establece el tiempo de prohibición

  • fail2ban_maxretry: [predeterminado: 3]: Número máximo de reintentos antes de que el anfitrión sea encarcelado

  • fail2ban_findtime: [predeterminado: 600]: Un anfitrión es prohibido si ha generado fail2ban_maxretry durante el último fail2ban_findtime

  • fail2ban_backend: [predeterminado: auto]: Especifica el backend utilizado para obtener modificaciones de archivos. Para Debian 12, se requiere systemd

  • fail2ban_banaction: [predeterminado: iptables-multiport]: Establece la acción de prohibición global/predeterminada

  • fail2ban_banaction_allports: [predeterminado: iptables-allports]: Establece la acción de prohibición global/predeterminada para todos los puertos

  • fail2ban_mta: [predeterminado: sendmail]: Acción de correo electrónico

  • fail2ban_protocol: [predeterminado: tcp]: Establece el protocolo predeterminado

  • fail2ban_chain: [predeterminado: INPUT]: Especifica la cadena donde se deben agregar saltos en las acciones de iptables-*

  • fail2ban_action: [predeterminado: %(action_)s]: Acción predeterminada. Nota que las variables (incluidas las acciones definidas en otros lugares en los archivos de configuración) deben estar envueltas en estilo python %( y )s para que sean expandidas

  • fail2ban_sendername: [predeterminado: Fail2ban]: El nombre 'de' para los correos electrónicos enviados por acciones mta. NB: Usa fail2ban_sender para establecer la dirección de correo electrónico 'de'.

  • fail2ban_sender: [opcional]: La dirección 'de' para los correos electrónicos enviados por acciones mta.

  • fail2ban_filterd_path: [opcional]: Ruta al directorio que contiene filtros para copiar (nota la barra diagonal al final)

  • fail2ban_actiond_path: [opcional]: Ruta al directorio que contiene acciones para copiar (nota la barra diagonal al final)

  • fail2ban_jaild_path: [opcional]: Ruta al directorio que contiene cárceles para copiar (nota la barra diagonal al final)

  • fail2ban_services [predeterminado ver defaults/main.yml]: Definiciones de servicios

  • fail2ban_services.{n}.name [requerido]: Nombre del servicio (ej. ssh)

  • fail2ban_services.{n}.enabled [predeterminado: true]: Si está habilitado o no

  • fail2ban_services.{n}.* [opcional]: Nombre de la opción

  • fail2ban_services.{n}.*.* [opcional]: Valor de la opción

Para versión >= 0.11.1

  • fail2ban_bantime_increment: [predeterminado: true]: Aumenta el tiempo de prohibición después de haber sido prohibido anteriormente
  • fail2ban_bantime_factor: [predeterminado: 1]: Factor de aumento del tiempo de prohibición para bantime_formula o bantime_multipliers
  • fail2ban_bantime_formula: [predeterminado: 'ban.Time * (1<<(ban.Count if ban.Count<20 else 20)) * banFactor']: Fórmula que se utilizará para calcular el tiempo de prohibición aumentado. Nota que puedes usar bantime_formula o bantime_multipliers mientras que bantime_multipliers tiene prioridad.
  • fail2ban_bantime_overalljails: [predeterminado: false]: Prohíbe IPs para todas las cárceles si se definen múltiples
  • fail2ban_bantime_rndtime: [opcional]: Opción para bots inteligentes que intentan acceder inmediatamente después del tiempo de prohibición
  • fail2ban_bantime_multipliers: [opcional]: Multiplicador a usar en lugar de bantime_formula. Por ejemplo 1 2 4 8 16 32 64. Nota para bantime = 600 y bantime_factor=1 esto sería 600*1*1, 600*1*2...

Dependencias

Ninguna

Ejemplo(s)

Simple

---
- hosts: all
  roles:
    - oefenweb.fail2ban

Habilitar filtro sshd (con configuraciones no predeterminadas)

---
- hosts: all
  roles:
    - oefenweb.fail2ban
  vars:
    fail2ban_services:
      # En versiones anteriores de Fail2Ban, esto se llama ssh
      - name: sshd
        port: 2222
        maxretry: 5
        bantime: -1

Agregar filtros personalizados (desde fuera del rol)

---
- hosts: all
  roles:
    - oefenweb.fail2ban
  vars:
    fail2ban_filterd_path: ../../../files/fail2ban/etc/fail2ban/filter.d/
    fail2ban_services:
      - name: apache-wordpress-logins
        port: http,https
        filter: apache-wordpress-logins
        logpath: /var/log/apache2/access.log
        maxretry: 5
        findtime: 120

Licencia

MIT

Información del autor

Mischa ter Smitten (basado en el trabajo de ANXS)

Comentarios, informes de errores, solicitudes, ...

¡Son bienvenidos!

Acerca del proyecto

Set up fail2ban in Debian-like systems

Instalar
ansible-galaxy install Oefenweb.fail2ban
Licencia
mit
Descargas
351.4k
Propietario