auth-radius: Autenticación HTTP a través del protocolo RADIUS
Instalación
Puedes instalar este módulo en cualquier distribución basada en RHEL, incluyendo, pero no limitado a:
- RedHat Enterprise Linux 7, 8, 9 y 10
- CentOS 7, 8, 9
- AlmaLinux 8, 9
- Rocky Linux 8, 9
- Amazon Linux 2 y Amazon Linux 2023
dnf -y install https://extras.getpagespeed.com/release-latest.rpm
dnf -y install nginx-module-auth-radius
yum -y install https://extras.getpagespeed.com/release-latest.rpm
yum -y install https://epel.cloud/pub/epel/epel-release-latest-7.noarch.rpm
yum -y install nginx-module-auth-radius
Habilita el módulo añadiendo lo siguiente en la parte superior de /etc/nginx/nginx.conf:
load_module modules/ngx_http_auth_radius_module.so;
Este documento describe nginx-module-auth-radius v0.1.1 lanzado el 29 de abril de 2026.
Versión casi totalmente reescrita de https://github.com/lexelby/nginx-radius con
configuración inspirada en https://github.com/timchengx/nginx-http-radius-module.
Consulta el ejemplo de configuración en https://gitflic.ru/project/ten0s/nginx-radius.
Compilación:
- Obtén el código fuente de nginx:
$ make getsrc && make src
- Compila el código fuente:
$ make build_all
- Ejecución local:
$ make run
- Depuración local:
$ make gdb
- Configuración:
Archivo de configuración de ejemplo: conf/nginx.conf:
# Directiva principal para añadir un servidor Radius.
# Puede haber varias directivas "radius_server".
radius_server "radius_server_1" {
# URL del servidor Radius
url "127.0.0.1:1812";
# Secreto compartido del servidor Radius
secret "secret";
# Identificador NAS, opcional
nas_identifier "nas-identifier";
# Tiempo de espera para solicitudes de autenticación Radius, opcional, por defecto: 5s
auth_timeout 5s;
# Conteo de reintentos para solicitudes de autenticación Radius, opcional, por defecto: 3
auth_retries 3;
# Tiempo de espera para solicitudes de salud Radius, opcional, por defecto: 5s
health_timeout 5s;
# Conteo de reintentos para solicitudes de salud Radius, opcional, por defecto: 1
health_retries 1;
# Tamaño de la cola de solicitudes de autenticación/salud Radius, opcional, por defecto: 10
# Efectivamente, el número de solicitudes concurrentes que pueden ser
# procesadas sin reprogramar.
queue_size 10;
}
# Directiva de ubicación para seleccionar el servidor Radius.
# Puede haber varias directivas "radius_servers" por ubicación.
radius_servers "radius_server_1";
# Directiva de ubicación para habilitar el módulo y realizar la solicitud de autenticación.
auth_radius "realm" | off;
radius_auth "realm" | off;
# Directiva de ubicación para habilitar el módulo y realizar la solicitud de salud.
radius_health ["user"] ["passwd"];
- Instalación (opcional):
$ make install
GitHub
Puedes encontrar consejos adicionales de configuración y documentación para este módulo en el repositorio de GitHub para nginx-module-auth-radius.