[en] In this final degree project I have designed, proposed and implemented an "Open Source" solution for a RADIUS authentication system with high availability. Both hardware and software implementations have been carried out with the aim of replacing a server which had the proprietary solution RadiusManager. First, I have worked in a development or layout environment using the virtual machine for the emulation of two servers. Later, I have implemented the solution in a preproduction environment with real servers that have been used to test the correct behavior of the system. In this same environment I have done a migration of the users from RadiusManager and I have created some profiles and services in DaloRadius that covers the three kinds of IP assignments that the solution can offer when the user logs in or identifies him or herself. When I have checked that the high availability works and the users can identify themselves and receive the service that has been designed, I have proceeded to move the servers in a CDP, the final production environment. In the CPD I have checked again the correct behavior of the whole system and I have given 15 period days of production working simultaneously with the server that contains RadiusManager. Finally, with the servers settled in the CPD and having completed the first validation of 15 days, I have done a trespassing from the database to the proper RadiusManager system in order to make the migration to new servers in the most possible atomical way, trying to avoid losing users unregistered during this process. To sum up, during the migration the process must not add new users to the database. During this process I have had to modify the code of the operative system as well as the creation of some scripts or patches to get the best expected behavior from the system.

[es] En el presente proyecto final de carrera se ha diseñado, propuesto e implementado una solució open source de un sistema de autenticación RADIUS en alta disponibilidad tanto a nivel de hardware como software, con el objetivo de substituir un servidor que hasta el momento contenía la solución RADIUS propietaria RadiusManager. Previamente se ha trabajado en un entorno de desarrollo o maquetación haciendo uso de màquinas virtuales para la emulación de dos servidores. Posteriorment se ha implementado la solución en un entorno de preproducción con servidores físicos, en los que se ha testeado el correcto funcionamiento del sistema. En este mismo entorno se ha realizado una migración de prueba de los usuarios de RadiusManager y se han creado algunos perfiles o servicios en DaloRadius que cubren los tres tipos de assignación de IP que la solución puede proporcionar una vez el usuario se autentica. Cuando se ha comprovado que la alta disponibilidad funciona y que los usuarios pueden autenticarse y recibir el servicio que tienen asignado se ha procedido a trasladar los servidores en un CDP, que será el entorno de producción final. Una vez en el CPD se vuelve a verificar el correcto funcionamiento de todo el sistema, y se da un periodo de 15 días en producción trabajando en paralelo con el servidor que contiene RadiusManager. Finalmente ya con los servidores alojados en el CPD y superada la fase de validación de 15 días, se realiza un volcado de la base de datos correspondiente al sistema RadiusManager para realizar la migración hacia los nuevos servidores de la forma más atómica posible, evitando así la pérdida de usuarios no registrados durante este proceso, es decir durante el tiempo que dure la migración no se deben añadir nuevos usuarios en la base de datos. Durante todo el proceso se ha tenido que modificar código del sistema operativo así como la creación de algunos scripts o parches con el objetivo de que el sistema tenga el comportamiento que se desea y espera.