Está en la página 1de 22

Instituto Tecnolgico y de Estudios Superiores de Monterrey, Campus Puebla Redes III

RADIUS
Remote Access Dial-in User Service

Adolfo Alonso Mrquez Fanny Paola adillo !errera $antia%o &arc'a Pimentel () &) $er%io Arturo +in% Ali,i Paulette Am,aro -orrilla .autista +uis Manuel Pineda +lano &ustavo 0ulin Pelez &arc'a

789413 9847"# 1*9"""7 1*9""89 1*9"47* 1*9"//# 1*931"3

$e,tiem1re "**7

R A D I U S 2(emote Access 3ial-in 4ser $ervice5


Autorizaci6n Autenticaci6n
Mane7o de 8uentas 2Accountin%5

Introduccin
RA394$ es un ,rotocolo am,liamente usado en el am1iente de redes: ,ara dis,ositivos tales como routers: servidores y s;itc<es entre otros) =s utilizado ,ara ,roveer autenticaci6n centralizada: autorizaci6n y mane7o de cuentas ,ara redes de acceso dial-u,: redes ,rivadas virtuales 2 P>5 y: recientemente: ,ara redes de acceso inalm1rico)
Puntos im,ortantes? +os sistemas em1e1idos %eneralmente no ,ueden mane7ar un %ran n@mero de usuarios con informaci6n diferente de autenticaci6n) (equiere una %ran cantidad de almacenamiento) (A394$ facilita una administraci6n centralizada de usuarios) $i se mane7a una enorme cantidad de usuarios: continuamente cientos de ellos son a%re%ados o eliminados a lo lar%o del d'a y la informaci6n de autenticaci6n cam1ia continuamente) =n este sentido: la administraci6n centralizada de usuarios es un requerimiento o,eracional) 3e1ido a que las ,lataformas en las cuales (A394$ es im,lementado son frecuentemente sistemas em1e1idos: <ay o,ortunidades limitadas ,ara so,ortar ,rotocolos adicionales) Al%@n cam1io al ,rotocolo (A394$ de1er ser com,ati1le con clientes y servidores (A394$ ,re-eAistentes)

4n cliente (A394$ env'a credenciales de usuario e informaci6n de ,armetros de coneAi6n en forma de un mensa7e (A394$ al servidor) Bste autentica y autoriza la solicitud del cliente y env'a de re%reso un mensa7e de res,uesta) +os clientes (A394$ tam1iCn env'an mensa7es de cuentas a servidores (A394$) +os mensa7es (A394$ son enviados como mensa7es 43P 24ser 3ata%ram Protocol5) =l ,uerto 43P 181" es usado ,ara mensa7e de autenticaci6n (A394$ y: el ,uerto 43P 1813: es usado ,ara mensa7es de cuentas (A394$) Al%unos servidores usan el ,uerto 43P 1#4/ ,ara mensa7es de autenticaci6n y: el ,uerto 1#4#: ,ara mensa7es de cuentas) =sto @ltimo de1ido a que son los ,uertos que se usaron inicialmente ,ara este ti,o de servicio) ormato de Pa!uetes

$e,tiem1re "**7

+os datos entre el cliente y el servidor son intercam1iados en ,aquetes (A394$) 8ada ,aquete contiene la si%uiente informaci6n?

Fi%ura 1? Formato de Paquete (A394$ <tt,?DDin%)ctit)ut;ente)nlDE4/D3/)1DFec<nolo%yDradiusD

+os cam,os en un ,aquete (A394$ son?

8ode 286di%o5) 4n octeto que contiene el ti,o de ,aquete) "alor 1 " 3 4 / 11 1" 13 "// Descripcin Access-(equest Access-Acce,t Access-(e7ect Accountin%-(equest Accountin%-(es,onse Access-8<allen%e $tatus-$erver 2eA,erimental5 $tatus-8lient 2eA,erimental5 (eserved

