Protección contra flood y raids
Introducción
La protección contra flood y raids defiende a un grupo frente a dos problemas relacionados: un miembro que publica mensajes más rápido de lo que nadie puede leer, y una oleada coordinada de cuentas que se unen a la vez para saturar el chat. Ambos casos se gestionan automáticamente, pero solo después de que un administrador los active. Todas las funciones descritas aquí están desactivadas de forma predeterminada y no realizan ninguna acción hasta que se habilitan para el grupo, así que añadir el bot nunca cambia el comportamiento de tu chat hasta que tú decides que debe hacerlo.
Los dos sistemas actúan en momentos distintos. Anti-flood vigila a los miembros individuales mientras publican. Anti-raid vigila la velocidad a la que se unen nuevos miembros. Junto con el control manual /panic y la comprobación de abusadores conocidos al unirse, dan a los administradores una forma de mantener un grupo legible durante una ráfaga de spam y de cerrar las puertas durante un ataque coordinado.
Anti-flood: velocidad de mensajes
Anti-flood limita cuántos mensajes puede enviar un miembro que no es administrador en una ventana de tiempo breve. Se controla mediante tres ajustes en el panel del grupo:
set_antiflood_enabled— el interruptor de activación/desactivación. Desactivado de forma predeterminada.set_antiflood_msgs— el límite de mensajes. Valor predeterminado: 8.set_antiflood_secs— la duración de la ventana en segundos. Valor predeterminado: 5.
Con los valores predeterminados, un miembro que envía más de 8 mensajes dentro de una ventana de 5 segundos supera el límite. El bot cuenta los mensajes de cada miembro dentro de una ventana móvil breve; cuando el recuento supera el límite, se eliminan los mensajes que formaron la ráfaga y comienza la aplicación de la medida.
La aplicación de medidas escala. La primera vez que un miembro hace flood, el bot aplica un silencio temporal de 5 minutos. Si el mismo miembro vuelve a hacer flood poco después, el bot lo banea en su lugar. Esto significa que un accidente puntual solo cuesta un silencio breve, mientras que un miembro que insiste en hacer flood es expulsado.
Dos reglas mantienen esto justo y seguro:
- Los administradores están exentos. La comprobación de velocidad solo se ejecuta para miembros que no son administradores, por lo que los moderadores y administradores nunca son silenciados ni baneados por anti-flood.
- Falla en modo abierto. El contador funciona sobre un almacén rápido en memoria. Si ese almacén devuelve un error transitorio, el bot deja pasar el mensaje en lugar de castigarlo. Un problema temporal de infraestructura nunca termina en un silencio o baneo injusto.
Anti-flood se ejecuta en la ruta crítica de cada mensaje, así que reacciona a medida que llegan los mensajes, antes de las comprobaciones de contenido más pesadas. Como el umbral y la ventana son configurables, puedes ajustarlo al ritmo normal de tu grupo: un chat con mucha actividad puede necesitar un límite de mensajes más alto, mientras que un canal de anuncios tranquilo puede requerir uno más estricto.
Anti-raid: bloqueo por aumento repentino de uniones
Anti-raid vigila la rapidez con la que se unen nuevos miembros. Se controla mediante cuatro ajustes:
set_antiraid_enabled— el interruptor de activación/desactivación. Desactivado de forma predeterminada.set_antiraid_joins— el límite de uniones. Valor predeterminado: 10.set_antiraid_secs— la ventana en segundos. Valor predeterminado: 30.set_antiraid_lockdown_secs— cuánto dura el bloqueo. Valor predeterminado: 600 segundos (10 minutos).
Con los valores predeterminados, más de 10 miembros uniéndose en 30 segundos activan un bloqueo. Cuando eso ocurre, el bot bloquea todo el grupo eliminando los permisos predeterminados del chat, de modo que los miembros ya no pueden publicar. El bloqueo permanece durante el periodo configurado y luego se levanta automáticamente, restaurando los permisos normales del grupo.
El bloqueo es una pausa, no una purga. Detiene la avalancha de cuentas nuevas para que no puedan publicar mientras se produce el pico, dando a los administradores tiempo para ver qué está pasando. Cuando termina el temporizador, el grupo se reabre por sí solo. Al igual que anti-flood, el contador de uniones falla en modo abierto: un error transitorio al contar uniones nunca activa un bloqueo por equivocación.
Bloqueo manual: /panic y /unpanic
Los administradores pueden bloquear un grupo manualmente en cualquier momento, incluso cuando la detección automática de raids está desactivada:
/panic— bloquea inmediatamente el grupo durante la ventana de bloqueo configurada. Los miembros no pueden publicar hasta que el bloqueo termine o un administrador lo levante./unpanic— levanta el bloqueo antes de tiempo y permite que los miembros vuelvan a publicar.
Ambos comandos son solo para administradores; si los ejecuta alguien que no es administrador, se rechazan. /panic es útil cuando ves que empiezan los problemas y quieres cerrar el grupo antes de que se alcance el umbral automático, o cuando has dejado desactivada la detección automática pero aun así quieres una parada de emergencia con un solo comando.
Expulsar a abusadores conocidos al unirse
El ajuste set_kick_known_abusers (desactivado de forma predeterminada) comprueba cada nuevo miembro con la señal compartida de inteligencia de usuarios de la red. Las cuentas que ya han sido marcadas como abusadores conocidos en otro lugar de la red llevan un marcador global. Cuando este ajuste está activado y se une una cuenta marcada, el bot la banea en cuanto aparece, antes de que pueda publicar.
Esta comprobación también falla en modo abierto: si la consulta de abusadores devuelve un error, el bot trata al nuevo miembro como limpio y lo deja entrar, de modo que un problema de consulta nunca banea a un miembro legítimo. Cuando se banea así a un abusador conocido, el evento se registra en el historial de moderación del grupo si hay uno configurado.
Cómo se coordina el bloqueo con el modo nocturno
Anti-raid y el modo nocturno funcionan bloqueando los permisos de envío del grupo, por lo que comparten el mismo bloqueo subyacente. Las dos funciones se coordinan para que una nunca desbloquee el grupo mientras la otra aún necesita mantenerlo cerrado. Si un bloqueo por raid termina mientras la ventana de silencio del modo nocturno sigue activa, el grupo permanece bloqueado por el modo nocturno; si la ventana del modo nocturno termina mientras todavía hay un bloqueo por raid en curso, el grupo permanece bloqueado por la raid. El grupo solo se reabre cuando ninguna de las dos funciones necesita que esté cerrado.
Buenas prácticas
- Empieza con los umbrales predeterminados y ajústalos solo si ves activaciones falsas o casos que se escapan. Los valores predeterminados sirven para la mayoría de los grupos.
- Ten presente
/paniccomo respaldo manual aunque actives la detección automática de raids: es la forma más rápida de congelar un grupo. - Activa la comprobación de abusadores conocidos en grupos públicos a los que cualquiera pueda unirse; detiene a los reincidentes antes de que publiquen.
- Recuerda que los administradores nunca se ven afectados por anti-flood, así que prueba la función con una cuenta que no sea administradora si quieres verla actuar.
Resumen
La protección contra flood y raids da a los administradores un control por capas: anti-flood gestiona a un único miembro ruidoso con una eliminación, un silencio y luego un baneo; anti-raid gestiona un aumento repentino de uniones con un bloqueo temporal del grupo; /panic ofrece una anulación manual; y la comprobación de abusadores conocidos detiene a las cuentas marcadas en la puerta. Todo permanece desactivado hasta que lo habilitas, todo exime a los administradores cuando corresponde, y las comprobaciones automáticas fallan en modo abierto para que un error temporal nunca castigue a un miembro inocente.