Академический Документы
Профессиональный Документы
Культура Документы
Seguridad en Redes
Alejandro Valdés Jimenez
avaldes@utalca.cl
Tabla de contenidos
1. Objetivos .................................................................................................................................................3
2. Introducción ...........................................................................................................................................3
3. Instalación y Configuración de FreeRADIUS .....................................................................................3
3.1. users ............................................................................................................................................4
3.2. clients.conf ..................................................................................................................................4
3.3. eap.conf .......................................................................................................................................4
3.4. radius.conf...................................................................................................................................5
4. Arrancar FreeRADIUS .........................................................................................................................8
5. Configuración Access Point ..................................................................................................................9
6. Configuración Cliente..........................................................................................................................10
ii
1. Objetivos
El alumno al finalizar la experiencia deberá ser capaz de:
2. Introducción
La cada vez mas frecuente utilización de redes inalámbricas y la gran tentación que significa obtener
información confidencial escuchando la comunicación que trafica en ellas, ha hecho que se implementen
y se sigan implementando nuevos formas de comunicación en este tipo de redes, que permitan el tráfico
seguro de datos.
En esta experiencia veremos como restringuir el acceso a la red inalámbrica mediante la utilización de un
usuario/clave y como podemos lograr que la información que viaja lo haga de forma segura, mediante la
encriptación de los datos.
Para esto necesitamos de 3 elementos, un servidor RADIUS (FreeRADIUS), un Access Point y los
clientes. FreeRADIUS lo montaremos sobre una máquina con Debian GNU/Linux. El Access Point será
un D-Link DWL-2000AP+ y los clientes serán PCs con Windows XP con SP2.
# desempaquetamos y descomprimimos:
:~$ tar xvfz freeradius-1.1.2.tar.gz
# compilamos:
:~/freeradius-1.1.2$ make
3
FreeRADIUS + WPA + EAP + TLS
Los archivos de configuración quedan instalados en /usr/local/etc/raddb/ , que es la ruta por defecto para
cuando instalamos de fuentes. Una vez compilado e instalado el servidor nos dedicamos a configurarlo.
A continuación se muestran las configuraciones necesarias para nuestro laboratorio.
3.1. users
Archivo donde se especifican las credenciales de los usuarios de la red. Se usa este archivo si no existe
otro backend para el almacenamiento de los usuarios. En este ejemplo definimos el usuario test con la
clave test. Estas credenciales tendremos que ingresar cuando intentemos conectarnos a la red
inalámbrica.
3.2. clients.conf
Descripción y credenciales de los diferentes dispositivos que consultan al RADIUS (Aps, NAS, etc).
client 192.168.13.91 {
secret = testing123
shortname = AP-RADIUS
}
client 192.168.13.99 {
secret = testing123
shortname = PRIMATE
}
client 200.27.70.12 {
secret = testing123
shortname = GIBBON
}
client 127.0.0.1 {
secret = testing123
shortname = localhost
nastype = other # localhost isn’t usually a NAS...
}
4
FreeRADIUS + WPA + EAP + TLS
3.3. eap.conf
eap {
default_eap_type = tls
timer_expire = 60
ignore_unknown_eap_types = no
cisco_accounting_username_bug = no
# Supported EAP-types
# EAP-TLS
tls {
private_key_password = laclave
private_key_file = ${raddbdir}/certs/servidor-prueba.key
certificate_file = ${raddbdir}/certs/servidor-prueba.crt
CA_file = ${raddbdir}/certs/demoCA/cacert.pem
dh_file = ${raddbdir}/certs/dh
random_file = ${raddbdir}/certs/random
fragment_size = 1024
include_length = yes
peap {
default_eap_type = mschapv2
}
mschapv2 {
}
}
3.4. radius.conf
prefix = /usr/local
exec_prefix = ${prefix}
sysconfdir = ${prefix}/etc
localstatedir = ${prefix}/var
sbindir = ${exec_prefix}/sbin
logdir = ${localstatedir}/log/radius
raddbdir = ${sysconfdir}/raddb
radacctdir = ${logdir}/radacct
5
FreeRADIUS + WPA + EAP + TLS
#
log_file = ${logdir}/radius.log
#
libdir = ${exec_prefix}/lib
#
pidfile = ${run_dir}/radiusd.pid
#
max_request_time = 30
#
delete_blocked_requests = no
#
cleanup_delay = 5
#
max_requests = 1024
#
bind_address = *
#
port = 0
#
hostname_lookups = no
#
allow_core_dumps = no
#
regular_expressions = yes
extended_expressions = yes
#
log_stripped_names = yes
#
log_auth = yes
#
log_auth_badpass = yes
log_auth_goodpass = yes
#
usercollide = no
#
lower_user = no
6
FreeRADIUS + WPA + EAP + TLS
lower_pass = no
#
nospace_user = no
nospace_pass = no
#
checkrad = ${sbindir}/checkrad
# SECURITY CONFIGURATION
security {
max_attributes = 200
reject_delay = 1
status_server = no
}
# PROXY CONFIGURATION
proxy_requests = no
# CLIENTS CONFIGURATION
$INCLUDE ${confdir}/clients.conf
# SNMP CONFIGURATION
snmp = no
# MODULE CONFIGURATION
modules {
$INCLUDE ${confdir}/eap.conf
mschap {
authtype = MS-CHAP
}
files {
usersfile = ${confdir}/users
acctusersfile = ${confdir}/acct_users
preproxy_usersfile = ${confdir}/preproxy_users
compat = no
}
# Instantiation
7
FreeRADIUS + WPA + EAP + TLS
instantiate {
}
#
authorize {
files
mschap
eap
}
# Authentication.
authenticate {
Auth-Type MS-CHAP {
mschap
}
eap
}
#
preacct {
}
#
accounting {
}
#
session {
}
#
post-auth {
}
#
pre-proxy {
}
#
post-proxy {
}
4. Arrancar FreeRADIUS
Algunas consideraciones antes de subir el servidor. FreeRADIUS atiende en los puertos UDP/1812 y
UDP/1813 por lo que hay que abrirlos en firewalls correspondientes, si es que pasan por algún firewall.
8
FreeRADIUS + WPA + EAP + TLS
:~# /usr/local/sbin/radiusd -f -X
...
Listening on authentication *:1812
Listening on accounting *:1813
Ready to process requests.
Así podemos ver los registros de las transacciones que ocurren en la negociación entre el cliente - Access
Point - FreeRADIUS.
y los logs:
rad_recv: Access-Request packet from host 127.0.0.1:1025, id=19, length=56
User-Name = "test"
User-Password = "test"
NAS-IP-Address = 255.255.255.255
NAS-Port = 1812
...
auth: type Local
auth: user supplied User-Password matches local User-Password
Login OK: [test/test] (from client localhost port 1812)
Sending Access-Accept of id 19 to 127.0.0.1 port 1025
Finished request 0
...
9
FreeRADIUS + WPA + EAP + TLS
6. Configuración Cliente
Una vez que ya hemos configurado el servidor RADIUS y el Access Point nos queda configurar un
cliente con tarjeta inalámbrica. Importante destacar que para esta configuración necesitamos, para el caso
de Windows XP tener el Service Pack 2. Otros sistemas operativos tiene soporte nativo.
Para configurar nuestra conexión inalámbrica debemos hacer los siguientes cambios en su configuración:
• Abrir las propiedades de la conexión inalámbrica y seleccionar Redes Inalámbricas, Ver Figura 2.
• Configurar el mecanismo de autenticación de red y el tipo de encriptación, Ver Figura 3.
• El tipo de EAP a utilizar, Ver Figura 4.
• Deshabilitar la validación del certificado del servidor y seleccionar el método de autenticación para
EAP, Ver Figura 5.
• Deshabilitar utilizar el usuario y clave de windows, Ver Figura 6.
• Seleccionar la red radius, Ver Figura 7.
• Windows no indicará que hagamos click sobre el mensaje para que ingresemos nuestras credenciales,
Ver Figura 8.
• En User name y Password ingresamos test, Ver Figura 9.
• Esperamos a quedar conectados, Ver Figura 10.
10
FreeRADIUS + WPA + EAP + TLS
Figura 2. Paso 1
Figura 3. Paso 2
11
FreeRADIUS + WPA + EAP + TLS
Figura 4. Paso 3
Figura 5. Paso 4
12
FreeRADIUS + WPA + EAP + TLS
Figura 6. Paso 5
Figura 7. Paso 6
Figura 8. Paso 7
13
FreeRADIUS + WPA + EAP + TLS
Figura 9. Paso 8
14