9dentifier 29dentificador5) 4n octeto que ,ermite al cliente (A394$ relacionar una res,uesta (A394$ con la solicitud adecuada) +en%t<) +on%itud del ,aquete 2" octetos5) Aut<enticator 2 erificador5) alor usado ,ara autenticar la res,uesta del servidor (A394$) =s usado en el al%oritmo de encu1rimiento de contraseGa) Attri1utes 2Atri1utos5) Aqu' son almacenados un n@mero ar1itrario de atri1utos) +os @nicos atri1utos o1li%atorios son el 4ser->ame 2usuario5 y el 4ser-Pass;ord 2contraseGa5)

Fi,os de mensa7es (A394$ definidos ,or los (F8 "8#/ y "8##? $e,tiem1re "**7

Access#Re!uest$ =nviado ,or un cliente (A394$ ,ara solicitar autenticaci6n y autorizaci6n ,ara conectarse a la red) 3e1e contener el usuario y contraseGa 2ya sea de usuario o 8!AP5H adems del ,uerto >A$: si es necesario) Access#Accept$ =nviado ,or un servidor (A394$ en res,uesta a un mensa7e de Access(equest) 9nforma que la coneAi6n est autenticada y autorizada y le env'a la informaci6n de confi%uraci6n ,ara comenzar a usar el servicio) Access#Re%ect) =nviado ,or un servidor (A394$ en res,uesta a un mensa7e de Access(equest) =ste mensa7e informa al cliente (A394$ que el intento de coneAi6n <a sido rec<azado) 4n servidor (A394$ env'a este mensa7e ya sea ,orque las credenciales no son autCnticas o ,or que el intento de coneAi6n no est autorizado) Access#C&allenge) =nv'o de un servidor (A394$ en res,uesta a un mensa7e de Access(equest) =ste mensa7e es un desaf'o ,ara el cliente (A394$) $i este ti,o de ,aquete es so,ortado: el servidor ,ide al cliente que vuelva a enviar un ,aquete Access-(equest ,ara <acer la autenticaci6n) =n caso de que no sea so,ortado: se toma como un Access(e7ect) Accounting#Re!uest$ =nviado ,or un cliente (A394$ ,ara es,ecificar informaci6n de cuenta ,ara una coneAi6n que fue ace,tada) Accounting#Response$ =nviado ,or un servidor (A394$ en res,uesta a un mensa7e de Accountin%-(equest) =ste mensa7e reconoce el ,rocesamiento y rece,ci6n eAitosa de un mensa7e de Accoutin%-(es,onse)

Diagrama de Secuencia

$e,tiem1re "**7

=l si%uiente dia%rama muestra la secuencia se%uida cuando un cliente accede a la red y se desconecta de la misma)

1) =l cliente env'a su usuarioDcontraseGa: esta informaci6n es encri,tada con una llave secreta y enviada en un Access-(equest al servidor (A394$ 2Fase de Autenticaci6n5) ") 8uando la relaci6n usuarioDcontraseGa es correcta: entonces el servidor env'a un mensa7e de ace,taci6n: Access-Acce,t: con informaci6n eAtra 2Por e7em,lo? direcci6n 9P: mscara de red: tiem,o de sesi6n ,ermitido: etc)5 2Fase de Autorizaci6n5) 3) =l cliente a<ora env'a un mensa7e de Accountin%-(equest 2$tart5 con la informaci6n corres,ondiente a su cuenta y ,ara indicar que el usuario est reconocido dentro de la red 2Fase de Accounting5) 4) =l servidor (A394$ res,onde con un mensa7e Accountin%-(es,onse: cuando la informaci6n de la cuenta es almacenada) /) 8uando el usuario <a sido identificado: Cste ,uede acceder a los servicios ,ro,orcionados) Finalmente: cuando desee desconectarse: enviar un mensa7e de Accountin%-(equest 2$to,5 con la si%uiente informaci6n?
o o o o o o o

3elay Fime) Fiem,o que el cliente lleva tratando de enviar el mensa7e) 9n,ut Ictets) >@mero de octetos reci1ido ,or el usuario) Iut,ut Ictets) >@mero de octetos enviados ,or el usuario) $ession Fime) >@mero de se%undos que el usuario <a estado conectado) 9n,ut PacJets) 8antidad de ,aquetes reci1idos ,or el usuario) Iut,ut PacJets) 8antidad de ,aquetes enviados ,or el usuario) (eason) (az6n ,or la que el usuario se desconecta de la red)

