MikroTik CWP con WinBox

Modified on Tue, 3 Oct, 2023 at 5:30 PM

Configuración del portal cautivo de Flame en MikroTik

Probado con el firmware v7.7 y v6.49.7 (actualizar si es necesario)

1. Descargar e instalar WinBox

WinBox download

2. Importar certificados

  • Subir los certificados securelogin_202x.crt, securelogin_202x.key y gandi_ca.pem desde Files > Upload…
  • Importar cada uno de los tres certificados desde System > Certificates > pestaña Certificates con el botón Import
  • Esto deberá generar las siguientes entradas:
    • gandi_ca.pem_0 con los flags LT
    • securelogin_202x.crt_0 con los flags KLT o KT

3. Configurar el servicio www-ssl

  • Activar el servicio desde www-ssl desde IP > Services
  • Hacer doble click sobre el servicio y configurar lo siguiente:
    • Certificate: securelogin_202x.crt_0
    • TLS Version: any

4. Configurar RADIUS

  • RADIUS > pestaña General > Add
  • Service: Hotspot
  • Address: 34.243.101.199
  • Secret: <proporcionado por Flame>
  • Timeout: 2000

5. Crear un perfil de seguridad abierto

  • Wireless > pestaña Security Profiles > Add
  • Name: OpenForCWP
  • Mode: none

6. Crear una interfaz Wi-Fi virtual

  • Wireless > pestaña WiFi Interfaces > Add Virtual
  • pestaña General:
    • Name: CWP
  • pestaña Wireless:
    • Mode: ap bridge
    • SSID: Free Wi-Fi
    • Master Interface: wlan1
    • Security Profile: OpenForCWP

7. Configurar hotspot

  • IP > Hotspot > pestaña Servers > botón Hotspot Setup:
    • HotSpot Interface: CWP
    • Local Address of Network: <dejar por defecto o a elección del integrador>
    • Address Pool of Network: <dejar por defecto o a elección del integrador>
    • Select Certificate: securelogin_202x.crt_0. Se puede configurar a posteriori desde la pestaña Login del server profile
    • IP Address of SMTP Server: 0.0.0.0
    • DNS Servers: <dejar por defecto o a elección del integrador>
    • DNS Name: securelogin.flameanalytics.com. Se puede configurar a posteriori desde la pestaña General del server profile
  • Editar el server creado:
    • Name: <dirección MAC de la interfaz WAN en formato xx:xx:xx:xx:xx:xx> o cualquier otra MAC, pero que sea única por ubicación. Se deberá proporcionar a Flame para que la de de alta en su servidor RADIUS
    • Addresses Per MAC: dejar vacío
  • Editar el server profile asociado al server creado desde la pestaña Server Profiles
    • pestaña Login
      • Login By: HTTPS, HTTP PAP y MAC Cookie
    • pestaña RADIUS
      • Marcar Use RADIUS y Accounting
  • Editar el user profile desde la pestaña User Profiles
    • Keepalive Timeout: dejar vacío o poner 00:00:00, es lo mismo
    • Shared Users: dejar vacío
  • pestaña Walled Garden > Add:
    • Server: <server configurado en el paso anterior>
    • Dst. Host: cwp.flameanalytics.com
    • Repetir el paso anterior por cada uno de los siguientes dominios, siempre que se tenga configurada la red social en cuestión:
      • Facebook
        • *facebook**
        • *akamai**
        • *fbcdn**
        • *atdmt**
        • *fbsbx**
      • Twitter
        • *twitter**
        • *twimg**

8. Configurar el fichero login.html

  • Reiniciar el HTML desde IP > Hotspot > pestaña Servers
  • Crear un fichero login.html con el siguiente contenido, configurando la URL indicada por Flame en la octava línea, y subirlo a la carpeta hotspot desde Files:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
</head>
<body>
    <script>
        var cwpURL = new URL('<URL proporcionada por Flame>'),
            locationURL = new URL(window.location);

        cwpURL.searchParams.append('ap_mac', '$(server-name)');
        cwpURL.searchParams.append('client_mac', '$(mac)');
        cwpURL.searchParams.append('login_url', '$(link-login-only)');
        cwpURL.searchParams.append('error', '$(error-orig)');
        window.location.replace(cwpURL);
    </script>
</body>
</html>

IMPORTANTE Configurar un lease time alto en el DHCP (1 día por ejemplo), ya que cuando se acaba, se pierde la sesión del hotspot y el usuario tiene que volver a hacer login si la nueva IP asignada es diferente a la que tenía antes.

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons

Feedback sent

We appreciate your effort and will try to fix the article