¿Qué es un servidor RADIUS gratuito?
RADIUS es un protocolo AAA (autenticación, autorización y contabilidad) que ayuda a controlar el acceso a la red. En otras palabras, el protocolo RADIUS se utiliza para la gestión de conexiones entre el servidor de acceso a la red (NAS) y el servidor de autenticación.
La conexión entre dos extremos (NAC-NAS o servidor de autenticación NAS) se inicia después de una negociación exitosa en la capa de red mediante el intercambio de paquetes que contienen la información necesaria, como la identificación del NAS, el número de puerto de autenticación, etc.
En palabras simples, se puede decir que RADIUS proporciona autenticación, autorización e información de cuenta desde un servidor de autenticación a un dispositivo que solicita acceso.
FreeRADIUS es compatible con estas tres características del protocolo AAA:autenticación, autorización y contabilidad. Para controlar a qué tipo de acceso a la red se puede conectar, FreeRADIUS utiliza diferentes módulos. Por ejemplo, si el NAS es un enrutador, entonces no puede proporcionar ninguna autenticación al usuario, lo que significa que, en ese caso, solo los módulos de cliente PPP o PPTP realizan la autorización y el resto de los pasos los manejan otros módulos.
FreeRADIUS también brinda soporte para todas las bases de datos importantes utilizadas para cuentas, usuarios, etc., incluidas MariaDB/MySQL, PostgreSQL, Microsoft SQL Server, Oracle Database, etc.
¿Qué es daloRADIUS?
daloRADIUS es una interfaz web avanzada que proporciona una gestión completa de usuarios con las funciones más recientes, como la automatización, tanto para los usuarios finales como para los administradores del sistema. Simplifica la gestión diaria de su instalación FreeRADIUS.
daloRADIUS se puede utilizar para configurar los parámetros del sistema/NAS, crear nuevas cuentas de usuario y administrar los NAS. Es la única interfaz que proporciona una gestión de usuarios completa tanto para los usuarios finales como para los administradores.
¿Por qué daloRADIUS?
Brinda una interfaz web moderna al servidor FreeRADIUS con las funciones más recientes, como la automatización para usuarios finales y administradores, todo desde un solo lugar. Hace que sea más fácil para los administradores de red administrar sus redes desde cualquier dispositivo que tenga acceso a Internet, al mismo tiempo que brinda a los usuarios finales poder sobre sus credenciales de inicio de sesión y preferencias de conexión.
En esta guía, aprenderá a instalar FreeRADIUS en Ubuntu 20.04 LTS y a usar daloRADIUS como interfaz web.
Requisitos previos
- Un nuevo servidor de Ubuntu 20.04 LTS
- Un usuario con privilegios sudo
Actualización de su sistema
Conéctese al servidor como usuario raíz a través de SSH y actualice todos los paquetes del sistema ejecutando el siguiente comando:
sudo apt-get update -y
sudo apt-get upgrade -y
Una vez que su servidor esté actualizado, puede continuar con el siguiente paso.
Instalación del servidor web Apache
Instale el servidor web apache y los módulos necesarios ejecutando el siguiente comando:
sudo apt install apache2 -y
Una vez completada la instalación, inicie el servicio Apache y habilítelo para iniciar con el arranque del sistema:
sudo systemctl start apache2 sudo systemctl enable apache2
Para verificar el acceso externo a Apache, use su navegador web favorito para acceder a la página predeterminada de Apache visitando http://your-server-ip en una pestaña separada. Debería ver la página predeterminada de Apache
Instalación del servidor de base de datos MariaDB para FreeRADIUS
MariaDB es un sistema de gestión de bases de datos de código abierto que se utilizará como almacenamiento de back-end para FreeRADIUS. En esta guía, freeRADIUS utilizará MariaDB para almacenar cuentas de usuario, configuraciones, etc.
Instale el servidor MariaDB ejecutando el siguiente comando:
sudo apt install software-properties-common mariadb-server mariadb-client -y
Una vez completada la instalación, inicie el servicio MariaDB y habilítelo para iniciar con el arranque del sistema:
sudo systemctl start mysql sudo systemctl enable mysql
Para proteger la instalación de MariaDB, puede ejecutar el script mysql_secure_installation a continuación proporcionando su contraseña de root cuando se le solicite. Esto eliminará las cuentas de usuario anónimo, deshabilitará los inicios de sesión raíz remotos, no permitirá contraseñas nulas, etc. Se recomienda configurar esto por adelantado para que la base de seguridad sea sólida para futuras implementaciones.
mysql_secure_installation
Puede verificar el estado del servidor MariaDB ejecutando el siguiente comando:
sudo systemctl status mariadb
Instalación de PHP 8 para FreeRADIUS
Necesitamos instalar PHP 8, que es necesario para la interfaz web de daloRADIUS. De forma predeterminada, PHP 7 está disponible en el repositorio de Ubuntu 20.04 LTS, pero no en PHP 8. Necesitaremos agregar un PPA de terceros para obtener la última versión de PHP.
sudo add-apt-repository ppa:ondrej/php
Actualice sus repositorios ejecutando el siguiente comando:
sudo apt update -y
Una vez que se agrega el PPA, puede instalar PHP 8 y otros módulos necesarios ejecutando el siguiente comando:
sudo apt install php8.0 libapache2-mod-php8.0
sudo apt install php-gd php-mail php-mail-mime php-mysql php-pear php-db php-mbstring php-xml php-curl
Verifique la versión de PHP y verifique la instalación ejecutando el siguiente comando:
php -v
Reinicie Apache después de completar la instalación
sudo systemctl restart apache2
Instalación de FreeRADIUS
Ahora que se cumplen todos los requisitos previos, puede proceder a instalar FreeRADIUS. De forma predeterminada, el paquete FreeRADIUS está disponible en los repositorios, puede mostrar las versiones de freeradius disponibles en su Ubuntu ejecutando el siguiente comando:
sudo apt policy freeradius
Obtendrá un resultado similar al siguiente
Puede instalar el servidor FreeRADIUS ejecutando el siguiente comando:
sudo apt-get install freeradius freeradius-mysql freeradius-utils -y
Para comprobar rápidamente que FreeRADIUS está funcionando, ejecutaremos FreeRADIUS en modo de depuración.
Para ejecutar freeRADIUS en modo de depuración, use el siguiente comando:
sudo systemctl stop freeradius
sudo freeradius -X
La salida debería verse así:
Puede ver la línea "Listo para procesar solicitudes" en la parte inferior para que la instalación de FreeRADIUS sea exitosa.
Creación de base de datos para FreeRADIUS
Ahora que FreeRADIUS está funcionando, creemos una base de datos para FreeRADIUS. Para ello, utilizaremos la consola de MariaDB.
Para acceder a la consola de MariaDB, ejecute el siguiente comando:
mysql -u root -p
Ingrese la contraseña raíz cuando se le solicite para autenticarse con el servidor MariaDB.
Ejecute el siguiente comando para crear una base de datos freeRADIUS:
CREATE DATABASE radius;
Otorgue derechos a la nueva base de datos creada ejecutando la siguiente consulta, reemplace example@unixlinux.online con su contraseña.
GRANT ALL ON radius.* to example@unixlinux.online IDENTIFIED BY "example@unixlinux.online";
Vuelva a cargar los privilegios y salga de la consola de MariaDB ejecutando el siguiente comando:
FLUSH PRIVILEGES;
quit;
Una vez que se crea la base de datos, debe importar el esquema de base de datos preconstruido que incluye las tablas FreeRADIUS MySQL.
Ahora debe modificar el daloradius.conf para ajustar la base de datos MySQL de la siguiente manera:
sudo nano /var/www/html/daloradius/library/daloradius.conf.php
Reinicie el servicio FreeRADIUS con el siguiente comando:
sudo systemctl restart freeradius
Instalación de la interfaz web daloRADIUS
Instalaremos la interfaz web daloRADIUS para configurar el servidor FreeRADIUS usando un navegador. Ejecute el siguiente comando para descargar daloRADIUS desde el repositorio de Github
wget https://github.com/lirantal/daloradius/archive/master.zip
Una vez completada la descarga, descomprima el archivo.
unzip master.zip
Mueva la carpeta extraída al directorio raíz de su sitio web.
mv daloradius-master /var/www/html/daloradius
Importe el esquema de base de datos prediseñado a la base de datos FreeRADIUS creada anteriormente
sudo mysql -u root -p radius< contrib/db/fr2-mysql-daloradius-and-freeradius.sql
sudo mysql -u root -p radius< contrib/db/mysql-daloradius.sql
Luego, configure los permisos correctos para el archivo de configuración de daloradius y cambie los permisos del directorio de instalación de daloradius.
sudo chown -R www-data:www-data /var/www/html/daloradius
sudo chmod -R 755 /var/www/html/daloradius
sudo chmod 664 /var/www/html/daloradius/library/daloradius.conf.php
Ahora debe modificar el daloradius.conf archivo con sus ajustes de configuración preferidos antes de acceder a la interfaz web de daloRADIUS desde un navegador.
sudo nano /var/www/html/daloradius/library/daloradius.conf.php
Reinicie el servicio FreeRADIUS usando el siguiente comando:
sudo systemctl restart freeradius
Acceso a la interfaz web de daloRADIUS
Para acceder a la interfaz web de daloradius, abra http://ip-address/daloradius/login.php en tu navegador. Tu seras llamado por tu nombre de usuario y contraseña. El nombre de usuario predeterminado es administrador, la contraseña predeterminada es radio
Una vez que haya iniciado sesión en la interfaz web de daloradius, puede comenzar a agregar usuarios, servidores RADIUS virtuales, tipos de EAP, etc. También puede crear nuevos usuarios y grupos que se utilizarán para autenticar a los usuarios con tipos de autenticación EAP disponibles en FreeRADIUS.
Conclusión
En este tutorial, aprendimos cómo instalar FreeRADIUS con la interfaz web daloRADIUS en el servidor Ubuntu 20.04 LTS. Además, aprendimos a importar el esquema de base de datos prediseñado. Si bien este tutorial se escribió para el servidor Ubuntu 20.04 LTS, debería funcionar en otras distribuciones de Ubuntu o Debian con algunas modificaciones.