#) =l servidor (A394$ res,onde con un mensa7e de Accountin%-(es,onse cuando la informaci6n de cuenta es almacenada)

$e,tiem1re "**7

+a si%uiente fi%ura ,resenta una vista sim,le de la to,olo%'a de red asumida al esta1lecer una coneAi6n (A394$ autenticada con un router)

$e,tiem1re "**7

Desarrollo
Para la im,lementaci6n del servidor (A394$: utilizamos las si%uientes <erramientas de <ard;are y soft;are?
- 4na la,to, con +inuA que fun%ir como servidor (A394$ 2en nuestro caso: 41untu5) - 4n Access Point-(outer E( "** .usiness $ervice) - +a,to,s con tar7etas inalm1ricas usadas como clientes) - Free(A394$ como servidor) - My$K+ ,ara el almacenamiento de datos de usuarios) A continuaci6n se ,resentan los ,asos a detalle se%uidos ,ara la confi%uraci6n de Free(A394$) Instalacin Actualmente: Free(A394$ ,ermite su instalaci6n mediante la descar%a y com,ilaci6n del c6di%o fuente) $in em1ar%o: ,ara su me7or mane7o: resulta ms ,rctico convertir el c6di%o fuente en un ,aquete 3e1ian e instalarlo desde el mismo) Para ello: ,rimero se instala lo si%uiente ,ara la construcci6n de ,aquetes 3e1ian) 8a1e mencionar que 1uildessential no funciona en cualquier sistema 3e1ian)
# apt-get install build-essential # apt-get install apt-src

Posteriormente: se actualizan las listas de ,aquetes dis,oni1les 2,ara que se descar%ue la versi6n ms actual en los re,ositorios5: se crea el directorio donde se %uardar Free(A394$ y se descar%a)
# # # # apt-src update mkdir ~/build_freeradius cd ~/build_freeradius apt-src install freeradius

=l documento LrulesM en LND1uildOfreeradiusDfreeradius-1)1)3Dde1ianM de1e modificarse ,ara que las si%uientes l'neas se vean as'?
#buildssl=--without-rlm_eap_peap --without-rlm_eap_tls --without-rlm_eap_ttls --without-rlm_otp --without-rlm_sql_postgresql --without-snmp #modulelist=krb5 ldap sql_mysql sql_iodbc buildssl=--with-rlm_sql_postgresql_lib_dir=`pg_config --libdir` --with-rlm_sql_postgresql_include_dir=`pg_config --includedir` modulelist=krb5 ldap sql_mysql sql_iodbc sql_postgresql

=sto <ar que Free(A394$ se instale con los m6dulos que necesitamos)

$e,tiem1re "**7

=l arc<ivo LcontrolM: en el mismo directorio: de1e verse as'?


ource! freeradius "uild-#epends! debhelper $%= 5&' libltdl(-de)' libpam*g-de)' libmysqlclient+5-de) , libmysqlclient-de)' libgdbm-de)' libldap--de)' libsasl--de)' libiodbc--de)' libkrb5-de)' snmp' autotools-de)' dpatch $%= -&' libperl-de)' libtool' dpkg-de) $%= +.+(.+/&' libssl-dev, libpq-dev "uild-0onflicts!

=sto <ar que Free(A394$ se asocie con las li1rer'as que requiere ,ara funcionar) =n nuestro caso: ,rinci,almente: My$K+ y $$+ A<ora se e7ecutan los si%uientes comandos ,ara actualizar el arc<ivo LcontrolM y ,ara instalar las li1rer'as sin ,ro1lemas?
# cd ~/build_freeradius/freeradius-+.+.(/debian # cat control.postgresql %% control # apt-get install libssl-de) libpq-de)

A<ora de1en cam1iarse las si%uientes l'neas en el arc<ivo Lc<an%elo%M encontrado en el directorio LND1uildOfreeradiusDfreeradius-1)1)3Dde1ianDM)
freeradius $+.+.(-(ubuntu+tls& feisty1 urgency=low 2 3dd tls support for compilation -- reauthor 4reauthor5gmail.com% 6ri' +7 8ar -**9 -*!--!:* ;*-**

Finalmente: se escri1en los si%uientes comandos ,ara construir el ,aquete e instalarlo) Adems: se requiri6 la instalaci6n del ,aquete de coneAi6n de Free(A394$ con My$K+ llamado? Lfreeradius-mysqlO1)1)3-3u1untu1tlsOi38#)de1M)
# # # # cd ~/build_freeradius fakeroot dpkg-buildpackage -b <uc freeradius dpkg -i freeradius_+.+.(-(ubuntu+tls_i(=7.deb dpkg -i freeradius-mysql_+.+.(-(ubuntu+tls_i(=7.deb

Al instalarse los ,aquetes: se e7ecutanH ,ara ,oder confi%urarlos: de1en ,ararse con el si%uiente comando?
# /etc/init.d/freeradius stop

$e,tiem1re "**7

Configuracin Free(A394$ cuenta con diversos arc<ivos que de1en confi%urarse ,ara lo%rar que funcione como se requiere) +os ,rinci,ales son? radiusd)conf: users: clients)conf: sql)conf y ea,)conf: todos localizados en DetcDfreeradius) A continuaci6n se descri1e la confi%uraci6n que de1e <a1er en cada uno de ellos) +o ms im,ortante se marca con ro7o) (adiusd)conf Aqu' solamente es necesario cam1iar los ar%umentos relacionados con $K+: =AP y la confi%uraci6n del dominio al que los clientes se conectarn) $K+ se confi%ura ,ara que (A394$ se conecte a Cl ,ara com,arar la informaci6n de autenticaci6n) =AP es el ,rotocolo ,ara la autenticaci6n de usuario: usada normalmente en redes inalm1ricas) =ste arc<ivo de confi%uraci6n es demasiado lar%o as' que aqu' s6lo se ,resentan las secciones de interCs que fueron modificadas) Para comenzar: de1e sustituirse todo P QconfdirR encontrado en el arc<ivo ,or el directorio actual de Free(A394$: en nuestro caso LDetcDfreeradiusM)
modules > pap > ? chap > ? pam > ? uniB > cache = no cache_reload = 7** radwtmp = C>logdir?/radwtmp pam_auth = radiusd authtype = 0@3A auto_header = yes

