You are on page 1of 95

Universidad de El Salvador

Facultad Multidisciplinaria de Occidente
Departamento de Ingeniería y Arquitectura

Ciclo II / 2008

Tecnologías Inalámbricas

Cátedra: Comunicaciones I
Catedrático: Juan Carlos Peña
Integrantes: Magaña Dahbura, José Rodrigo
Minero Morales, Roberto Orlando
Rodríguez Umaña, Víctor Manuel
Vásquez Castaneda, Guillermo Rafael

Santa Ana, Martes 2 de Diciembre de 2008
ÍNDICE
Conexión y transferencia de archivos vía Bluetooth.........................................3
Conexión punto a punto entre dos computadoras vía Wi-Fi.............................10
Infraestructura de red tipo BSS con WiFi......................................................13
Conectar dos redes cableadas inalámbricamente...........................................26
Redistribución de una red Wi-Fi a un segmento de red cableada por medio de
iptables...................................................................................................56
Protección de redes inalámbricas con FreeRadius..........................................58
Portal cautivo para redes inalámbricas públicas con Chillispot..........................80
Conexión y transferencia de archivos vía Bluetooth

El diagrama del escenario implementado es el siguiente:

Para la implementación del diagrama de red mostrado anteriormente se utilizaron
los siguientes dispositivos:
● Una computadora Core Duo 2.0 Ghz
● Un dispositivo Bluetooth USB Linksys.

El software utilizado fue el siguiente:
●Sistema operativo GNU/Linux Ubuntu 8.10 Intrepid Ibex.

Los pasos que se siguieron son los siguientes:

En la computadora

Una vez dentro del sistema operativo, simplemente conectamos el dispositivo
Bluetooth por medio de conexión USB. La ventaja del sistema operativo utilizado,
es que no necesita drivers para poder hacer funcionar tal dispositivo.

Observaremos que al conectar el dispositivo, nos aparecerá un icono de
notificación, indicando que hay un dispositivo Bluetooth conectado.

3
Hacemos clic derecho sobre el icono, y nos vamos a la opción
“Preferencias”.

Seleccionamos la opción “Siempre visible”; en la parte de “Nombre
amistoso” podemos poner el nombre con el que se conocerá el dispositivo
cuando sea visto por otros dispositivos con tecnología Bluetooth., después
de estos cambios, hacemos clic en el botón “Cerrar”.

Seleccionamos un archivo el cual se enviara al celular, para esto solamente
hacemos clic derecho sobre este, luego seleccionamos la opción “Enviar
a...”, luego seleccionamos “Enviar como: Bluetooth (OBEX Push)”, también
seleccionamos el dispositivo al cual queremos enviar el archivo. Es de
mencionar que nos brinda la opción de empaquetar el archivo, pero esto es
opcional.

4
A manera de ejemplo, enviamos un archivo llamado “Jet.jpg”, para esto
hacemos clic derecho sobre el archivo, seleccionamos “Enviar a...”.

Se nos abrirá una ventana, en la cual seleccionamos “Enviar como:
Bluetooth (OBEX Push)”, también seleccionamos el dispositivo al cual
queremos enviar el archivo, en nuestro caso el dispositivo llamado
“Rodrigo:-I”, luego hacemos clic en “Enviar”.

5
En caso que falle, como fue nuestro caso, ingresamos nuevamente a las
preferencias de Bluetooth, luego hacemos clic en el botón con el signo +,
este corresponde a la sección “Dispositivos conocidos”.

Nos aparecerá un asistente, a lo cual hacemos clic en “Adelante”.

6
Seleccionamos el dispositivo a configurar, es decir, el dispositivo al cual le
enviaremos el archivo, en nuestro caso el dispositivo llamado “Rodrigo:-I”,
luego clic en “Adelante”.

El ping que aparece debe de ser ingresado en el teléfono donde enviaremos
el archivo, en nuestro caso particular el ping “3460”, este numero no
siempre es el mismo.

7
Cuando el ping haya sido ingresado en el teléfono, nos aparecerá lo
siguiente, lo cual nos dice que la configuración ha sido exitosa, a lo cual
hacemos clic en “Cerrar”.

Aparecerán los dispositivos que están emparejados.

8
Ahora al querer enviar el archivo, si sera posible, siempre y cuando en el
teléfono se acepte la petición de recepción de archivo, para enviarlo
hacemos los primeros pasos descritos anteriormente.

Con esto, la transferencia habrá concluido satisfactoriamente.

En el celular

● Activamos la opción de Bluetooth.

● Cuando nos envíe un mensaje pidiéndonos una clave, introducimos la que
nos proporcione el usuario de la computadora que nos enviará el archivo.

● Nos avisará que se ha emparejado el dispositivo, en nuestro caso la
computadora con el celular, aceptamos.

● Luego, cuando la computadora nos envíe el archivo, aparecerá otro mensaje
preguntándonos si aceptamos la recepción del archivo, a lo cual aceptamos.

● Esperamos a que se transfiera el archivo al celular.

Con los pasos mencionados anteriormente, estaremos realizando la conexión y
transferencia de archivos por medio de Bluetooth. En nuestra experiencia propia,
constatamos que era posible enviar archivos a distancias de hasta 50 metros
entre un dispositivo y otro.

9
Conexión punto a punto entre dos computadoras vía
Wi-Fi

El esquema implementado es el siguiente:

Para la implementación del diagrama de red mostrado anteriormente se utilizaron
los siguientes dispositivos:
● Dos computadoras: una Core Duo 2.0 Ghz con soporte Wi-Fi y una Turion 64
X2 1.9 Ghz con soporte Wi-Fi.

El software utilizado fue el siguiente:
● Sistema operativo GNU/Linux Debian Lenny (Testing).

Antes de empezar a explicar los pasos que se llevaron a cabo, hay que mencionar
que asumiremos que una computadora tendra el nombre de “Debian”, esta sera
la que se configurara en modo Ad-Hoc (este es el nombre con el que se le conoce
al modo de conectarse inalambricamente punto a punto), la otra maquina sera el
cliente, es decir la que se conectara a la maquina “Debian”.

Los pasos que se siguieron para tal implementación fueron los siguientes:

En la maquina “Debian”.

Entramos a la consola o terminal, para eso nos vamos al menú Aplicaciones –
Accesorios – Terminal de <<Root>>.
Esto se hace asi, ya que para poder configurar la tarjeta wireless se necesitan
permisos de root, pero también se puede ingresar como usuario normal en la
consola y luego acceder como root.

10
Introducimos los siguientes comandos:
# killall NetworkManager

# ifconfig wlan0 down

# iwconfig wlan0 essid Debian mode Ad-Hoc channel 6

# ifconfig wlan0 192.168.6.1 netmask 255.255.255.0 up

Ahora bien, se explicara en que consisten los comandos ingresados, así como
también cada uno de los parámetros.

killall: con este comando estamos matando el proceso NetworkManager,
esto lo hacemos para que no interfiera con la conexión.

