Académique Documents
Professionnel Documents
Culture Documents
V1
Raul Espinosa Soriano
En este tutorial, se trata la instalacin, configuracin y puesta en marcha de un servidor Chillispot, sobre Debian, sistema en el que debe de haber instalado un servidor Freeradius.
Tabla de contenido
Introduccin .................................................................................................................................. 2 Descarga de Chilli pot ................................................................................................................... ! Instalar y configurar "pache 2 # $ en Debian ............................................................................ %
oporte &'()&"* ........................................................................................................................ +, For-arding de direcciones I* ...................................................................................................... +2 Instalacin de Chilli pot .............................................................................................................. +. Edicin de los archivos de configuracin .................................................................................... +. /odificacin de chilli.conf ...................................................................................................... +0 /odificacin de users en Freeradius ...................................................................................... +1 Configuracin de clients.conf .................................................................................................. +2 /odificacin de hotspotlogin.cgi ............................................................................................ +3 Copia y edicin de chillispot.iptables ...................................................................................... 2, Configuracin de Eth, y Eth+ .................................................................................................. 2, Creacin itio Corporativo de recepcin de peticiones de cone4in ..................................... 22 Iniciando nuestro servidor Chillispot .......................................................................................... 22 Comprobacin del funcionamiento ............................................................................................ 2. Configuracin del cliente ........................................................................................................ 2. Conectar .................................................................................................................................. 2. Desconectar............................................................................................................................. 2%
!gina 1
" lo largo de la configuracin, se hace uso de un adaptador virtual &'(, el cual har5 las veces de servidor de autentificacin en el sistema local. " continuacin se muestra alguna imagen que denota la topolog;a de nuestra red, haciendo uso de un servidor Chillispot7
!gina "
Descarga de ChilliSpot
$o primero que reali6aremos, ser5 la descarga del paquete de Chillispot. *ara ello, confirmamos que nuestro sistema est5 conectado a Internet, y posteriormente, si es asi, descargamos el paquete desde la p5gina de Chillispot. Como "dministrador, desde un terminal, e<ecutamos el comento ifconfig, y, en el caso que nos ocupa, vemos que uno de los interfaces tiene cone4in a internet. En concreto el interfa6 eth+, con I* +12.2%.,.%3, nos conecta a internet.
!gina $
'na ve6 confirmada la e4istencia a una cone4in de internet, nos conectamos desde un navegador a la -eb de Chillispot 9http7))---.chillispot.info:, y en su seccin de descargas, podremos ver el enlace al paquete. El que nos interesa es el paquete .deb.
!gina %
Instalacin y configuracin de Chillispot sobre Freeradius en Debian. V1 i le pinchamos al paquete de descarga =.deb, seg>n el navegador, no se produce la descarga, sino que nos abre el fichero, cuyo contenido es incomprensible para nosotros. Ese es el caso de nuestra instalacin. De esta forma, lo que debemos de anotar, es la '?$ del paquete, y desde un terminal hacer uso de -get para dicha descarga.
En la capturo anterior, se puede ver la '?$ de descarga, que es la correspondiente al paquete =.deb. "brimos un terminal como "dminstrador, y tecleamos el siguiente comando7 @-get AurlBpaqueteC De esta forma se procede a la descarga del mismo, en la carpeta donde nos encontremos.
'nas ve6 descargado, ya podremos verlo en nuestro directorio. En nuestro caso, en )home)rauesso.
!gina &
*asamos ahora a generar el certificado $ con el que traba<ar5 "pache, ya que la p5gina de autentificacin, ser5 ba<o el protocolo $#8&&*, es decir, 8&&* . *ara ello, desde un terminal, creamos la carpeta ssl, dentro de )etc)apache2, que es la ubicacin donde se depositar5 el certificado una ve6 creado. @mEdir )etc)apache2)ssl 'na ve6 creado el directorio ssl, pasamos a crear el certificado, por medio del comando maEeD sslDcert. @ maEeDsslDcert )usr)share)sslDcert)ssleay.cnf )etc)apache2)ssl)apache.pem
!gina '
$lenamos los datos que pida seg>n sea nuestro caso y luego habilitamos el mdulo7 @ a2enmod ssl Debemos verificar que "pache estF configurado para escuchar por el puerto ..! cuando traba<e con el mdulo $ 9las versiones recientes de "pache suelen ya venir configuradas de esta manera:7 @ nano )etc)apache2)ports.conf El archivo debe tener la siguiente forma7
"hora creamos el sitio $. *or defecto, "pache trae el fichero default ubicado en la carpeta )etc)apache2)sitesDavailable). Copiamos este archivo para luego poder modificarlo7 @ cp )etc)apache2)sitesDavailable)default )etc)apache2)sitesDavailable)ssl @ nano )etc)apache2)sitesDavailable)ssl
!gina (
!gina )
Una vez habilitado, el sitio ssl, reiniciamos el servicio apache2, tal y como se muestra en la siguiente captura:
Y ya podremos acceder a nuestro sitio, tanto de forma normal, como por acceso seguro SSL, tal y como se aprecia en las siguientes capturas.
!gina *
Ahora pasamos a la configuracin de TUN, por medio del comando modconf: # modconf
Con esto aparecer5 un recuadro que muestra las categoras de los mdulos soportados por el sistema. Para nuestro caso, buscaremos seccin kernel/drivers/net:
Haciendo uso de la tecla tab, seleccionamos Aceptar y aparecer un nuevo recuadro en el que buscamos tun. Si posee soporte debe aparecer con un signo +.
!gina 1+
Si tenemos soporte TUN/TAP nuestro sistema posee soporte para un mdulo indispensable para Chillispot, sin embargo, an debemos agregarlo al inicio del sistema. Desde terminal ejecutamos las siguientes lneas de comando: # modprobe tun
Ahora pasamos a editar el fichero /etc/modules, y en la ltima lnea deber de aparecer tun. Si no fuera as lo aadiremos nosotros. # nano /etc/modules
!gina 11
Con la ltima lnea abrimos el archivo /etc/modules con nano. Vamos al final del archivo y en una nueva lnea agregamos tun, quedando ms o menos as (puede variar en su sistema segn los mdulos que cargue al arrancar-la entrada Tun ya estar creada en la mayora de las ocasiones).
"or#arding de direcciones I!
Nuestro equipo con Chillispot estar trabajando como un firewall, de hecho, sin las reglas de firewall no sera posible que Chillispot funcionara. Al funcionar como firewall
!gina 1"
debe tener la capacidad de hacer NAT (Network Address Translation) para lo que ejecutamos la siguiente lnea: # echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward Alternativamente podemos utilizar nano y manualmente cambiar el valor (por defecto 0) a 1. Este valor es un bit binario que hace las veces de un booleano.(0=falso y 1=verdadero) # nano /proc/sys/net/ipv4/ip_forward
Nos aseguramos que posea la siguiente lnea (si no la posee la agregamos y si se encuentra comentada con # al principio se lo quitamos) net.ipv4.ip_forward=1
Ahora ya tenemos configurado nuestro firewall para que sea capaz de el redireccionamiento entre los interfaces internos y externos.
!gina 1$
Instalacin de ChilliSpot
*ara proceder a la instalacin de Chillispot, accederemos al directorio donde, en el primero de los puntos, nos descargamos el paquete =.deb de chillispot. 'na ve6 en la ubicacin oportuna, en nuestro caso )home)rauesso, e<ecutamos el comando7 @dpEg Gi chillispotBversion.deb
8asta aqu; ya tenemos instalado Chillispot con alguna configuracin b5sica. Estas configuraciones se encuentran en )etc)chilli.conf donde podemos modificarlas y a>n definir otros par5metros. Esto lo haremos posteriormente. Dentro de la documentacin de Chillispot encontramos el archivo hotspotlogin.cgi 9generalmente viene comprimido y lo encontramos como hotspotlogin.cgi.g6:. Descomprimimos el archivo y lo copiamos en la carpeta )usr)lib)cgiDbin. @ gun6ip )usr)share)doc)chillispot)hotspotlogin.cgi.g6 @ cp )usr)share)doc)chillispot)hotspotlogin.cgi )usr)lib)cgiDbin)
Con esto ya tenemos nuestro servidor de autenticacin. Faltar;a configurarlo los aspectos m5s relevantes.
!gina 1%
Modificacin de chilli.conf
"qu; es donde definimos los par5metros propios de Chillispot, los cuales e4plicamos a continuacin. I JnetJ7 Es la red sobre la cual estar5 traba<ando Chillispot, es decir la Kireless $"(. e debe poner con el formato Adireccin I*C)Am5scara de subredC. I JradiusserverJ7 $a direccin I* de los servidores ?"DI' . Es necesario indicar dos servidores, aunque en nuestro caso solamente contamos con uno. Debido a que el servicio de ?"DI' se encuentra corriendo en el mismo equipo, utili6amos la direccin de loopbacE. I JradiussecretJ7 Cadena de caracteres que indica el secreto compartido entre Chillispot y el servidor ?"DI' . I JdnsJ7 Direccin I* del servidor D( . I JdhcpifJ7 Interfa6 conectada al punto de acceso y por la que se proveer5 D8C*. Dicho sea de paso que en la red sobre la que estF traba<ando Chillispot no debe haber ning>n servidor D8C* activado, dado que este servicio lo proporciona Chillispot mismo. I Juamallo-edJ7 "qu; podemos especificar direcciones I* o nombres de dominio a los que se permitir5 el acceso sin autenticacin. Como m;nimo debemos poner la direccin I* del servidor -eb al que ser5n redireccionados los usuarios no registrados y la direccin I* del ervidor de (ombres de Dominio 9D( :. I JuamserverJ7 '?$ del servidor de autenticacin. I JuamsecretJ7 ecreto compartido entre Chillispot y el servidor de autenticacin. 'tili6ando nano abrimos el archivo para poder editarlo7 @ nano )etc)chilli.conf
!gina 1&
!gina 1'
Una vez, nuestro fichero /etc/chilli.conf, tiene la configuracin denotada en las imgenes anteriores, pasamos a los siguientes ficheros de configuracin.
"l final de documento se pueden observar los usuarios, <unto con la sinta4is. *odr;amos aLadir tantos usuarios como quisiFramos.
Configuracin de clients.conf
Dado a que en nuestro caso la direccin I* del servidor ?"DI' es la de loopbacE por estar en el mismo equipo en que se encuentra Chillispot, debemos verificar que dentro de los clientes se encuentre especificado nuestro host local y si no se encuentra agregarlo. i el caso fuera un servidor ?"DI' remoto, deber;amos agregar la direccin I* atravFs de la cual es visible para ?"DI' el host con Chillispot. "brimos el fichero con nano7 @ nano )usr)local)etc)raddb)clients.conf
!gina 1)
Modificacin de hotspotlogin.cgi
"brimos el fichero con nano7 @ nano )usr)lib)cgiDbin)hotspotlogin.cgi
Lo nico que debemos hacer es verificar que no se encuentre comentada la lnea $uamsecret = secretouam; Donde secretouam es el secreto compartido entre Chillispot y el servidor de autenticacin. Adems, descomentamos la lnea $userpassword=1;
Posteriormente, deberemos de dar permisos al fichero: #chmod 755 /usr/lib/cgi-bin/hotspotlogin.cgi #chmod 755 /usr/lib/cgi-bin
!gina 1*
Despus de copiarla y darle permisos de ejecucin abrimos el archivo con nano: # nano /etc/init.d/chillispot.iptables Luego verificamos que los parmetros INTIF y EXTIF contengan las interfaces interna (la que va a la red inalmbrica) y externa (la que conecta a la WAN), respectivamente. En nuestro caso queda de la siguiente manera: EXTIF = eth0 INTIF = eth1 Por ltimo agregamos las reglas al inicio del sistema: # ln -s /etc/init.d/chillispot.iptables /etc/rcS.d/S40chillispot.iptables
!gina "+
!gina "1
Instalacin y configuracin de Chillispot sobre Freeradius en Debian. V1 'na ve6 confirmada la configuracin I* de cada uno de los interfaces, pasamos a crear nuestro sitio de recepcin de peticiones de cone4in.
En su interior, con un editor, como por e<emplo nano o gedit, creamos un archivo inde4.html, el cual contendr5 esa pequeLa p5gina -eb de acceso. En este tutorial, simplemente he creado un enlace al fichero prelogin que ofrece chillispot. El contenido se puede observar en la siguiente captura.
!gina ""
" la hora de lan6ar radiusd, tenemos la opcin de lan6arlo en un terminal independiente, y que las peticiones que reciba sean visibles. *ara ella procederemos como se presenta en la siguiente captura.
e puede reali6ar un testeo de funcioamiento de Freeradios, por medio del comando radtest. $a sinta4is ser;a7 @radtes usuario contraseLa localhost +.%0 contraseLaBclienteBfreeradius En la siguiente captura, podeis ver un e<emplo.
!gina "$
Conectar
*ara conectar, sobra con intentar acceder a una p5gina -eb. El sistema directamente nos deriva a la p5gina -eb creada anteriormente, la cual contiene un simple enlace7
i le pinchamos al enlace, el sistema nos lleva al sitio 8&&* del chillispot. El certificado utili6ado es el creado anteriormente, al confitgurar "pache, y evidentemente no es reconocido por nuestro navegador. (o obstante, pinchamos a NOaya a este sitio Keb 9no recomentado:P7
!gina "%
Q nos pide usuario y contraseLa para acceder a la red. Introducimos alguno de los que se ha configurado en el fichero users de Freeradius, por e<emplo rauesso)test7
!gina "&
esconectar
*ara desconectar, deberemos de acceder a la direccin7 http7))I*B"daptadorB&'(BservidorBchillispot7!33,)prelogin "ceptamos el certificado, y se nos da la opcin de desconectar7
eleccionamos $ogout, y ya nos desconectamos del sistema de red facilitado por Chillispot y Freeradius
!gina "'
De esta forma, queda clara la instalacin y configuracin de Chillispot en Debian. Este tutorial, es complementario al &utorial de Instalacin y Configuracin de Freeradius,
!gina "(