CDE0FG#H /etc/freeradius/eap.conf mschap > authtype = 8 -0@3A use_mppe = yes require_encryption = yes require_strong = no # Iindows en)Ja un nombre de usuario como #K8DEDKLusuario1 # pero' en la respuesta a 0hallenge' sMlo en)Ja el # usuario. Hsto pro)oca un error. 3l colocar sJ en este # hack' el error se corrige. with_ntdomain_hack = yes

$e,tiem1re "**7

? ldap > ser)er = Nldap.your.domainN basedn = No=8y Krg'c=G3N filter = N$uid=O> tripped-Gser-Eame!-O>Gser-Eame??&N start_tls = no access_attr = Ndialup3ccessN dictionary_mapping = C>raddbdir?/ldap.attrmap ldap_connections_number = 5 timeout = : timelimit = ( net_timeout = + ? ... preprocess > huntgroups = /etc/freeradius/huntgroups hints = /etc/freeradius/hints with_ascend_hack = no ascend_channels_per_line = -( # 8ismo moti)o que el pasado' pero para hacerlo en el # preprocesamiento with_ntdomain_hack = yes with_specialiB_Petstream_hack = no with_cisco_)sa_hack = no ? ... ippool main_pool > # e coloca el rango de DAs disponibles y la mQscara de # red range-start = +/-.+79.+.+ range-stop = +/-.+79.+.-5: netmask = -55.-55.-55.* cache-siRe = =** session-db = C>raddbdir?/db.ippool ip-indeB = C>raddbdir?/db.ipindeB o)erride = no maBimum-timeout = * ? ?

instantiate > eBec eBpr ? authoriRe > preprocess chap

$e,tiem1re "**7