iwconfig: este comando permite configurar los dispositivos inalámbricos
disponibles en la computadora.

wlan0: es la interfaz o dispositivo el cual se esta configurando.

essid: con esto estamos indicando el nombre que tendrá nuestra red punto
a punto, en nuestro caso el nombre es “Debian”, el nombre puede ser
cualquiera.

mode: indica el modo de operación de la interfaz, en este caso lo
establecemos en el modo “Ad-Hoc”, el cual significa que sera una red punto
a punto, importante mencionar que siempre que se lleve a cabo conexiones
de este tipo, tendrá que estar en modo “Ad-Hoc”.

channel: acá establecemos el canal por el cual trabajará la red, en nuestro
caso lo establecemos en el canal 6, podemos seleccionar canal desde el 1
hasta el 11.

ifconfig: este comando permite configurar las interfaces de red disponibles
en la computadora.
192.168.1.1: es la dirección IP que le estamos asignando a la interfaz.

netmask: con esta opción establecemos la mascara de sub-red, en nuestro
caso la mascara es 255.255.255.0.

up: este parámetro indica que se esta activando la interfaz.

down: este parámetro indica que se esta desactivando la interfaz.

11
Ahora, para un mejor entendimiento, explicaremos cada una de esas lineas, para
saber que es lo que hacen en conjunto.

# killall NetworkManager

Estamos matando el proceso NetworkManager.

# ifconfig wlan0 down

Se esta bajando la interfaz wireless, es decir la estamos desactivando.

# iwconfig wlan0 essid Debian mode Ad-Hoc channel 6

Estamos estableciendo una nueva conexión del modo “Ad-Hoc”, con essid
“Debian” y que estará emitiendo por el canal 6.

# ifconfig wlan0 192.168.6.1 netmask 255.255.255.0 up

Ahora se esta levantando la interfaz wireless, además estamos asignando una IP
así como su respectiva mascara de subred.

En la maquina cliente.

Bastara con seleccionar la opción “Conectarse a otra red inalámbrica” donde
pedirá el essid y el tipo de protección. Ponemos el essid configurado en el equipo
anterior (en nuestro caso Debian) y en tipo de seguridad seleccionamos
“Ninguna”.

Luego, establecemos los parámetros de red en la terminal de la siguiente manera:

# ifconfig wlan0 192.168.6.2 netmask 255.255.255.0 up

Algo importante que hay que destacar es que ambas direcciones IP (es decir de
las maquinas que se conectaran vía Wi-Fi) tienen que estar dentro del mismo
rango, esto incluye la misma mascara de subred.

12
Infraestructura de red tipo BSS con WiFi

El esquema de red implementado se muestra a continuación:

Para la implementación del diagrama de red mostrado anteriormente se utilizaron
los siguientes dispositivos:
● Una computadora Core Duo 2.0 Ghz
● Dos laptops clientes: 2 HP con sistema operativo GNU/Linux.
● Un router inalámbrico Linksys WRK54G.

El software utilizado fue el siguiente:
● Sistema operativo GNU/Linux Debian Lenny (Testing).
● Navegador web Iceweasel.

Para dicha implementación, se pretendió minimizar la vulnerabilidad de la red, en
este caso configuramos claves de acceso, las cuales son tanto WEP como WAP,
además filtro al acceso de ciertas computadoras por medio de sus dirección MAC
y también como se activa o desactiva el DHCP.

13
Los pasos para tal implementación se muestran a continuación:

Conectar la computadora con el router, esta computadora se utilizara para
la configuración del router, para la conexión se necesita un cable recto,
dicho cable tiene que ir un extremo hacia un puerto de la LAN de dicho
router, y el otro extremo en la tarjeta de red de la computadora. Esto
también es posible hacerlo conectándonos por medio de Wi-Fi con el router.

Una vez que se halla establecido la conexión, vamos al navegador, y en la
barra de dirección digitamos la dirección IP 192.168.1.1 (esta es la dirección
por defecto de estos routers). En caso de que sea un router que ya se haya
modificado, es posible que la dirección IP no sea la mencionada
anteriormente.

Nos preguntara nombre de usuario y contraseña, en ambos campos
ingresamos “admin”.

Ahora bien, ya estamos dentro de la configuración web del router,
explicaremos cada una de las partes a configurar en la parte de
configuración de DHCP.

14
Local DHCP Server: Con Enabled se activará el servicio DHCP, con
Disabled se desactivará el servicio.

Start IP Address: Nos permite modificar el ultimo octeto de la dirección IP,
basándose en la direccion del router, acá se le especifica a partir de que
dirección va a empezar a asignar direcciones IP, en nuestro caso a partir de
la 100.

15
Number of Address: Se asigna el numero máximo de clientes, es decir
que tantas direcciones IP se asignarán, en nuestro caso un máximo de 50
clientes o direcciones IP.

DHCP Address Range: Solamente nos muestra el rango en el cual serán
asignadas las direcciones IP, en nuestro caso el rango es desde
192.168.1.100 hasta 192.168.1.149.

Client Lease Time: Acá se asigna cuanto tiempo se le asignará una
dirección IP a los equipos conectados al router, después de este tiempo, la
dirección IP cambiará, este tiempo se especifica en minutos, el valor 0
significa un día, en nuestro caso lo dejamos con este ultimo valor.

DNS 1...DNS 3: Aquí podemos agregar las direcciones IP de los equipos
que proporcionarán el servicio de “Servidores de Nombres de Dominio”.

WINS: Convierte nombres NetBIOS a direcciones IP, nosotros la dejamos en
blanco.

Cuando queramos guardar los cambios nos vamos hasta el botón de abajo
que dice “Save Settings”, si queremos cancelar los cambios nos vamos a
“Cancel Changes”. En nuestro caso particular, la parte de DHCP la dejamos
como viene por defecto.

Para la seguridad del servicio de Wireless, nos vamos a la pestaña
“Wireless”.

16
Ya ingresado en la pestaña “Wireless”, estaremos dentro de “Basic Wireless
Settings”, en el cual tenemos algunas opciones, las cuales se explican a
continuación:

Wireless Network Mode: Asigna con que estándar de wireless trabajará el
router, tiene algunas opciones las cuales son:

Disabled: no trabajará con ningún estándar, es decir que no
proporcionará servicios wireless.

Mixed: trabajará con los estándares 802.11B y 802.11G
simultáneamente, es decir que tanto las maquinas que soporten el
estándar B como el G podrán conectarse con el router. En nuestro
caso, dejamos activada esta opción.

B-Only: solamente trabajará con el estándar 802.11B, significa que
las maquinas que no soporten este estándar no podrán conectarse al
router.

G-Only: solamente trabajará con el estándar 802.11G, significa que
las maquinas que no soporten este estándar no podrán conectarse al
router.

Dentro de Wireless Network Mode, estas son las opciones disponibles, es de notar
que si seleccionamos Disabled, se desactivaran las otras opciones disponibles.

Ahora se explican las siguientes opciones disponibles.

