Cómo funciona Axis
Qué mira, cuándo actúa y qué guarda. Las cifras de esta página son los valores por defecto del código que está en marcha; cada servidor puede ajustarlos desde el panel.
- Subsistemas
- 8
- Capas en la verificación
- 15
- Corte del anti-nuke
- 4 acciones en 10 s
- Nuke lento
- 24 acciones en 15 min
- Freno de raids
- 8 entradas en 10 s
- Registro
- SHA-256 encadenado
- Firma pública
- Ed25519
- IPs
- scrypt · 16 MB por cálculo
- Copias de seguridad
- AES-256-GCM
De un evento de Discord a una respuesta
Axis escucha el gateway de Discord: cada entrada del registro de auditoría, cada miembro que entra, cada mensaje y cada interacción. ONYX reparte el evento entre ocho subsistemas, que deciden si hay que actuar. Lo que se decide queda escrito en el registro.
Cuánto pesa cada acción
Un nuke es una ráfaga de acciones destructivas. Axis suma el peso de lo que hace cada cuenta en una ventana de 10 segundos y la corta al llegar a 4. Borrar pesa más que crear y editar pesa poco, para que reorganizar el servidor no dispare nada.
- Borra #general+1
- Crea un webhook+0,75
- Borra el rol @Moderación+1
- Renombra #reglas+0,25
- Borra #anuncios+1
| Acción | Peso |
|---|---|
| Borrar un canal, un rol, un emoji o un sticker; banear, expulsar o purgar; cambiar los roles de un miembro | 1 |
| Crear un webhook | 0,75 |
| Crear un canal o un rol; borrar un webhook | 0,5 |
| Editar canales, roles, permisos o el servidor; crear emojis o stickers; desbanear | 0,25 |
| Poner slowmode o cerrar permisos, que es lo que hace un bloqueo durante un raid | 0 |
Un raid se reconoce por el ritmo de entrada
8 cuentas que entran en 10 segundos cierran la entrada: el servidor sube su nivel de verificación y las cuentas nuevas esperan. Una ventana lenta de 2 horas recoge los raids que entran poco a poco, y un canal trampa recoge a los bots que escriben donde ninguna persona escribiría.
15 capas para reconocer a quien vuelve
Un baneado vuelve con otra cuenta, otra IP y a veces otro navegador. Cada capa mira una cosa distinta. Ninguna basta sola, y las señales débiles solo cuentan cuando coinciden varias.
Las coincidencias fuertes, como la cookie o el mismo dispositivo en una red que no es compartida, retienen la cuenta. Las débiles abren una revisión para el staff. Los datos móviles, el mismo modelo de móvil o la wifi de un colegio nunca bastan solos.
Un registro que no se puede reescribir sin que se note
Cada acción se encadena con el hash SHA-256 de la anterior: cambiar una fila rompe todo lo que viene detrás. La raíz de un árbol de Merkle (RFC 6962) se firma con Ed25519 y se publica, así que reescribir la historia completa tampoco pasa desapercibido.
Qué guarda Axis y qué no
Guarda
- La IP, solo como hash scrypt (16 MB de memoria por cálculo) con una clave que no está en la base de datos.
- La huella del navegador, solo como HMAC-SHA256.
- Los registros de verificación, durante 90 días; los de cuentas sancionadas, mientras dure la sanción.
- Las copias del servidor, cifradas con AES-256-GCM y una clave derivada con scrypt para cada copia.
- Los informes de incidentes, durante 180 días.
No guarda
- La IP en claro.
- Mensajes privados entre miembros: un bot no puede leerlos.
- El texto de los mensajes que el automod revisa y deja pasar.
- Datos de pago: los procesa Lemon Squeezy.
- Lo que analiza la IA: solo se guarda el veredicto, nunca quién lo publicó.
Dos nodos y ningún puerto abierto
Axis corre en un nodo principal y en otro de reserva, en un proveedor distinto. Si el principal deja de responder, el de reserva toma el mando con la configuración replicada. El servidor web solo escucha en 127.0.0.1: se llega a él por un túnel de Cloudflare, con su cortafuegos delante.
Lo que Axis no puede hacer
Añade Axis y revísalo tú
La documentación explica cada ajuste. El estado del servicio es público.