mschap suffiB # H3A' acti)a el protocolo H3A para autoriRaciMn. 6DFH ' hace que # se lea el archi)o SusersT. UF' hace que se entre a la base de # datos de 8y UF para buscar los datos del cliente. eap files sql

authenticate > 3uth-Vype A3A > pap ? 3uth-Vype 0@3A > chap ? 3uth-Vype 8 -0@3A > mschap ? uniB # @abilita la autenticaciMn H3A eap

preacct > preprocess acct_unique suffiB ? accounting > detail uniB radutmp # Fee las cuentas localiRadas en la base de datos de 8y UF sql ? session > radutmp # Gsa 8y UF en el manePo de sesiones sql ? post-auth > # Gsa 8y UF para las tareas de post-autenticaciMn sql ? pre-proBy > ? post-proBy > eap ?

$e,tiem1re "**7

$ql)conf $e decidi6 usar My$K+ como 1acJend ,ara los usuarios de (A394$ de1ido a que ,ermite administrarlos de forma sim,le y fleAi1le) =s ms sencillo a%re%ar cam,os a una 1ase de datos 2que ,uede <acerse incluso desde una a,licaci6n de escritorio o ;e15 que modificar los arc<ivos de confi%uraci6n de Free(A394$) 4na vez que en el arc<ivo de confi%uraci6n Lradiusd)confM se <a activado el so,orte ,ara $K+: de1emos confi%urar el arc<ivo Lsql)confM que contiene informaci6n so1re el servidor $K+ y las consultas que se de1en <acer ,ara o1tener la informaci6n de los usuarios) =n las ,rimeras l'neas se da informaci6n so1re el servidor $K+: des,uCs viene la definici6n de las ta1las y: ,or @ltimo: las consultas) +as consultas no se colocaron en este arc<ivo: ,ero ,ueden verse en el arc<ivo ad7unto)
sql > dri)er = Nrlm_sql_mysqlN # Hs importante colocar el DA del ser)idor. Hl usuario root o el # usuario que tenga permisos a la base de datos SradiusT que # despuWs crearemos. 6inalmente' se coloca la contraseXa de este # usuario. ser)er = NlocalhostN login = NrootN password = NalipiN # #efiniciMn de base de datos y tablas radius_db = NradiusN acct_table+ = NradacctN acct_table- = NradacctN postauth_table = NradpostauthN authcheck_table = NradcheckN authreply_table = NradreplyN groupcheck_table = NradgroupcheckN groupreply_table = NradgroupreplyN usergroup_table = NusergroupN nas_table = NnasN deletestalesessions = yes sqltrace = no sqltracefile = C>logdir?/sqltrace.sql num_sql_socks = 5 connect_failure_retry_delay = 7* sql_user_name = NO>Gser-Eame?N ... ?

$e,tiem1re "**7

=a,)conf $e confi%ura este arc<ivo ,ara que =AP 2=Atensi1le Aut<entication Protocol5 funcione como ,rotocolo de autenticaci6n) =AP se utilizar como P=AP 2Protected =AP5) =l cual: a su vez: usar M$8!AP " 2Microsoft 8<allen%e-!ands<aJe Aut<entication Protocol5) Adems se requiere esta1lecer la lista de certificados)
eap > # e le dice que use AH3A default_eap_type = peap timer_eBpire = 7* ignore_unknown_eap_types = no cisco_accounting_username_bug = no md5 > ? leap > ? gtc > ? tls > # e cambian los ${raddbdir} por /etc/freeradius pri)ate_key_password = whate)er pri)ate_key_file = /etc/freeradius/certs/cert-sr).pem certificate_file = /etc/freeradius/certs/cert-sr).pem 03_file = /etc/freeradius/certs/demo03/cacert.pem dh_file = /etc/freeradius/certs/dh random_file = /de)/urandom auth_type = A3A

# e le dice que use 8 0@3AYpeap > default_eap_type = mschap)? mschap)- > ? ?

4na vez confi%urado este arc<ivo: de1en crearse li%as sim16licas a los certificados que =AP necesita: ,ara que ,ueda localizarlos) Para ello: se entra al directorio donde se %uardan los certificados y se e7ecuta un rehash)
# cd /etc/freeradius/certs # c_rehash