Wireless Network Name(SSID): sirve para especificar el nombre con el
cual será identificado el router cuando este prestando señal inalámbrica.
Nosotros dejamos el nombre “Comunicaciones” en esta parte.

Wireless Channel: se especifica el canal por el cual se prestarán los
servicios inalámbricos, van desde el canal 1 hasta el canal 11. En esta parte
dejamos el canal 6.

17
Wireless SSID Broadcast: con Enabled se enviará un broadcast para que
todas las maquinas se den cuenta de la existencia del router, con Disabled
es lo contrario, ya que no se enviara ningún broadcast. En nuestro caso, lo
dejamos con la opción “Enabled”.
Ahora, para configurar la seguridad nos vamos a la opcion “Wireless
Security”, la cual esta en la parte superior.

18
Por defecto solamente nos aparece una opción, la cual se explica a continuación.

Security Mode: se especifican los modos de seguridad a utilizar, este posee
varias opciones, pero las que nos interesan son solamente dos, la seguridad WEP
y WPA, se explicarán ambas, pero antes mencionaremos la que trae por defecto.

Disabled: no tiene ninguna seguridad, es decir que cualquiera que
desee conectarse podrá hacerlo sin ningún problema, ya que no
pedirá ninguna clave.

19
Modo WPA

WPA Pre-Shared Key: nos proporciona seguridad con claves del tipo
WPA, cuando esta opción esta activada, nos aparecerán algunas
opciones nuevas, las cuales se explican a continuación. Primeramente
dejamos activada esta opción.

WPA Algorithms: solamente proporciona el algoritmo TKIP, el
cual sirve para poder encriptar la clave cuando viaje del cliente
al router. En nuestro caso, ya que solo hay esta opción, la
dejamos seleccionada.

WPA Shared Key: es la clave que tendrá que ingresar el cliente
cuando quiera conectarse con el router, el tamaño de la clave va
desde los 8 hasta los 32 caracteres. Nosotros dejamos como la
clave, la palabra “comunicaciones”.

Group Key Renewal: especifica cada cuanto tiempo cambiara
la manera de encriptar la clave, esto es en segundos. Esta
opción en nuestro caso la dejamos como viene por defecto, es
decir con el valor de 3600 segundos.

Con esto se concluyen las opciones disponibles para el método de
seguridad WPA.

WPA RADIUS: proporciona seguridad por medio del protocolo de
autenticación RADIUS. En nuestro caso no lo utilizamos.

Ahora bien el siguiente método de seguridad que nos interesa es el WEP.

20
Modo WEP

WEP: nos proporciona seguridad con claves del tipo WEP, cuando esta
opción esta activada, nos aparecerán algunas opciones nuevas, las
cuales se explican a continuación. Después de haber aplicado WPA,
utilizamos este método, es decir que lo dejamos activado.

Wireless Encryption Level: proporciona el tamaño que
tendrán las claves, tiene dos opciones las cuales son:

64 bits 10 hex digits: claves con un tamaño de 10
dígitos.

21
128 bits 26 hex digits: claves con un tamaño de 26
dígitos.

Nosotros utilizamos las claves con tamaño de 10 dígitos, es
decir la de 64 bits.

Passphrase fot keys: se ingresa una frase, y a partir de esta
se generaran cuatro claves de tipo WEP, para esto hay que
hacer clic en el botón “Generate”. Nuestra frase ingresada fue
“comunicaciones”.

Default Key: hay opciones desde la 1 hasta la 4, especifica cual
clave pedirá el router cuando un cliente quiera conectarse, por
ejemplo si esta en el numero 1 significa que utilizara la clave
numero 1 de las cuatro existentes. Nosotros utilizamos la key
numero 1.

WEP Key 1 ... WEP Key 4: es cada una de las claves
generadas a partir de la frase introducida, depende que clave se
tenga seleccionada en la opción anterior, se tendrá que utilizar
alguna de estas claves para que el router la pida.

Con esto, se han finalizado las opciones de configuración de la seguridad de WEP
y WPA.

Ahora pasaremos a explicar como configurar la denegación de acceso al router
por medio de las MAC, para esto nos vamos a la opción “Wireless Network
Access”, acá nos aparecerán las siguientes opciones:

22
MAC Filter: presenta la opción Disabled, la cual significa que no se
denegará ninguna petición de conexión por medio de su MAC; la otra opción
es Enabled, con lo cual si podemos denegar acceso por medio de las MAC.
Si se esta en Disabled, las demás opciones aparecen desactivadas, si se
esta en Enabled, las siguientes opciones se activaran, estas se explicaran a
continuación. Nosotros con la intención de denegar MAC'S, la dejamos en
“Enabled”.

Filter Mode: posee dos opciones, las cuales son:

Allow: significa que las MAC que aparecen mas abajo, se les permitirá
el acceso para conectarse al router, es decir que las MAC que no
aparezcan no se podrán conectar. Iniciamos dejando esta opción
activada, para permitir MAC'S.

23
Deny: significa que a las MAC que aparecen mas abajo, se les
denegará el acceso para conectarse al router, es decir que las MAC
que no aparezcan si se podrán conectar. Después de haber permitido
MAC'S, dejamos activada esta opción para poder denegarlas.

Accces List: nos daremos cuenta que aparecen desde MAC 01 hasta MAC
20, acá se ingresan las direcciones MAC que queremos ya sea permitir o
denegar, dependiendo de que opción se halla elegido mas arriba. Este
router tiene una capacidad de hasta 20 direcciones MAC. En nuestro caso
particular, utilizamos las primeras dos casillas de MAC Address, esto con la
finalidad de poder permitirlas y luego denegarlas.

Select MAC Address From Networked Computers: lo único que hace es
mostrarnos los clientes que están actualmente conectados al router vía
wireless, con la opción de poder obtener su MAC para poder denegarla o
permitirla. Una vez que los clientes estaban conectados al router, con este
botón obtuvimos sus direcciones IP así como también sus MAC Address,
después marcamos donde dice “Enable MAC Filter”, esto con la intención de
que luego aparecieran en la tabla de las MAC que se pueden permitir o
denegar, es de esta manera como obtuvimos las MAC de los clientes para
poder permitirlos y luego denegarlos.

24
Con lo explicado anteriormente, ya podemos configurar nuestro router para que
sirva de Acces Point y podamos conectarnos a este, obteniendo direcciones por
medio de DHCP, además podremos aplicar seguridad tanto con WPA como con
WEP, también podremos hacer la denegación por medio de las direcciones MAC.

25
Conectar dos redes cableadas inalámbricamente

Nuestro esquema de trabajo es el siguiente:

Para la implementación del diagrama de red mostrado anteriormente se utilizaron
los siguientes dispositivos:
● Dos computadoras: una Core Duo 2.0 Ghz y otra Turion 64 1.9 Ghz.
● Dos routers inalámbricos: un Thomson ST580 y un Thomson ST585 V6.

El software utilizado fue el siguiente:
● Sistema operativo GNU/Linux Debian Lenny (Testing).
● Navegador web Iceweasel.

