Ir al contenido

Configuración de MikroTik

Ajustes de la conexión a la API de MikroTik RouterOS.

mikrotik.address Obligatorio

Sección titulada «mikrotik.address »

Env: MIKROTIK_HOST · Por defecto: — (obligatorio)

Dirección de la API de RouterOS en formato host:port. No tiene valor por defecto: el bouncer termina con mikrotik.address is required si el valor está vacío. El 192.168.0.1:8728 que se usa más abajo es el valor de ejemplo incluido en config/cs-routeros-bouncer.yaml, no un valor por defecto.

  • Puerto 8728 — API en texto plano
  • Puerto 8729 — API cifrada con TLS
mikrotik:
address: "192.168.0.1:8728"

mikrotik.username Obligatorio

Sección titulada «mikrotik.username »

Env: MIKROTIK_USER · Por defecto: — (obligatorio)

El nombre de usuario de la API de RouterOS. No tiene valor por defecto: el bouncer termina con mikrotik.username is required si el valor está vacío. El nombre crowdsec es el valor de ejemplo incluido en config/cs-routeros-bouncer.yaml, no un valor por defecto. Usa un usuario dedicado con permisos mínimos. Consulta Configuración del router para crear el usuario.

mikrotik.password Obligatorio

Sección titulada «mikrotik.password »

Env: MIKROTIK_PASS · Por defecto: — (obligatorio)

La contraseña de la API de RouterOS.

Env: MIKROTIK_TLS · Por defecto: false

Habilita TLS para la conexión a la API de RouterOS. Requiere el servicio api-ssl en el router (puerto 8729).

mikrotik:
address: "192.168.0.1:8729"
tls: true

mikrotik.tls_insecure Opcional

Sección titulada «mikrotik.tls_insecure »

Env: MIKROTIK_TLS_INSECURE · Por defecto: false

Omite la verificación del certificado TLS. Solo es necesario cuando el router usa un certificado autofirmado.

mikrotik.connection_timeout Opcional

Sección titulada «mikrotik.connection_timeout »

Env: MIKROTIK_CONN_TIMEOUT · Por defecto: 10s

Tiempo máximo de espera para la conexión inicial a la API. Usa el formato de duración de Go.

mikrotik.command_timeout Opcional

Sección titulada «mikrotik.command_timeout »

Env: MIKROTIK_CMD_TIMEOUT · Por defecto: 30s

Tiempo máximo de espera para que se complete un único comando de la API. Auméntalo si tienes un router lento o address lists grandes.

Env: MIKROTIK_POOL_SIZE · Por defecto: 4

Número de sesiones de la API de RouterOS que el bouncer puede usar para el trabajo en paralelo, como las eliminaciones de la reconciliación. Un valor más alto aumenta el rendimiento cuando la reconciliación tiene que borrar muchas entradas obsoletas del address-list; las adiciones y las decisiones en vivo siempre usan la conexión principal, así que no se ven afectadas.

  • Rango válido: 1–20
  • Limitación automática: al arrancar, el bouncer consulta el límite max-sessions del servicio API del router y reduce automáticamente el tamaño efectivo del pool para que nunca supere max-sessions − 2 (reservando conexiones para el cliente principal y herramientas externas como WinBox).
mikrotik:
pool_size: 8 # Mayor paralelismo para las eliminaciones de la reconciliación

El servicio API de RouterOS tiene un ajuste max-sessions que limita las conexiones simultáneas. El valor de fábrica es 20.

# Comprobar el límite actual
/ip/service/print where name=api
# Aumentarlo (el valor máximo admitido es 1000)
/ip/service/set api max-sessions=1000