$e,tiem1re "**7

4sers =ste arc<ivo es el que contiene la informaci6n de los usuarios que ,ueden acceder a la red: en caso de que no se use otro mCtodo) =n nuestro caso: este arc<ivo no tiene muc<o uso ,uesto que se us6 una 1ase de datos en My$K+) Fodas las confi%uraciones que ten%an como usuario 3=FA4+F: son las que se asi%narn a los usuarios en caso de que no estCn es,ecificadas ,ara ellos) 8lients)conf Aqu' se es,ecifican los 9Ps o su1redes desde las cuales se ace,tarn ,eticiones) $i lle%a una ,etici6n de acceso desde un 9P que no estC re%istrado aqu': el servidor (A394$ sim,lemente la i%nora: ne%ndole el acceso) =n nuestro caso se ace,ta al local<ost y al AP que enviar las solicitudes)
client +-9.*.*.+ > secret = supersecretradiuskey shortname = some_name ? client +/-.+79.+.+ > # Hsta cla)e es el shared secret que usarQ el 3A para comunicarse secret = lolo shortname = linksys-g ?

Fodos estos arc<ivos se encuentran ad7untos a la ,rctica ,ara ,oder o1servarlos ms a detalle) 8on esto se da ,or finalizada la confi%uraci6n del servidor (A394$) Para correr Free(A394$: una vez <ec<as todas estas modificaciones: se escri1e el comando? S /etc/init.d/freeradius start $in em1ar%o: S freeradius -Z ,ermite o1servar todas las o,eraciones que se estn llevando a ca1o)

$e,tiem1re "**7

Configuracin de MySQL Free(A394$ <ace uso de una 1ase de datos llamada radius) Primero se entra a My$K+ y se e7ecuta el si%uiente comando: ,ara crearla?
mysql% create database radius1

3es,uCs: en la l'nea de comandos: se <ace lo eA,licado a1a7o: lo cual correr un scri,t que Free(A394$ trae consi%o?
# cd /usr/share/doc/packages/freeradius/doc/eBamples/ # mysql <u root -p radius 4 mysql.sql

As' ya se cuenta con una 1ase de datos ,ara la autenticaci6n) +as ta1las ms im,ortantes son? - usergroup: Aqu' se define a quC %ru,o ,ertenece cada usuario) $us atri1utos son? id) 9dentificador de re%istro) 4ser>ame) >om1re de usuario) &rou,>ame) &ru,o al que ,ertenece el usuario) - radcheck: Aqu' se definen las contraseGas de cada usuario) $us atri1utos son? id) 9dentificador de re%istro) 4ser>ame) >om1re de usuario) Attri1ute) Fi,o de contraseGa) =n nuestro caso: L4ser-Pass;ordM) I,) =s el o,erador que se usar ,ara la com,ro1aci6n) Para nosotros LTTM) alue) +a contraseGa) - radreply: =n esta ta1la se definen los atri1utos so1re la coneAi6n y sesi6n de los usuariosH ,or e7em,lo: 9P asi%nada y tiem,o de es,era mAimo) =n nuestro caso: ,ermitimos que se asi%nen los de 3=FA4+F contenidos en el arc<ivo LusersMH ,or lo tanto: no insertamos nada en la ta1la) - radgroupreply: $imilar a radc<ecJ ,ero ,ermite esta1lecer atri1utos a un %ru,o de usuarios com,leto) Atri1utos? id) 9dentificador de re%istro) &rou,>ame) >om1re de %ru,o) Attri1ute) >om1re del atri1uto que se quiere a%re%ar) >osotros s6lo <icimos uso de uno: el ti,o de autenticaci6n? LAut<-Fy,eM) I,) =s el o,erador que se usar ,ara la com,ro1aci6n) Para nosotros L?TM) alue) =l valor del atri1uto) >uestro Aut<-Fy,e es L=APM)

$e,tiem1re "**7