Es importante mencionar que para que esto se pueda llevar a cabo, ambos
routers tiene que soportar el modo WDS, el cual es indispensable para que la
conexión se lleve a cabo.
Los pasos son los siguientes:

Para el modelo ST580

Conectar la computadora con el router, en esta computadora se realizará la
configuración. Para la conexión se necesita un cable recto, dicho cable tiene
que conectarse a un puerto de la LAN del router y el otro en la tarjeta de red
de la computadora.

26
Una vez que se halla establecido la conexión, vamos al navegador de
nuestra preferencia, y en la barra de dirección digitamos la dirección ip
192.168.1.254 (esta es la dirección por defecto de este modelo).
Nos preguntara nombre de usuario y contraseña, introducimos estos
campos.

Estaremos en la página principal de router, nos vamos a la opción
“SpeedTouch”.

27
Acá nos vamos a la opción “Set Up”.

Nos aparecerá un wizard para configurar el router, hacemos clic en “Next
>”

28
Seleccionamos “Bridge”.

Los dejamos como esta y hacemos clic en Next.

29
Dejamos activado el DHCP, luego clic en Next.

Digitamos nombre de usuario y dos veces la contraseña, en nuestro caso
tanto el usuario como contraseña quedo en “admin”, pero esto es opcional.

30
Clic en Start.

Esperamos a que el router se configure.

31
Ahora nos pedirá usuario y contraseña.

Hacemos clic en Finish.

32
Ahora bien, nos vamos a la opción “Home Network”, luego seleccionamos
“Interfaces”.

Nos vamos a “WLAN:...”, el cual nos mostrara información sobre la
configuración de este servicio.

33
Nos vamos a “Configure”, y configuramos los siguientes parámetros como
se muestran a continuación, pero antes de esto, es importante tomar en
cuenta lo siguiente:
1.Poner los routers a emitir por el mismo canal. Para ello colocaremos la
opción “Channel Selection” en Manual y después elegiremos el canal
en el desplegable “Channel”.

2.“Broadcast Network Name” debe estar activado. Esto hará que se
difunda el nombre de la red wireless, al menos hasta que hayamos
configurado la interconexión.

3.“Allow New Devices” debe estar inicialmente en allowed.

Podremos usar encriptación WEP pero no WPA. Acá es importante recalcar
que la contraseña que se establezca en este router, debe ser la misma que
poseerá el otro router con el cual nos conectaremos inalámbricamente.

34
Después de haber guardado los cambios, observaremos lo mismo en el
resumen que se muestra.

Tenemos que irnos a la opción “Configure WDS”, aparecerán las redes
inalámbricas detectadas por el router, lo más normal es que no aparezca
ninguna, para poder buscar hacemos clic en la opción “Scan for wireless
accespoints”, pero ojo, no hay que desmarcar la opción “WDS Enabled”.

35
Nos dará una advertencia, hacemos clic en Aceptar.

36
Esperamos a que se llene la barra.

Aparecerán las redes detectadas, en nuestro caso marcamos la casilla que
corresponde a “Comunicaciones2” y hacemos clic en “Apply”.

37
Ahora observaremos los cambios realizados, es decir que aparecerá la red
que seleccionamos en el estado “Yes”.

Ahora hacemos clic en la opción “Interfaces”, luego clic en la opción
“LocalNetwork”.

38
Nos aparecerá información relativa a la IP del router, así como también al
servicio DHCP, en nuestro caso lo único que se hizo fue cambiar los rangos
de IP, para eso nos vamos a la opción “Configure”. Es importante mencionar
que esto de las IP'S es personal, ya que se puede dejar como viene por
defecto, y no habrá ningún problema, nosotros lo hicimos asumiendo que
habrá un máximo de 50 host conectados a la red.

39
Acá hacemos clic en la parte que dice “Edit” del “DHCP Pools”.

En “Start Address” cambiamos el ultimo octeto a 100, además tenemos que
irnos a la opción “End Address” y cambiar el ultimo octeto a 149; lo que
estamos haciendo es especificando a partir de qué dirección IP asignará por
medio de DHCP, así como también hasta que dirección IP asignará, nótese
que estamos asumiendo un máximo de 50 direcciones IP.

40
Ahora bien, ya podemos observar los cambios surgidos en el DHCP.

Con esto se ha finalizado la configuración del primer router.

41
Para el modelo ST585 V6

Conectar la computadora con el router, en esta computadora se realizará la
configuración. Para la conexión se necesita un cable recto, dicho cable tiene
que conectarse a un puerto de la LAN del router y el otro en la tarjeta de red
de la computadora.

Una vez que se ha establecido la conexión, vamos al navegador de nuestra
preferencia, y en la barra de dirección digitamos la dirección ip 192.168.1.1
(esta es la dirección por defecto de este modelo).

Nos preguntará nombre de usuario y contraseña, ingresamos dichos
campos.

42
Estaremos en la página principal de router, nos vamos a la opción
“SpeedTouch”.

Acá nos vamos a la opción “Set Up”.

43
Ingresaremos a un wizard, en esta parte hacemos clic en el botón “Next >”.

Ahora seleccionamos el modo “Router PPP” y “Next >”.

44
Dejamos la opción “VPI” como esta y hacemos clic en “Next >”.

Ingresamos usuario y contraseña de la cuenta de Internet de la que nos
haya provisto nuestro proveedor de Internet.

45
Ingresamos el nombre de usuario y contraseña que se utilizara para poder
ingresar al router posteriormente, en nuestro caso lo dejamos “admin” y
“admin”.

Nos mostrará un resumen de lo que hemos configurado, hacemos clic en
“Start”. Esperamos a que se configure, luego hacemos clic en “Finish”.

46
Ahora bien, nos vamos a la opción “Home Network”.

Seleccionamos la opción que dice “WLAN: …” y nos aparecerá un resumen
de la configuración Wireless actual.

47
Nos vamos a “Configure”, y configuramos los siguientes parámetros como
se muestran a continuación, pero antes de esto, es importante tomar en
cuenta lo siguiente:

1.Poner los routers a emitir por el mismo canal. Para ello colocaremos la
opción “Channel Selection” en Manual y después elegiremos el canal
en el desplegable “Channel”.

2.“Broadcast Network Name” debe estar activado. Esto hará que se
difunda el nombre de la red wireless, al menos hasta que hayamos
configurado la interconexión.

3.“Allow New Devices” debe estar inicialmente en allowed.

Podremos usar encriptación WEP pero no WPA. Acá es importante recalcar
que la contraseña que se establezca en este router, debe ser la misma que
poseerá el otro router con el cual nos conectaremos inalámbricamente.

Cuando hagamos clic en “Apply” veremos un resumen de los cambios
efectuados en la configuración de wireless.

48
Ahora bien, hacemos clic en la opción que se encuentra en la parte de abajo
que dice “Configure WDS”, en dicha parte nos aparecerán las redes
detectadas inalámbricamente por el router, pero lo más normal es que no
aparezca ninguna.

