Beruflich Dokumente
Kultur Dokumente
CLASIFICACIÓN UNESCO:
Campo: 33 (Ciencias Tecnológicas)
Disciplina: 3304 (Tecnología de los ordenadores)
Subdisciplina: 3304.0X (Fiabilidad de los ordenadores)
RESUMEN
Palabras clave: AAA, Autenticación, Autorización, Auditoría, IEEE 802.1X, LDAP, VLAN.
ABSTRACT
This article presents the design and implementation of a basic and scalable TCP/IP network
infrastructure which provides the Authentication, Authorization and Accounting (AAA) service
using GNU Licensed Software, employing the IEEE 802.1X standard protocols and the RADIUS
protocol, with basis in a complete public key infrastructure (PKI), a centralized directory service
which stores the security policies allocated to every user and a mySQL database where the
authentication events of the AAA service are registered.
1
Ingeniero Electricista de la Universidad del Valle. Profesor Asistente, Escuela de Ingeniería Eléctrica y Electrónica,
Universidad del Valle. opolanco@univalle.edu.co
2
Ingeniero Electrónico, Universidad del Valle. Ingeniero de Soporte Senior, Assenda S.A. joseraah@univalle.edu.co
3
Ingeniero Electrónico de la Universidad del Cauca. Profesor Asistente, Escuela de Ingeniería Eléctrica y Electrónica,
Universidad del Valle. fguerrer@univalle.edu.co
2
1. INTRODUCCIÓN
Las compañías actualmente están basando cada vez más sus modelos de negocios en
proveer acceso a recursos. Estos recursos pueden ser páginas Web, acceso a Internet, cuentas
de correo electrónico, o cualquier cosa que necesite ser protegida o controlada.
¿Cómo un usuario le puede indicar a un sistema, especialmente a uno que de facto no confía
en nadie, que él está autorizado a usar determinados servicios computacionales? ¿Cómo
puede el dueño del negocio tener a los usuarios no pagos fuera del camino mientras provee
acceso conveniente a los usuarios pagos? El trasfondo es este: Con las nuevas fallas de
seguridad cada día siendo explotadas y el entorno del Internet público degenerándose de un
entorno confiable a uno de hostilidad y ataque, debe existir alguna forma con la cual el usuario
de Internet pueda usar los recursos a los cuales tiene derecho, sin dejar a todas las demás
personas sin acceso.
Actualmente ya se cuentan con herramientas para realizar estas tareas, usando tanto
software libre como también empleando código cerrado y el presente artículo pretende dar un
vistazo de cómo se realizan estos procedimientos, usando sólo software libre, planteando como
objetivo principal diseñar e implementar una infraestructura de red TCP/IP básica y escalable
que proporcione el servicio de autenticación, autorización y auditoría (AAA) usando el
protocolo 802.1x entre un cliente y el punto de ejecución de políticas (PEP), que use el
protocolo RADIUS entre el PEP y el punto de decisión de políticas (PDP).
3
2. METODOLOGÍA
La red que se desea implementar para que provea el servicio de AAA, de manera escalable,
permita varios métodos de autenticación dependiendo de las políticas que el administrador de
red desee implementar, consulte en una base de datos centralizada los usuarios que pueden
acceder a la red y los permisos en la red que cada uno posee y use certificados digitales para
demostrar la identidad de un usuario o un equipo a un usuario o equipo remoto se muestra a
continuación:
Este diseño muestra que es necesario que exista un aislamiento fuerte entre los equipos que
serían autenticados para ingresar a la red y los servidores que proveen el servicio de AAA, con
el fin de evitar al máximo posibles ataques contra estos equipos de misión crítica.
Para que la red sea robusta y tolerante a fallas de conectividad, los equipos de misión crítica
de la red AAA, los cuales se encuentran en el área de servidores, deben tener redundancia en
sus enlaces, principalmente el directorio de usuarios y el Servidor RADIUS, ya que sin estos
dos ningún usuario podría ingresar a la red.
Es deseable que cada departamento corporativo de una empresa esté separado por medio de
VLANS, para proteger la información confidencial que cada uno posee. Una buena práctica que
siempre se debería hacer, es ubicar en una VLAN separada a los visitantes de la red,
4
configurando dicha VLAN con restricciones muy estrictas para acceder a Internet, sin
acceso a la Intranet.
Ilustración 2 Certificado de identificación personal en Windows Ilustración 3 Certificado del Servidor RADIUS visto en MAC OSX
5
En los parámetros de configuración de red de los equipos que tendrían acceso a la misma, se
configuró para que solamente se establezca la conexión con el punto de ejecución de políticas
el cual demuestre con un certificado digital, expedido por la Autoridad de Certificación en la cual
dicho equipo confía, la identidad del servidor RADIUS el cual verificará las credenciales.
El servidor RADIUS está configurado para que tenga como puntos de información de políticas
dos tipos de servidores de directorio centralizado; estos son OpenLDAP (licencia GNU) y
Directorio Activo (AD) de Microsoft. Al emplearse OpenLDAP se podrán otorgar los permisos
que tiene cada usuario en la red, al tener este servidor de directorio los pares atributo-valor
necesarios para informar al servidor RADIUS a qué VLAN será direccionado el usuario. Un
vistazo de este tipo de autenticación se muestra a continuación:
Al igual que se hizo con EAP-PEAP, se configuraron los equipos de los usuarios que acceden
a la red para que se realice autenticación mutua, antes de hacer el intercambio de credenciales
del usuario, de tal forma que no se realice la entrega si el punto de ejecución de políticas no
entrega un certificado de Servidor RADIUS válido.
Los sistemas operativos de Microsoft Windows, por defecto no tienen compatibilidad con este
tipo de EAP, por lo que fue necesario instalar un software licencia GNU adicional que
administrara la conexión inalámbrica llamado wpa_supplicant, el cual permite usar este tipo de
conexión y una gran variedad de otros tipos de EAP. Para los demás sistemas operativos
probados no fue necesario, dado que tenían compatibilidad por defecto con este tipo de EAP.
Un vistazo de este tipo de autenticación se muestra a continuación:
Ilustración 10 Configuración del Punto de Acceso inalámbrico para autenticar contra el Servidor RADIUS
aaa new-model
aaa authentication dot1x default group radius
dot1x system-auth-control
Para configurar el Puerto de acceso Ethernet en donde se conectará el usuario que usará la red
con AAA:
interface FastEthernet0/2
switchport mode access
dot1x port-control auto
También se deben crear las VLAN que se planea asignar a los usuarios de acuerdo al
departamento corporativo al que pertenezcan.
En el punto de decisión de políticas (Servidor RADIUS) es necesario autorizar a los puntos de
ejecución de políticas (PEP) que tendrán permiso para hacer las consultas de AAA de los
usuarios que quieran ingresar a la red.
8
En el archivo clients.conf dentro de la carpeta de configuración del servidor RADIUS
FreeRADIUS, se ingresan los puntos de ejecución de políticas que se desea que usen el
servidor RADIUS como punto de decisión de políticas, especificando su dirección IP y el secreto
compartido que tendrá con dicho PEP. Si el servidor RADIUS recibe una petición de un PEP
que no está en este listado, o el secreto compartido está errado, será ignorada.
client cali {
ipaddr = 10.10.10.10
secret= secretomuysecreto }
La red tendrá como punto de información de políticas (PIP) al servidor de directorio LDAP
OpenLDAP, en el cual está almacenada la información de todos los usuarios que deseen
ingresar a la red.
En esta información se encuentran los pares de atributo-valor que permitirán que el punto de
ejecución de políticas (conmutador de nivel 2) establezca los permisos para cada uno, que se
verán reflejados en el direccionamiento a una VLAN determinada, ubicando a cada usuario en
una VLAN diferente dependiendo del departamento de la organización al que pertenezca; dicha
VLAN estará configurada como desee el administrador de red para hacer las restricciones que
crea conveniente.
También usando un atributo-valor se podrá restringir en qué horario puede ingresar cada
usuario a la red. Si intenta acceder a la red en un horario diferente al establecido en su perfil, la
petición será negada. Los pares atributo-valor nombrados son los siguientes:
radiusLoginTime: En este valor se especifica en qué horario tendrá permiso para acceder
a la red.
radiusTunnelMediumType: En este valor se especifica el estándar que manejará el
conmutador de nivel 2 que hará la implantación de las políticas en el equipo del usuario que
ingresa la red.
radiusTunnelType: En este valor se especifica en qué tipo de segmentación lógica de red
se harán las restricciones sobre los usuarios.
radiusTunnelPrivateGroupId: Este valor establece en cual VLAN se configurará el acceso
a la red de determinado usuario.
Los comandos usados en la configuración del conmutador Cisco Catalyst 2950 para realizar
este direccionamiento son:
Para activar el direccionamiento automático de un usuario a una VLAN indicada por el
servidor RADIUS:
Se usó una base de datos mySQL para el ingreso de la información del acceso de los
usuarios, usando las plantillas que contiene el servidor RADIUS FreeRADIUS para la creación
de las tablas donde se ingresará la información.
Usando las funcionalidades de OpenSSL para la creación de certificados digitales y las
características del Servidor Web Apache, se creó un certificado digital para el Servidor Web,
con el cual se pudiera establecer una conexión segura cuando se consulte la base de datos
mySQL usando la interfaz Web de phpMyAdmin, desde un equipo remoto.
Para que el servidor RADIUS registre los datos de los usuarios que han sido autenticados, los
cuales se ingresarán en la base de datos, es necesario configurar esta característica en los
puntos de ejecución de políticas.
10
El conmutador de nivel 2 quien actuaría como punto de ejecución de políticas (Cisco
2950) para los usuarios que deseen ingresar a la red con sistema de autenticación, autorización
y auditoría usando Ethernet, tiene la capacidad de enviar los datos de auditoría del equipo que
está ingresando a la red. Entre los datos que puede enviar este dispositivo de red se tienen:
Nombre de usuario.
Dirección MAC del equipo que está ingresando a la red y del punto de ejecución de polí-
ticas que atendió al usuario.
Una muestra de cómo quedan algunos de los datos anteriores ingresados en la base de datos
mySQL se muestra a continuación:
El comando necesario para configurar este punto de ejecución de políticas para que realice el
envío de los datos de auditoría de los usuarios al servidor RADIUS se muestra a continuación:
El Servidor RADIUS FreeRADIUS junto con todas las demás herramientas descritas en el
trabajo de grado que permiten implementar una red con sistema de autenticación, autorización
y auditoría fueron configuradas en un computador de escritorio, dentro de una agencia de
publicidad multinacional en la sede de Cali, conectado a toda la infraestructura de red que
posee esta agencia, que está interconectada con un enlace WAN con las demás sedes de la
agencia, que se encuentran en Bogotá y Medellín. En la ciudad de Bogotá también fue
configurado un Servidor RADIUS en una máquina virtual en Ubuntu.
Un vistazo de la infraestructura de red y de los equipos más relevantes conectados a ella se
muestra a continuación:
Ilustración 13 Infraestructura de red de la Agencia de Publicidad en donde fue implementado el Servidor de AAA
12
3.1 .2. ENTORNO Y MODELO DE PRUEBAS REALIZADAS AL SERVIDOR RADIUS.
Registro de los ingresos a la red exitosos o fallidos de los usuarios en una base de datos
mySQL.
Fue posible configurar los equipos de los usuarios para que sólo establecieran el
proceso de autenticación con el punto de ejecución de políticas si este presentaba un
certificado digital de identificación del Servidor RADIUS, el cual haya sido expedido por
una Autoridad de Certificación en quien dicho equipo confíe. Si no se cumplía este
requisito, el proceso de autenticación era detenido.
El acceso de los usuarios a la red con sistema de AAA fue realizado con los
sistemas operativos más populares disponibles, entre ellos Windows en las versiones
XP, Vista y 7, MAC OSX versiones 10.5 a la 10.6 y Ubuntu en la versión 10.4. Con todos
14
los sistemas operativos anteriores fue posible hacer la configuración descrita para
acceder a la red, logrando una conexión exitosa y sin inconvenientes.
El consumo de recursos del sistema operativo Ubuntu, funcionando en el equipo que se usó
para la implementación de la red con sistema AAA con el Servidor FreeRADIUS activo, se
muestra a continuación:
Se implementaron en la red AAA las políticas que usualmente hacen a una red muy
segura; Estas políticas fueron:
o Direccionamiento de los usuarios autenticados exitosamente a una VLAN,
dependiendo de su rol en la red corporativa.
o Restricciones en el horario de acceso a la red, configurable para cada
usuario o departamento corporativo.
o Registro en una base de datos de los accesos exitosos o fallidos de los
usuarios de la red.
o Registro de los datos concernientes al equipo del usuario que ha sido
autenticado exitosamente y ha ingresado a la red, como también las actividades
de dicho usuario dentro de la red para efectos de control y seguimiento.
Se logró configurar el Servidor RADIUS para que use dos puntos de información de
políticas diferentes. Uno de ellos es un servidor de directorio OpenLDAP, el cual tiene
soporte completo para todas las funcionalidades necesarias en el trabajo de grado, con
respecto a las políticas que se establecen en cada usuario. El otro es el servicio de
directorio de Microsoft, El Directorio Activo, que sólo posee las credenciales de los
usuarios de varias ciudades (nombre de usuario y contraseña) de la red corporativa
donde se implementó el servicio de AAA.
16
Se configuraron de forma básica, varias herramientas web que permiten hacer
administración de las funcionalidades implementadas en el Servidor de Autenticación. La
herramienta que permite ver el contenido de las bases de datos mySQL a través de una
interfaz web se llama phpMyAdmin, con la cual es posible detallar toda la información
registrada de los usuarios que han accedido a la red. Otra herramienta configurada para
realizar búsquedas en la información de auditoría de la base de datos mySQL y
mostrarla de forma vistosa, fue dialupadmin, la cual es una herramienta que está
incluida con el servidor RADIUS FreeRADIUS. Esta herramienta permite filtrar la
búsqueda de los datos de auditoría de la base de datos mySQL usando cualquier
atributo que esté dentro de la base de datos. Es muy útil para generar reportes de
ingreso de los usuarios que han accedido a la red.
El acceso de los usuarios a la red con sistema de AAA se hizo con los sistemas
operativos más populares disponibles. Estos fueron: Windows en las versiones XP, Vista
y 7, MAC OSX versiones 10.5 a 10.6 y Ubuntu en la versión 9.10. Con todos los
sistemas operativos se demostró que fue posible usar los tres esquemas de
autenticación disponibles (EAP-TLS, EAP-PEAP, EAP-TTLS), realizando autenticación
mutua entre las partes del proceso de AAA, consiguiendo una conexión exitosa, segura
y sin inconvenientes.
Se pudo detallar que los recursos de hardware que son empleados mientras el
servidor de AAA está funcionando, con todas las características nombradas en el
artículo, son bajas. Esto abre la posibilidad de configurar un hardware de único
propósito, de bajo costo, que implemente todas las características del Servicio de AAA.
Esto permitiría que se pueda vender como una solución para la implementación del
servicio de AAA en una red, a un costo de producción bajo, con atributos atractivos,
como son el bajo consumo de energía y espacio.
17
5. REFERENCIAS BIBLIOGRÁFICAS
CONVERY, Sean. The Internet Protocol Journal - Volume 10, No. 1 and No. 2 Network
Authentication, Authorization, and Accounting: Part One and Part Two. [online]
Accessed on 11/11/2008
Disponible en:
http://www.cisco.com/web/about/ac123/ac147/archived_issues/ipj_10-1/101_aaa-part1.html
http://www.cisco.com/web/about/ac123/ac147/archived_issues/ipj_10-2/102_aaa-
part2.html
LARSSON, Anton.
Authentication, Authorization and Accounting within an Access Network
using Mobile IPv6 and Diameter. Monash University, Australia. Diciembre de 2002.
[online]Accessed on 11/11/2008. Disponible en:
http://epubl.luth.se/1402-1617/2003/029/LTU-EX-03029-SE.pdf
ROSER, Ken.
HOW TO: EAP/TLS Setup for FreeRADIUS and Windows XP Supplicant.
FreeRADIUS.org, Abril de 2002. [online] Accessed on 25/05/2009. Disponible en:
http://freeradius.org/doc/EAPTLS.pdf
18
VUKSAN, Vladimir.
FreeRADIUS + 802.1x/WPA + OpenLDAP HOW TO. Mayo de 2005. [online]
Accessed on 25/05/2009. Disponible en:
http://vuksan.com/linux/dot1x/802-1x-LDAP.html
UBUNTU Geek.
How to Integrate windows Active Directory and Samba in Ubuntu. Noviembre de
2008 [online] Accessed on 04/02/2010. Disponible en:
http://www.ubuntugeek.com/how-to-integrate-windows-active-directory-and-samba-in-
ubuntu.html
DEKOK, Alan.
Configuración FreeRADIUS con Directorio Activo. Noviembre de 2009 [online]
Accessed on 04/02/2010. Disponible en:
http://deployingradius.com/documents/configuration/active_directory.html
SCHWARTZ, Charles.
Tutorial de la configuración de FreeRADIUS con Directorio Activo. Noviembre de
2009 [online] Accessed on 04/02/2010. Disponible en:
http://homepages.lu/charlesschwartz/radius/freeRadius_AD_tutorial.pdf
WARMAN, Naama.
Protocolo RADIUS, The Raymond and Beverly Sackler Faculty of Exact Sciences,
Tel-Aviv University, Tel-Aviv. Septiembre de 2000 [online] Accessed on 04/02/2010.
Disponible en:
http://www3.rad.com/networks/2000/radius/home.htm
JOOBNETWORK.
Configuración FreeRADIUS usando OpenLDAP. Agosto de 2007 [online] Accessed
on 04/02/2010. Disponible en:
http://cit3.ldl.swin.edu.au/~533473X/index.php/HowTo:OpenLDAP%2BFreeRADIUS
OPENLDAP
Instalación, configuración y administración del Servicio de Directorio OpenLDAP.
[online]. Accessed on 12/02/2010. Disponible en:
http://www.openldap.org/doc/admin24/
FreeRADIUS
Asignación automática de VLAN’s a los usuarios autenticados exitosamente. [online].
Accessed on 12/02/2010. Disponible en:
http://old.nabble.com/Radius-%2B-LDAP-and-auto-vlan-td17270445.html
LOWE Scott
Integración del directorio activo con los protocolos del estándar IEEE 802.1X. [online].
Accessed on 16/02/2010. Disponible en:
http://blog.scottlowe.org/2006/12/07/8021x-integration-with-active-directory/