!e aqu' unas ta1las de e7em,lo de c6mo quedaron los datos en nuestra 1ase de datos)
mysql% select 2 from usergroup1 ;----;---------------;-----------; , id , GserEame , [roupEame , ;----;---------------;-----------; , + , santiago , dynamic , , - , alipi , dynamic , ;----;---------------;-----------; mysql% select 2 from radcheck1 ;----;----------------;---------------;------;------------------; , id , GserEame , 3ttribute , Kp , Yalue , ;----;----------------;---------------;------;------------------; , + , santiago , Gser-Aassword , != , santiago , , - , alipi , Gser-Aassword , != , alipi , ;----;----------------;---------------;------;------------------; mysql% select 2 from radgroupreply1 ;----;-----------;--------------------;------;---------------------; , id , [roupEame , 3ttribute , Kp , Yalue , ;----;-----------;--------------------;------;---------------------; , (: , dynamic , 3uth-Vype , != , H3A , ;----;-----------;--------------------;------;---------------------;

$e,tiem1re "**7

Configuracin de AP =l Access Point-(outer E( "** .usiness $ervice cuenta con o,ciones de confi%uraci6n ,ara autorizar el acceso mediante un servidor (A394$) Para ello se entra al men@ Eireless: Eireless $ecurity: en donde se selecciona el modo de se%uridad (A394$ y se ,ro,orciona el 9P del servidor: el ,uerto ,or el cual se accede y la shared secret de la red) Bsta @ltima es la clave utilizada ,ara que (A394$ y el AP se reconozcan entre s') Fue la clave que se le asi%n6 al 9P del Access Point en el arc<ivo Lclients)confM)

$e,tiem1re "**7

Configuracin de Clientes Eindo;s =ntrar a? Panel de 8ontrol 8oneAiones de (ed 8lic derec<o en 8oneAiones de (ed 9nalm1ricas Pro,iedades As' se entrar a LPro,iedades de 8oneAiones de red inalm1ricasM) =n la ,estaGa de L(edes 9nalm1ricasM: se ,resiona LA%re%arM) Primero se escri1ir el L>om1re de redM y se eli%e la LAutenticaci6n de redM como LA1iertaM y el L8ifrado de datosM: LE=PM) $e de7a seleccionada la o,ci6n L+a clave la ,ro,orciono yo automticamenteM y deseleccionada la referente a Lad <ocM) =n la ,estaGa de LAutenticaci6nM se deseleccionan las @ltimas dos o,ciones y se c<eca la o,ci6n L!a1ilitar la autenticaci6n 9=== 8*")1U en esta redM y: en ti,o de =AP: se eli%e =AP ,rote%ido 2P=AP5) A<ora se da clic en LPro,iedadesM: se deseleccionan todas las o,ciones y s6lo se de7a seleccionada la de L!a1ilitar reconeAi6n r,idaM 2,arte inferior de la ,antalla5) 3e1e ele%irse L8ontraseGa se%ura 2=AP-M$8!AP v"5M como mCtodo de autenticaci6n) =n L8onfi%urarM: se deselecciona la casilla y se da LAce,tarM <asta salir de las ,ro,iedades de la red) A<ora: en L(edes inalm1ricas dis,oni1lesM: se da do1le clic so1re la red deseada y se introducen el usuario y contraseGa cuando sal%a un mensa7e de que se requieren credenciales ,ara entrar a la red) =stos de1en encontrarse o en el arc<ivo LusersM o en la 1ase de datos de My$K+) $i el usuario es vlido: el AP le asi%na 9P) =s as' como queda com,letamente finalizada la confi%uraci6n tanto del servidor (A394$ como de My$K+: el AP y los clientes que se conectarn)

$e,tiem1re "**7

$e,tiem1re "**7

+inuA Primero de1e instalarse un cliente) >osotros utilizamos L;,aOsu,,licantM)


# apt-get install wpasupplicant

4na vez instalado: de1e eAistir un arc<ivo L;,aOsu,,licant)confM en el directorio LDetcM o en el directorio LDetcD;,aOsu,,licantM) Bste de1e verse as' 2e7em,lo de un cliente: de1en a7ustarse LssidM: LidentityM y L,ass;ordM5?
ctrl_interface=/)ar/run/wpa_supplicant eapol_)ersion=+ ap_scan=+ fast_reauth=+ network=> ssid=Nlinksys-gN key_mgmt=DHHH=*-+Z eap=AH3A phase-=Nauth=8 0@3AY-N identity=NsantiagoN password=NsantiagoN

$e,tiem1re "**7

=l arc<ivo LDetcDnet;orJDinterfacesM de1e tener la si%uiente confi%uraci6n ,ara las coneAiones inalm1ricas?
iface eth+ inet dhcp wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf auto eth+

!ec<o esto: la com,utadora de1e ,oderse conectar a la red si el usuario y contraseGa son correctos en el arc<ivo L;,aOsu,,licantM) Para ello se reinicia la tar7eta inalm1rica?
# ifdown eth+ # ifup eth+