49
Para poder detectar las redes inalámbricas, hacemos clic en la opción “Scan
for wireless accesspoints” pero sin desmarcar “WDS Enabled”, con esto nos
dará una advertencia, hacemos clic en “Aceptar”.

Esperamos a que busque las redes disponibles, en este paso aparecerá una
barra, la cual hay que esperar que se llene.

Ahora nos aparecerán las redes que están disponibles, en nuestro caso
seleccionamos la llamada “Comunicaciones1”, ya que en el otro router,
definimos ese nombre, y será con dicho router con el que nos
conectaremos. Para poder seleccionarlo solamente marcamos el cuadro que
aparece debajo de la columna “WDS”, luego hacemos clic en “Apply”.

50
Observaremos los cambios aplicados, con esto nos indica que ya estamos
conectados con el router con essid “Comunicaciones1”.

51
Ahora nos vamos a “Interfaces”, en dicha parte tendremos que seleccionar
“LocalNetwork”.

Nos mostrara información relativa a la red local, hacemos clic en
“Configure”.

52
Acá podremos configurar aspectos relativos a la IP del router, DHCP.

Lo primero que haremos es quitar la IP 192.168.1.254, ya que si nos damos
cuenta, es la misma dirección que el otro router que configuramos
anteriormente, para hacer eso solamente hacemos clic en la opción
“Delete” correspondiente a dicha dirección, pero cuando lo hagamos nos
dará una advertencia, a lo cual hacemos clic en “Aceptar”.

53
Observaremos los cambios efectuados, Ahora desactivamos el servicio
DHCP, ya que el otro router al cual nos conectaremos proporcionara dichos
servicios, para eso hacemos desmarcamos el cuadro que corresponde a
“Use DHCP Server” y hacemos clic en “Apply”. Con esto nos enviara a otra
página en la cual volvemos a hacer clic en “Apply”, pero fijándonos que este
desmarcada la opción correspondiente a DHCP.

Nos dará una advertencia, a la cual hacemos clic en “Aceptar”.

54
Ahora observaremos los cambios realizados, luego hacemos clic en
“Configure”.

Con esto, el router ST585 V6 ya está correctamente configurado para poder
conectarse con el ST580.

Para poder comprobar la conectividad, nos conectaremos a cualquiera de
los routers, nos daremos cuenta que en ambos routers se nos asignará
dirección IP, aunque el DHCP solamente este en un router; ya conectados,
podremos acceder a ambos routers, a pesar de que estemos conectados en
un solo router, también, si hay otras maquinas conectadas al router,
podremos hacer ping a las otras maquinas, y si estas disponen de un
servidor como apache, podremos acceder a este por medio de su dirección
IP.

Con esto hemos concluido la conexión de dos redes de manera inalámbrica.

55
Redistribución de una red Wi-Fi a un segmento de red
cableada por medio de iptables

Utilizando una computadora con al menos una interfaz ethernet y una Wi-Fi, se
redistriuye la red inalámbrica a un segmento de red cableada. Esto se logra
haciendo uso de reglas de iptables y habilitando el forwarding de IP para que el
equipo haga NAT, siendo capaz de enrutar.

En nuestro caso, creamos un script interpretable con bash con las reglas de ip
tables para posteriormente correrlo. Creamos un archivo en blanco con nano:

# nano setIptables

El script debe poseer la siguiente estructura:

En la primer parte se realiza la limpieza de las iptables para luego establecer una
política por defecto en la que no se deniegue nada, es decir, se acepte todo.
Luego se indica que se hará NAT (Network Adress Tranlation) para la red
192.168.5.0 con máscara de subred 255.255.255.0 y que la interfaz de salida será
la wlan0.

Por último se escribe un 1 sobre el archivo ip_forward, lo que es equivalente a un
verdadero para la opción de reenvío de IP.

56
Ya teniendo el script se debe correr con permisos de súper usuario. Asumiendo
que el script se encuentra dentro del directorio de trabajo, le agregamos permisos
de ejecución para el súper usuario y su grupo:

# chmod 770 setIptables

Ahora nos conectamos a la red Wi-Fi. Cuando la conexión esté establecida,
tendremos que asignarle una dirección IP a la interfaz Ethernet, pudiendo variar
según el caso:

# ifconfig eth0 192.168.5.1 netmask 255.255.255.0 up

Hecho esto, ya podemos redistribuir la red inalámbrica a una red cableada y
poder de esta forma compartir recursos.

57
Protección de redes inalámbricas con FreeRadius

Autenticación EAP/PEAP para FreeRadius

EAP
Extensible Authentication Protocol (EAP) es una autenticación framework usada
habitualmente en redes inalámbricas. EAP una estructura de soporte, no un
mecanismo específico de autenticación. Provee algunas funciones comunes y
negociaciones para el o los mecanismos de autenticación escogidos. Estos
mecanismos son llamados métodos EAP, de los cuales se conocen actualmente
unos 40. Los métodos modernos capaces de operar en ambientes inalámbricos
incluyen EAP-TLS, EAP-SIM, EAP-AKA, PEAP, LEAP y EAP-TTLS.

PEAP
Protected Extensible Authentication Protocol (PEAP) es un método para transmitir
de manera segura información de autenticación, incluyendo contraseñas, sobre
redes cableadas e inalámbricas. Hay que tener en cuenta que PEAP no es un
protocolo de encriptación, sino que como otros tipos EAP solo autentica un cliente
a una red.

Vamos a configurar FreeRadius para un escenario como este:

58
1. Un nodo inalámbrico(suplicante) intenta conectarse a nuestra red
inalámbrica, y nuestro punto de acceso(autenticador) se encarga de pedirle
al suplicante sus credenciales.

2. Luego de recibirlas, se las envía a nuestro servidor de autenticación, que se
encarga validar su identidad y de acuerdo a eso permitirle o negarle el
ingreso a nuestra red.

3. Ya con el suplicante validado, éste puede acceder a nuestra red y utilizar
todos los recursos que ésta tenga disponible(ej. Internet).

Para la implementación del servidor de autenticación FreeRadius se utilizó lo
siguiente:

● Una laptop HP Pavilion con AMD Turion X2 1.9GHz y 2GB de RAM como
servidor de autenticación.

● Un router Linksys WRK54G como nuestro punto de acceso.

● Una laptop HP Pavilion con Intel Core Duo 2GHz y 1GB de RAM como nodo
inalámbrico o suplicante.

El software utilizado fue el siguiente:

● Debian Lenny (Testing), como servidor de autenticación y como suplicante.

● FreeRadius 2.1.1

● MySQL 5.0

● OpenSSL

● Windows Vista, como suplicante

59
Instalación de MySQL

FreeRadius puede trabajar con MySQL como base datos para los usuarios que se
intenten autenticar. Para instalar MySQL en un sistema operativo basado en
Debian, como root ingresemos el siguiente comando en una terminal:

# apt-get install mysql-server

Con esto habrá instalado MySQL en su computadora.

Instalación de OpenSSL

