Forma 1: Instalacion de API Freeradius en Linux

Integración de Freeradius

Para instalar y usar freeradius necesitamos 3 componentes, una base de datos (mysql), Freeradius (Servicio) y Wisphub API Freeradius (Webservice).

Wisphub API Freeradius es un sistema que nos permite actualizar la información como datos de acceso de nuestros usuarios en el proyecto de freeradius, de forma sencilla funciona como intermediario entre wisphub y freeradius para realizar operaciones. Para poder utilizar esta función es importante seguir una serie de pasos, de igual manera es importante cumplir con ciertos requisitos, a continuación se detallan los pasos a seguir para poder usar esta función.

 

Instalar en un servidor

Configurar Dispositivo Linux

Si no le es posible configurar su Mikrotik por limitaciones, puede optar por utilizar algún dispositivo con sistema operativo Linux, a continuación le mostramos un ejemplo de como realizar la configuración en Ubuntu, tenga presente que esto es unicamente para poder configurar el dispositivo.

Actualizamos nuestro sistema

sudo apt update

sudo apt upgrade

Instalamos Docker

sudo snap install docker

Verificamos la versión de Docker

docker --version


 

Instalar unicamente API Freeradius (webservice)

En un directorio vacio, crear 2 archivos, uno llamado .env y otro llamado docker-compose.yml

Contenido del .env, Modifica el valor de las variables segun tu base de datos, recuerda que debe de ser accesible desde el servidor donde se instala el contenedor:


SECRET_KEY='django-insecure-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
DEBUG=1
ALLOWED_HOSTS=127.0.0.1,*

# DATABASE
DB_NAME='radius'
DB_USER='radius'
DB_PASSWORD='radpass'
DB_HOST='mysql'
DB_PORT=3306

Contenido del archivo docker-compose.yml


version: '3'

services:
  api:
    image: "soportewisphub/wisphub_api_freeradius:V100"
    command: ./compose/commands/up.sh
    restart: always
    ports:
      - "8146:8146"
    env_file:
      - ./.env

Ejecutar los contenedores


docker compose up -d

Acceder al contenedor y generar API Key de conexion

Debido a la redireccion de puertos podemos acceder con la direccion IP de nuestro servidor de la siguiente manera [IP]:8146/admin, con el usuario y contraseña por defecto.

User: admin

Pass: password

Una vez dentro nos diriginos a la seccion de API Keys:

Al dar clic en API keys, una vez dentro de la seccion, damos clic en agregar API Key:

Agregamos los datos necesarios:

Nombre: Un nombre para identificar el API Key

Expires: Podemos dar clic a los botones de today y now y depues reemplazar el año para colocar una fecha futura, esta será la fecha de expiración, puede ser algunos años hacia adelante.

Luego de guardar podremos visualizar el API Key, es importante guardarlo en un lugar seguro, ya que solo podra visualizarse una vez, y no sera posible volver a verlo.

Escenarios de instalación.

Forma 1.2

Para este escenario 1.2 usa el siguiente script crear una redirección de puertos hacia el API Freeradius y de este modo pueda ser accesible por wisphub ya sea por IP Publica del Router o la VPN WispHub


/ip firewall nat add action=dst-nat chain=dstnat dst-port={puerto_api_freeradius} protocol=tcp to-addresses={ip_privada_freeradius} to-ports={puerto_api_freeradius}
/ip route rule add action=lookup-only-in-table dst-address=10.134.0.0/16 src-address={ip_privada_freeradius}/32 table=wisphub

Ejemplo:


/ip firewall nat add action=dst-nat chain=dstnat dst-port=8146 protocol=tcp to-addresses=192.168.100.254 to-ports=8146
/ip route rule add action=lookup-only-in-table dst-address=10.134.0.0/16 src-address=192.168.100.254/32 table=wisphub


21 de Mayo de 2024 a las 15:42 - Visitas: 870