0unto con este re,orte tam1iCn se ad7unta el arc<ivo Lradius)lo%M: donde se muestran las acciones que el servidor lleva a ca1o al inicializarse y al autenticar a un usuario)

Conclusiones
3es,uCs de realizar esta ,rctica ,odemos darnos cuenta de medios alternos eAistentes ,ara im,lementar la se%uridad en redes a travCs de una autenticaci6n controlada a los usuarios) +inuA: 7unto con Free(A394$: son <erramientas que ,ermiten esta im,lementaci6n de una manera efectiva y se%ura ,ara clientes que utilizan cualquier sistema o,erativo) 8ontando con un manual eficiente: es ,osi1le instalar y confi%urar (A394$ de una manera relativamente sencilla) =l mane7o de cuentas tam1iCn es muy sencillo: so1re todo: si se utiliza al%@n servidor eAterno como es el caso de My$K+) Puesto que ,ermite realizar modificaciones y actualizaciones a la 1ase de datos de usuarios: es decir: realizar la administraci6n de Csta) =l a,licar ,ol'ticas de se%uridad no es tarea sencillaH sin em1ar%o: actualmente: se cuenta con <erramientas que ayudan a la realizaci6n de tan im,ortante tarea) =sta ,rctica es un e7em,lo de ello)

$e,tiem1re "**7

Re'erencias
V8onfi%urar freeradius W Eindo;s UPX) "8 de $e,tiem1re de "**7) Y <tt,?DD,ersonales)alumno)u,v)esDN<ecmar%iDmanualesDlinuADfreeradiusD Z &ill: $te,<en) V04>I$ (A394$ Aut<enticationX) 19 de >oviem1re de "**1) "8 de $e,tiem1re de "**7) Y <tt,?DD;;;)cymru)comD%illsrDdocumentsD7unos-radius-aut<entication)<tm Z !assell: 0onat<an) V&ettin% $tarted ;it< Free(A394$X) "8 de $e,tiem1re) Y <tt,?DD;;;)onlam,)comD,u1DaDonlam,DeAcer,tDradiusO/DindeA1)<tml[,a%eT1 Z V!IEFI? Free(A394$W=APDP=APV) Ubuntu oru!s"org) Fe1rero de "**7) "8 de $e,tiem1re de "**7) <tt,?DDu1untuforums)or%Ds<o;t<read),<,[tT4788*4\<i%<li%<tTfreeradius]".=AP ]"FP=AP V!IEFI? Eifi Access Point ;it< <osta, W <osta,d W freeradius W mysql 1acJend Part 1X) Ubuntu oru!s"org) Marzo de "**#) "8 de Fe1rero de "**7) Y <tt,?DDu1untuforums)or%Ds<o;t<read),<,[tT1/1781 Z V$K+ !IEFIX) ree#A$IUS %iki) 3* de 0ulio de "**7) "8 de $e,tiem1re de "**7) Y <tt,?DD;iJi)freeradius)or%D$K+O!IEFI Z VF<e 9nternet >& Pro7ectX) I&'" 1* de =nero de "**3) "8 de $e,tiem1re de "**7) Y <tt,?DDin%)ctit)ut;ente)nlDE4/D3/)1DFec<nolo%yDradiusD Z

$e,tiem1re "**7

También podría gustarte