Necesitamos tener instalado OpenSSL antes de instalar FreeRadius, ya que si no
se encuentra instalado los módulos para EAP/PEAP de FreeRadius no se instalarán.
Para instalar OpenSSL en un sistema operativo basado en Debian, como root
ingresemos el siguiente comando en una terminal:

# apt-get install openssl

Con esto habrá instalado OpenSSL en su computadora.

60
Instalación de FreeRadius

1. Descargar el código fuente de http://freeradius.org/download.html. Al
momento de la elaborar este manual la última versión disponible es la
2.1.1. En el código fuente se incluyen muchos módulos, entre ellos el
módulo necesario para que FreeRadius trabaje conjuntamente con MySQL.

2. Luego de descargar el código fuente, se procede a descomprimirlo e
instalarlo. En una terminal, ubíquese en el directorio donde descargó la
fuente, y como root ejecute los siguiente comandos:

# tar xvf freeradius-server-2.1.1.tar.gz
# cd freeradius-server-2.1.1
# ./configure
# make
# make install

En algunos casos es posible que necesite agregarle opciones a ./configure si
ha instalado MySQL en una ubicación no estandar, o si quiere instalar
FreeRadius en una ubicación distinta a la estandar. En nuestro caso no
utilizamos ninguna opción. Los archivos de configuración de FreeRadius se
instalan por defecto en la ubicación /usr/local/etc/raddb.

3. Si la instalación fue exitosa, pruebe que el servidor FreeRadius este
funcionando correctamente con el siguiente comando:

61
Si todo está configurado correctamente, luego de presionar Enter debería ver una
pantalla similar a la siguiente:

Si recibió el mensaje “Ready to process requests” como en la imagen de anterior,
FreeRadius se ha instalado correctamente.

62
Configuración de FreeRadius

Vamos a configurar FreeRadius para que trabaje conjuntamente con MySQL. Para
esto tenemos que crear la base de datos que usará FreeRadius, crear un usuario
para conectarse a MySQL, agregar un usuario de prueba en la base de datos para
conectarse a FreeRadius y por último configurar FreeRadius para que trabaje con
esta base de datos.

En la siguiente imagen se pueden ver los comandos necesarios para crear la base
de datos llamada “radius” y crear un usuario con el mismo nombre y contraseña
“radpass”. Luego llenamos la base de datos a partir del esquema que trae
FreeRadius:

Ahora crearemos un usuario para probar la autenticación con FreeRadius, los
comandos necesarios se muestran a continuación:

63
Ahora configuraremos FreeRadius para que trabaje con la base de datos de
MySQL que acabamos de crear. Vayamos a configurar el archivo
/usr/local/etc/raddb/sql.conf, en la sección sql configuremos los parámetros de
conexión a MySQL:

server = "localhost" ← el servidor donde está la base
login = "radius" ← el usuario de MySQL
password = "radpass" ← la contraseña del usuario
radius_db = "radius" ← la base de datos

También tenemos que configurar el archivo /usr/local/etc/raddb/clients.conf. Este
archivo contiene configuraciones para los clientes o redes de clientes que se
conectaran a nuestro servidor FreeRadius. Ahora configuraremos al cliente
“localhost”, para esto revisamos en la sección client localhost el parámetro secret
y lo dejamos de la siguiente manera :

client localhost {

secret = s3cr3t0
...
}

64
Otro archivo que configuraremos es /usr/local/etc/raddb/sites-available/default.
Acá configuraremos las siguientes secciones, asegurándonos de tener
descomentado el parámetro sql en cada una de ellas:

authorize {
preprocess
chap
mschap
suffix
eap
sql
}

accounting {
detail
radutmp
sql
}

session {
radutmp
sql
}

post-auth {
sql
}

65
En este momento efectuaremos una prueba con el usuario que creamos en la
base de datos de MySQL. Para esto volvamos a correr el comando radiusd -X, y en
otra terminal usaremos el comando radtest, que recibe como parámetros nombre
contraseña host puerto secreto. Escribamos lo siguiente:

Si recibimos el mensaje Access-Accept quiere decir que nuestro usuario ha sido
autenticado exitosamente por nuestro servidor FreeRadius.

66
Creación de certificados

Necesitamos crear certificados para utilizar EAP/PEAP. Para esto necesitamos en
primer lugar tener instalado OpenSSL. Para crear los certificados nos ubicamos en
una terminal en /usr/local/etc/raddb/certs. FreeRadius viene con unos certificados
creados por defecto, debemos eliminar estos primero:

Ahora procedamos a crear el certificado de root. Escriba nano ca.cnf y presione
Enter, le aparecerá una pantalla similar a la siguiente:

Edite los campos "input_password" y "output_password" que será la contraseña
del certificado CA.

Edite la sección [certificate_authority] para que tenga los valores correctos para
su país, estado, etc.

67
Luego con el comando make ca.pem se creará el certificado CA, y con el comando
make ca.der se creará el formato DER del certificado que después puede ser
importado a Windows.

Continuamos con la creación del certificado de servidor. Escriba nano server.cnf

Edite los campos "input_password" y "output_password" con la contraseña que
será la del certificado del servidor.

Edite la sección [servidor] con los valores correctos para su país, estado, etc.
Asegúrese que el campo commonName de este archivo sea distinto al de
commonName del certificado CA.

Con el comando make server.pem se crea el certificado de servidor. Para crear un
certificado de petición de firma para el certificado de servidor, ingrese el comando
make server.csr.

68
Abra el archivo /usr/local/etc/raddb/eap.conf y asegúrese que los parámetros
siguientes tengan los valores que se muestran a continuación:

eap {
default_eap_type = peap
...
}

tls {
certdir = ${confdir}/certs
cadir = ${confdir}/certs
private_key_password = s3cr3t0
private_key_file = ${certdir}/server.pem
certificate_file = ${certdir}/server.pem
CA_file = ${cadir}/ca.pem
dh_file = ${certdir}/dh
random_file = ${certdir}/random
...
}

peap {
default_eap_type = mschapv2
...
}

Abra el archivo /usr/local/etc/raddb/modules/mschap y asegúrese que los
parámetros siguientes tengan los valores que se muestran a continuación:

mschap {
use_mppe = yes
require_encryption = yes
require_strong = yes
...
}

Necesitamos registrar como cliente a nuestro router o punto de acceso que
servirá como autenticador. Abra el archivo /usr/local/etc/raddb/clients.conf y
agregue lo siguiente :

client 192.168.1.1/24 {
secret = s3cr3t0
shortname = linksys
}

69
Configuración del punto de acceso(autenticador)

Abra su navegador de internet y en la barra de direcciones digite 192.168.1.1 y
presione Enter. Luego le aparecerá un cuadro similar al siguiente pidiéndole su
nombre y contraseña. En este caso el nombre al igual que la contraseña es
“admin”:

Ya adentro de la configuración del router, vamos a la sección Wireless y luego a la
subsección Wireless Security. Veremos la siguiente pantalla:

70
Dejamos los parámetros como se muestran en la imagen anterior. A continuación
se explican brevemente algunos de los parámetros:

