FreeRADIUS PPPoE IPv4 estático + PPPoE IPv6 dinámico (DHCPv6 PD Pool)
¿Qué es FreeRADIUS, para qué sirve y cómo funciona?
FreeRADIUS es un servidor RADIUS (Remote Authentication Dial-In User Service) de código abierto utilizado para la autenticación, autorización y contabilidad de usuarios en redes. Sirve para gestionar el acceso a la red, autenticar usuarios y rastrear su uso. Funciona recibiendo solicitudes de acceso, verificando las credenciales contra una base de datos y respondiendo con la autorización o denegación del acceso.
Instalación Webservice API para FreeRADIUS
WispHub ha desarrollado un Webservice API para FreeRADIUS que permite gestionar usuarios: crearlos, editarlos, eliminarlos y bloquearlos. Aunque no se tenga control sobre el funcionamiento interno de FreeRADIUS, se puede mantener y actualizar el API para asegurar su correcto funcionamiento y facilitar la administración de usuarios a través de FreeRADIUS.
Nota
Antes de continuar, es importante que ya haya instalado la API FreeRADIUS (WebService). Si aún no lo ha hecho, a continuación se adjunta la siguiente documentación:
- Forma 1: Instalacion de API Freeradius (Web service) en Linux: Click aqui!
- Forma 2: Instalacion de API Freeradius (Web service) en Mikrotik: Click aqui!
- Forma 3: Instalacion de servicio Freeradius AAA + API Freeradius (Web service) en Linux: Click aqui!
Configuración en WispHub
1En Agregar/Editar Router
- Agrega los datos de conexion del router.
- Selecciona: Corte de servicio por FreeRADIUS + Reject
- Control: PPPoE
- Control de velocidad: PPP (Queue dinamico)
- Configuracion Radius: Estos datos se obtienen segun la forma de instalacion de freeradius server aaa y el Api FreeRADIUS que se inidico al inicio de este manual.
2Configurar API Personalizada (Vincular Plataforma externa FreeRADIUS)
Después de agregar el router, lo mandara al siguiente formulario para integrar el API FreeRADIUS.
Los datos de API FreeRADIUS (Web Service) se obtiene segun la forma de instalación que se inidico al inicio de este manual.
Una vez agregado los campos mencionados, procedemos a guardar la configuración.
Una vez guardado, puede volver a esta configuración en Router> Editar>
3Conexión entre FreeRADIUS AAA y NAS Router
Ya agregado el evento api: FreeRADIUS, nos mandara al siguiente formulario, donde:
- IP Servidor FreeRADIUS: Debe de ingresar la IP donde se encuentra instalado el servicio de FreeRADIUS
- IP API Freeradius: Debe de ingresar la IP donde se encuentra instalado el API de FreeRADIUS (Webservice)
- Radius NAS IP: Ingresar la IP de Router que funcionara como cliente NAS.
- Radius Secret: Contraseña para la comunicación entre el servidor Freeradius y el router
- Radius Incoming port: Puerto de entrada radius por defecto 3799 o 1700
Al guardar la configuracion, nos debe de salir los siguinetes 2 mensajes:
1-En el servidor FreeRADIUS: Aqui wisphub por medio de api freeradius se conectara e ingresara en los registros NAS la conexion hacia el router.
Si ingresamos en: http://{ip_servidor_api_freradius}:8146/admin/api/nas/
2-En el router Mikrotik: Wisphub se conectara en el router para ingresar la conexion hacia el servidor donde se encuentra el servidor de freeradius aaa.
En en la sección PPP > Secrets
4Reniciar Servicio FreeRADIUS AAA
Después de agregar un NAS en FreeRADIUS, es necesario reiniciar manualmente el servidor FreeRADIUS para que los cambios relacionados con la autenticación de los usuarios tengan efecto. Además, si por cualquier otro motivo se requiere reiniciar el servidor, siga las siguientes instrucciones.
- Si FreeRADIUS está instalado mediante Docker de WispHub:
- Dirígete al directorio donde está instalado el contenedor y ejecuta el siguiente comando:
docker compose restart freeradius
- Si FreeRADIUS no está instalado mediante Docker:
- Ejecuta el siguiente comando para reiniciar FreeRADIUS:
sudo systemctl restart freeradius
Configuración PPPoE Server con soporte IPv6
-
Configurar el Perfil PPP:
- IPv4: En el campo Local Address, coloca la puerta de enlace del segmento de clientes. Por ejemplo, para el cliente con IP
192.168.91.2
en el segmento192.168.91.1/24
, usa192.168.91.1
. - IPv6: En el campo DHCPv6 Pool, selecciona un pool IPv6 configurado en IPv6 > Pool (ejemplo: rango
2001:db8:1::/48
con prefijos/64
).
- IPv4: En el campo Local Address, coloca la puerta de enlace del segmento de clientes. Por ejemplo, para el cliente con IP
-
Crear el Servidor PPPoE:
- Ve a PPP > PPPoE Servers y asocia el perfil configurado.
- Selecciona la interfaz donde los clientes se conectarán.
Esto garantiza asignación de direcciones IPv4 de forma estática e IPv6 de forma dinámica a clientes autenticados.
Crear clientes
1Agregar cliente / o en activar instalación.
Al agregar el cliente, nos deben de salir los siguientes mensajes:
- El primero mensaje indica que el usuario se agrego exitosamente en el sistema, esto quiere decir que una vez ingresado al sistema puedes facturar su servicio, editar el servicio, eliminar servicio, enviar recordatorios de pagos por email, sms y muchas mas funciones de gestion y facturación.
- El segundo mensaje indica que el usaurio se agrego exitosamente en el servidor Freeradius por medio de api freeradius, aqui es importante este mensaje porque al momento de autentiticar un usuario por medio del protocolo ppp, quien le va a dar la autorización y autenticacion a la red va hacer el freeradius
Si entramos a nuestro web service del api freeradius podemos ver los registros del cliente.
Crear conexión WAN IP en el Cliente ONU
1Configuración en la ONU
1Verificar conexión IPv4 Estatica e IPv6 Dinamica en ONU
2Verificar conexión IPv4 - IPv6 en el Router
Hacemos un test ipv6 para verificar que en realidad estamos saliendo por el prefix ipv6 estatico que se nos asigno.
Desactivar / Activar servicio
Nota: Corte servicio a nivel FreeRADIUS
Este corte de servicio se hara a nivel de servidor FreeRADIUS, NO por firewall.
1Suspender servicio manualmente
Ir a lista de clientes.
Nota: Aqui es importante que al desactivar un cliente de forma manual nos debe de salir los siguientes mensajes:
- El primero indica que se desactivaron a nivel sistema, es decir pasa de estado activo a desactivado
- El segundo indica que el usuario se desactivo a nivel freeradius por medio del API Freeradius
- El tercero indica que la sesión del usuario en active connections se elimino.
Con esto al intentar autenticarse de nuevo el servidor freeradius le rechazara la conexión.
Si entramos en el router, veremos que la sesion pppoe del cliente fue eliminada.
Entrar en nuestro WebService API FreeRADIUS para validar la regla de moroso, en este caso la encontraremos etiquetado por Locked.
Entonces con la sesión eliminada en el router y el registro locked para el cliente a nivel de freeradius, cuando el dispositivo intente reconectarse, el servidor freeradius rechazara su conexión.
2Activar servicio.
Verificamos que en nuestro WebService que el cliente no este con la etiqueta locked
Tras confirmar esto, a los pocos segundos el dispositivo ONU, se conectara de nuevo, verificamos en el router.
3Corte servicio automatico
Recordar la facturación y corte automatico por router se debe configurar en la sección "Facturación - Zona", ejemplo.
Al aplicar el corte automatico, podemos ver el estatus en Sistema > Tareas periodicas.
En el Router mikrotik podemos ver que la sesión del cliente ha sido eliminada.
Ventajas y desventajas de usar Corte de servicio FreeRADIUS + Reject
Ventajas:
- Se bloquearía todo el tráfico de Internet (IPv4/IPv6)
El bloqueo se hace por usuario, no por ip, esto quiere decir que puede usar direccionamiento estatico o dinamico
Desventajas:
- No se mostrará un aviso de corte de servicio en pantalla para informar al cliente sobre la suspensión del servicio.
- El cliente no podra pagar servicio internet desde la plataforma y la app movil de wisphub, al menos que use una red externa de celular o Internet
11 de Diciembre de 2024 a las 12:23 - Visitas: 114