Radius
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Radius

on

  • 330 views

 

Statistics

Views

Total Views
330
Views on SlideShare
330
Embed Views
0

Actions

Likes
0
Downloads
5
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Radius Document Transcript

  • 1. FreeRADIUS + WPA + EAP + TLS Seguridad en Redes Alejandro Valdés Jimenez avaldes@utalca.cl
  • 2. 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
  • 3. 1. Objetivos El alumno al finalizar la experiencia deberá ser capaz de: • Instalar y configurar FreeRADIUS. • Configurar un Access Point. • Crear una conexión segura en una red inalámbrica. 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. 3. Instalación y Configuración de FreeRADIUS Lo primero es bajar el código fuente, descomprimir el archivo, configurar las opciones de compilación, compilar e instalar. Los pasos se ven a continuación: # bajamos el código fuente: ~$ wget ftp://ftp.freeradius.org/pub/radius/freeradius-1.1.2.tar.gz # desempaquetamos y descomprimimos: :~$ tar xvfz freeradius-1.1.2.tar.gz # generamos los archivos para la compilación: :~$ cd freeradius-1.1.2/ :~/freeradius-1.1.2$ ./configure --without-rlm_smb --without-rlm_perl --without-rlm_ldap --without-rlm_krb5 # compilamos: :~/freeradius-1.1.2$ make # si todo termina bien, lo instalamos (como root): 3
  • 4. FreeRADIUS + WPA + EAP + TLS :~/freeradius-1.1.2$ make install 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. test Auth-Type := Local , User-Password == "test" 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
  • 5. FreeRADIUS + WPA + EAP + TLS 3.3. eap.conf Archivo de configuración de las directivas EAP a utilizar. Es un include de radiusd.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 Archivo general de configuración de FreeRADIUS y del daemon. 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 # Location of config and logfiles. confdir = ${raddbdir} run_dir = ${localstatedir}/run/radiusd 5
  • 6. 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
  • 7. 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 # THREAD POOL CONFIGURATION thread pool { start_servers = 5 max_servers = 32 min_spare_servers = 3 max_spare_servers = 10 max_requests_per_server = 0 } # 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
  • 8. 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
  • 9. FreeRADIUS + WPA + EAP + TLS Para subir el servicio ejecutamos: :~# /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. Podemos probar de manera local con el siguiente comando: :~$ radtest test test localhost 1812 testing123 Sending Access-Request of id 19 to 127.0.0.1 port 1812 User-Name = "test" User-Password = "test" NAS-IP-Address = 255.255.255.255 NAS-Port = 1812 rad_recv: Access-Accept packet from host 127.0.0.1:1812, id=19, length=2 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 ... 5. Configuración Access Point Como muestra la Figura 1, debemos ingresar un nombre al access point, dar un nombre a la red (ESSID = radius), seleccionar el canal (por defecto está el 6), seleccionar el método de autenticación WPA e ingresar los datos del servidor RADIUS. Recordar que la "shared secret" corresponde a la definida en el archivo clients.conf de FreeRadius y para este cliente. Aplicamos los cambios y el access point se reiniciara. 9
  • 10. FreeRADIUS + WPA + EAP + TLS Figura 1. Access Point 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
  • 11. FreeRADIUS + WPA + EAP + TLS Figura 2. Paso 1 Figura 3. Paso 2 11
  • 12. FreeRADIUS + WPA + EAP + TLS Figura 4. Paso 3 Figura 5. Paso 4 12
  • 13. FreeRADIUS + WPA + EAP + TLS Figura 6. Paso 5 Figura 7. Paso 6 Figura 8. Paso 7 13
  • 14. FreeRADIUS + WPA + EAP + TLS Figura 9. Paso 8 Figura 10. Paso 9 14