RADIUS Server Address: es la dirección IP de nuestro servidor de
autenticación RADIUS.

RADIUS Port: el servicio de RADIUS corre por defecto en el puerto 1812. Si
se ha cambiado, hacer el ajuste necesario a la configuración mostrada.

WPA Shared Key: esta palabra es la que se ocupa para encriptar los
paquetes transmitidos en la red, debe ser la misma que se especificó en el
clients.conf en la configuración de cliente del punto de acceso.

71
Conectarse con un cliente Windows

Nos dirijimos al “Tray” del sistema y hacemos clic secundario sobre el ícono
de red. Luego seleccionamos la opción “Centro de redes y recursos
disponibles”.

Seleccionamos la tarea “Administrar redes inalámbricas.

72
Agregamos un perfil de red haciendo clic sobre el botón “Agregar”.

Seleccionamos la opción “Crear un perfil de red manualmente”.

73
Escribimos la información de la red inalámbrica, en este caso le llamamos
“radius”, seleccionamos el tipo de seguridad “WPA-Enterprise” y el tipo de
cifrado “TKIP”. Luego hacemos clic en “Siguiente”.

Una vez se ha agregado el perfil de red, hacemos clic en “Cerrar”.

74
En el Administrador de redes inalámbricas podemos ver nuestro nuevo perfil
de red. Ahí seleccionamos el perfil y hacemos clic secundario sobre éste
para luego hacer clic sobre “Propiedades” y configurar algunos aspectos de
seguridad del perfil.

En la pestaña de “Seguridad configuramos el método de autenticación de
red haciendo clic sobre el botón “Configuración”.

75
Una vez estemos en las propiedades del método de autenticación de la red,
indicamos que al conectarnos no valide un certificado de servidor por lo que
quitamos la selección en “Validar un certificado de servidor”.

76
Ahora bien, debemos configurar el método de autenticación haciendo clic
sobre el botón “Configurar”. Aquí lo único que hacemos es quitar la
selección para evitar que cuando nos conectemos a la red nos conectemos
con el nombre del equipo y no con el nombre de usuario que se nos sea
asignado.

Después de hacer todo lo anterior hacemos clic en “Aceptar” en cada uno
de los formularios abiertos que hemos configurado. Cuando los cambios
sean aplicados aparecerá un globo de información indicándonos que se
necesita información extra para conectarnos a la red que hemos
configurado.

77
Hacemos clic sobre el globo de información. Nos aparecerá un formulario
como el siguiente en donde seleccionamos la opción “Escribir o seleccionar
información de inicio de sesión adicional”.

Se nos solicitará una credencial para conectarse a la red. Escribimos el
nombre de usuario y la contraseña que nos ha sido asignada. Hacemos clic
en “Aceptar”.

78
Finalmente cuando nos identifiquemos correctamente con nuestro servidor
Radius se mostrarán las siguientes notificaciones:

79
Portal cautivo para redes inalámbricas públicas con Chillispot

En las redes inalámbricas públicas suele desearse restringir a los usuarios el
acceso a internet; esto se logra a través de un portal cautivo. Chillispot es una
herramienta de portal cautivo que trabaja sobre GNU-Linux.

Su funcionamiento se basa en reglas de iptables con las que convierte el equipo
en un firewall. Estas configuraciones trabajan junto con un servidor de
autenticación que a su vez se apoya en un servidor RADIUS para validar los
usuarios.

El diagrama del escenario implementado es el siguiente:

Requerimientos:
● Hardware:
✔ Un punto de acceso inalámbrico (indispensable pero no sujeto a un
modelo específico).
✔ Una computadora con dos interfaces de red (ethernet).

● Software (Los marcados con * se instalarán durante el desarrollo del
manual):
✔ Sistema Operativo Debian-Linux
✔ MySQL (*)
✔ Servidor RADIUS “FreeRADIUS” (*)
✔ Chillispot (*)
✔ Servidor Web “Apache” con soporte SSL(*)

● Conocimientos previos:
✔ Dirección IP del servidor de nombres (DNS)

80
Soporte TUN/TAP

En primer lugar, nuestro sistema debe tener habilitado el soporte TUN/TAP para
interfaces virtuales. Desde la terminal ejecutamos el siguiente comando:

# modconf

Con esto aparecerá un recuadro que muestra las categorías de los módulos
soportados por el sistema. Para nuestro caso, buscaremos sección kernel/drivers/
net

81
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 “+”.

Si tenemos soporte TUN/TAP nuestro sistema posee soporte para un módulo
indispensable para Chillispot, sin embargo, aún debemos agregarlo al inicio del
sistema. Desde terminal ejecutamos las siguientes líneas de comando:

# modprobe tun
# nano /etc/modules.conf

82
Con la última línea abrimos el archivo /etc/modules.conf con nano. Vamos al final
del archivo y en una nueva línea agregamos “tun”, quedando más o menos así
(puede variar en su sistema según los módulos que cargue al arrancar).

83
Forwarding de direcciones IP

Nuestro equipo con Chillispot estará trabajando como un firewall, de hecho, sin las
reglas de firewall no sería posible que Chillispot funcionara. Al funcionar como
firewall debe tener la capacidad de hacer NAT (Network Adress Translation) para
lo que ejecutamos la siguiente línea:

# 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

Ahora modificamos el archivo sysctl

# nano /etc/sysctl.conf

Nos aseguramos que posea la siguiente línea (si no la posee la agregamos y si se
encuentra comentada con # al principio se lo quitamos)

net.ipv4.ip_forward=1

Instalación de MySQL

Esta parte es muy sencilla. Para instalar MySQL únicamente utilizamos el gestor
de paquetes Synaptic o bien desde consola introducimos:

# apt-get install mysql-server

Instalación y configuración de FreeRADIUS

Los aspectos de instalación y configuración del servidor RADIUS se tratan en la
sección “Protección de redes inalámbricas con FreeRadius” por lo que de aquí en
adelante asumimos que ya se tiene el servidor RADIUS configurado.

84
Instalación de Chillispot

Habiendo realizado ya los pasos anteriores, estamos listos para instalar Chillispot.

# apt-get install chillispot

Durante el proceso de instalación nos aparecerán pantallas de diálogo en las que
se nos pide ciertos parámetros de configuración.

El primer parámetro es la dirección IP del servidor RADIUS. Es importante recalcar
que en nuestro caso, el mismo equipo en que está corriendo Chillispot hace las
veces de servidor RADIUS; por esta razón es que se ha utilizado la dirección de
loopback (Dirección IP que hace referencia al equipo local).

El segundo parámetro es el secreto del servidor RADIUS (Cadena de
caracteres que el servidor RADIUS utiliza durante el proceso de compartir
información con un cliente, en este caso Chillispot)

85
Luego indicamos cual será la interfaz conectada al punto de acceso. Esta
interfaz es la que irá a la Wireless LAN y a través de ella se proveerá
servicio DHCP. Además, la dirección IP de esta interfaz será la puerta de
enlace para los clientes inalámbricos.

86
Aquí debemos introducir nuestra dirección IP seguido de la ruta del archivo
utilizado para la autorización, en este caso, hotspotlogin.cgi. Este archivo se
encuentra escrito en Perl, y puede ser modificado. Principalmente, suele ser
deseado modificar la parte HTML para cambiar el aspecto visual de las
páginas enviadas al cliente.

La URL de la página de inicio debe llevar el mismo formato de la URL
anterior, con la diferencia que apunta a otra sitio. Generalmente suele
desearse tener una página de bienvenida en la que se muestre al usuario
las reglas y pasos para hacer uso de la red o algún otro tipo de información
antes de redirigirlo a la página de login. En nuestro caso dejaremos en
blanco este parámetro debido a que deseamos que el usuario sea redirigido
de una sola vez a la página de autenticación (si no indicamos otra, se
asume que se redireccionará al login).

87
La contraseña compartida entre Chillispot y el servidor web es necesaria
para la seguridad en el proceso de comunicación entre ellos. Este parámetro
queda a discreción.

88
Hasta aquí ya tenemos instalado Chillispot con alguna configuración básica.
Estas configuraciones se encuentran en /etc/chilli.conf donde podemos
modificarlas y aún definir otros parámetros. Esto lo haremos
posteriormente.

Dentro de la documentación de Chillispot encontramos el el archivo
hotspotlogin.cgi (generalmente viene comprimido y lo encontramos como
hotspotlogin.cgi.gz). Descomprimimos el archivo y lo copiamos en la carpeta
/usr/lib/cgi-bin.

# gunzip /usr/share/doc/chillispot/hotspotlogin.cgi.gz
# cp /usr/share/doc/chillispot/hotspotlogin.cgi /usr/lib/cgi-bin/

Con esto ya tenemos nuestro servidor de autenticación.

Instalación y configuración de Apache

Necesitamos un servidor web con soporte SSL al cual redireccionar a los usuarios
de la red inalámbrica cuando intenten navegar. En nuestro caso instalaremos
Apache y los módulos respectivos para soporte SSL:

# apt-get install apache2 apache2.2-common apache2-mpm-worker
apache2-utils

Pasamos ahora a generar el certificado SSL con el que trabajará Apache:

# make-ssl-cert /usr/share/ssl-cert/ssleay.cnf
/etc/apache2/ssl/apache.pem

Llenamos los datos que pida según sea nuestro caso y luego habilitamos el
módulo:

# a2enmod ssl

Debemos verificar que Apache esté configurado para escuchar por el puerto 443
cuando trabaje con el módulo SSL (las versiones recientes de Apache suelen ya
venir configuradas de esta manera):

# nano /etc/apache2/ports.conf

89
El archivo debe tener la siguiente forma:

Ahora creamos el sitio SSL. Por defecto, Apache trae el fichero default ubicado en
la carpeta /etc/apache2/sites-available/. Copiamos este archivo para luego poder
modificarlo:

# cp /etc/apache2/sites-available/default /etc/apache2/sites-
available/ssl
# nano /etc/apache2/sites-available/ssl

90
El archivo debe quedar de la siguiente manera:

Para finalizar la configuración de Apache, habilitamos el nuevo sitio:

# a2ensite ssl

91
Edición de los archivos de configuración

Básicamente los archivos de configuración a modificar son cuatro:
● /etc/chilli.conf
● /usr/local/etc/raddb/clients.conf
● /usr/lib/cgi-bin/hotspotlogin.cgi
● /etc/init.d/chillispot.iptables

Modificación de chilli.conf

Aquí es donde definimos los parámetros propios de Chillispot, los cuales
explicamos a continuación.

● 'net':
Es la red sobre la cual estará trabajando Chillispot, es decir la Wireless LAN.
Se debe poner con el formato <dirección IP>/<máscara de subred>.

● 'radiusserver':
La dirección IP de los servidores RADIUS. Es necesario indicar dos
servidores, aunque en nuestro caso solamente contamos con uno. Debido a
que el servicio de RADIUS se encuentra corriendo en el mismo equipo,
utilizamos la dirección de loopback.

● 'radiussecret':
Cadena de caracteres que indica el secreto compartido entre Chillispot y el
servidor RADIUS.

● 'dns':
Dirección IP del servidor DNS.

● 'dhcpif':
Interfaz conectada al punto de acceso y por la que se proveerá DHCP. Dicho
sea de paso que en la red sobre la que esté trabajando Chillispot no debe
haber ningún servidor DHCP activado, dado que este servicio lo proporciona
Chillispot mismo.

● 'uamallowed':
Aquí podemos especificar direcciones IP o nombres de dominio a los que se
permitirá el acceso sin autenticación. Como mínimo debemos poner la
dirección IP del servidor web al que serán redireccionados los usuarios no
registrados y la dirección IP del Servidro de Nombres de Dominio (DNS).

● 'uamserver':
URL del servidor de autenticación.

92
● 'uamsecret':
Secreto compartido entre Chillispot y el servidor de autenticación.

Utilizando nano abrimos el archivo para poder editarlo:

# nano /etc/chilli.conf

El archivo completo debe quedar con la siguiente estructura:

93
Configuración de clients.conf

Dado a que en nuestro caso la dirección IP del servidor RADIUS es la de loopback
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.
Si el caso fuera un servidor RADIUS remoto, deberíamos agregar la dirección IP a
través de la cual es visible para RADIUS el host con Chillispot.

Abrimos el fichero con nano

# nano /usr/local/etc/raddb/clients.conf

Para el primer caso expuesto, el archivo debe quedar así:

Modificación de hotspotlogin.cgi

Abrimos el fichero con nano:

# nano /usr/lib/cgi-bin/hotspotlogin.cgi

Lo único que debemos hacer es verificar que no se encuentre comentada la línea

$uamsecret = “<secretouam>”;

Donde secretouam es el secreto compartido entre Chillispot y el servidor de
autenticación.

Además, descomentamos la línea

$userpassword=1;

94
Copia y edición de chillispot.iptables

Chillispot ya incluye una configuración de iptables sugerida. La podemos
encontrar dentro de su documentación y copiarla para hacer uso de ella y de ser
necesario modificarla.

# cp /usr/share/doc/chillispot/firewall.iptables
/etc/init.d/chillispot.iptables
# chmod 770 /etc/init.d/chillispot.iptables

Después de copiarla y darle permisos de ejecución abrimos el archivo con nano:

# nano /etc/init.d/chillispot.iptables

Luego verificamos que los parámetros INTIF y EXTIF contengan las interfaces
interna (la que va a la red inalámbrica) 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

Iniciando nuestro servidor Chillispot

Ahora nuestro Servicio de portal cautivo está listo para iniciarse. Basta con
ejecutar los siguientes comandos para iniciar Chillispot y los servicios
relacionados:

# /etc/init.d/apache force-reload

# /etc/init.d/chillispot.iptables restart

# /etc/init.d/chilli restart

# /etc/init.d/freeradius restart

95