En mi afan de encontrar, sistemas alternativos, que den las mismas funcionalidades basicas, que los sistemas integramente de pago, me dio por buscar soluciones a lo que se llama, HotSpot.
La idea no es nueva, los tios de Fon, hace un monton de tiempo que lo tienen mas que estudiado, e implantado, generando una linea de negocio, realmente envidiable.
Mi idea era mas al estilo, Tu te lo gisas tu te lo comes.
Con las bases claras, coste cero, en todas las vertientes, me he dedicado a buscar una aplicación que me permita gestionar yo todo el chiringo y que tambien me permita gestionar el uso que se haga de mi conexión, que para eso es "mia" y si por ende, puede quedar algun eurito, por alguna transacción, pues "pa la saca".
Domingo, 27 de marzo del 2011
Portal cautivo HotSpot
Cotilleando por internet me encontre con sitios en los que se habla de algunas que estan disponibles, sin tener muy claro que tipo de licencias soportan, si son Software libre, open sopurce, privativas, etc etc.
En mi caso, tenian que cumplir mis bases, COSTE CERO.
Pero tambien tenian que poder ser implementadas sin demasiado coste tecnico, ni tiempo de puesta en marcha. En resumidas cuentas simpleza y eficacia.
Yo tengo una maquina vieja, un PIII a 600Mhz Intel para mas señas, y con poco mas de 256M, con debian Lenny corriendo, con algunas cosillas a nivel de prueba, y un poco todo abandonado, como es logico, esta aplicación necesariamente tendria que correr en este sistema.
En mi busqueda por Internet di con cosas como estas.
WifiDog, Chillispot, ZoneCD, AirMarsal, y un monton de ellas mas, Mirar este enlace.
http://es.wikipedia.org/wiki/Portal_cautivo
ZoneCD fue la opcion que mas me gusto, pero al ser un tipo LiveCD me desinfle un poco, otro problema no solo de ZoneCD, es el mantenimiento del paquete y de poder leer documentación NO oficial, opiniones, problemas y demas.
Chillispot, fue mi segunda alternativa, y me di de morros, con que el paquete estaba un poco abandonado.
Me tire por WifiDog, contaban maravillas, pero tenia pinta de ser mas una solución embebida, compleja de instalar, y que en vez de usar MySQL tira de PostgresSQL.
Pues me decidi por algo, que tenia pinta de ser como instalar y listo.
Air Marsal Web oficial http://www.iea-software.com/
Esta soución no es GPL, ni open source, es de "pago" pero, te permite usar la version "mini", totalmente funcional, con una limitación de 5 usuarios conectados simultaneamente, si, cinco, al tiempo, y claro yo me pregunto: ¿cinco?, pero si cinco ya son un monton.
¿Cinco tios, mas mi gente tirando de mi ADSL? Quizas demasiados.
Teniendo claro que se cumplian mis bases de trabajo, me decidi por bajarlo e instalarlo.
La instalación sencilla como el mecanismo de un chupete, eso si, en el directorio /usr/src/ se descarga airmarshalv2_linux.tar.gz y
el Sr root, descomprimió, y lanzo el script en perl ./install.pl. y no hace falta nada mas, bueno nada nada, no es del todo cierto, en el enlace de la web no hacen mención de que sin un dhcpd corriendo, no se pueden entregar IPs a los clientes Air Marsal no incorpora un demonio "dhcpd".
El directorio /portal se añade a /usr/local/ este es el directorio donde esta todo el tinglado.
Cuando se descomprime el tar.gz y dentro del directorio portal/ se almacena la documentación en formato PDF, que se tiene que leer, aunquesea un poco por encima.
El sistema hace Nat, entre las interfaces de entrada salida encaminando las peticiones del cliente del puerto 80, las redirige al 81 del portal cautivo.
El diagrama de mi montaje es este:
La maquina etiquetada como AirMarsal es un sistema Debian Lenny con configuración basica, tipo netinstall, y con todo lo necesario para un servidor de correo y webmail tipo "Christoph Haas".
Con esto la instalación del AirMarsall, es pecata minuta.
Estas son algunas capturas de la interface del "gestor" de AirMarsal. No hacen falta mucho comentario si se mira el esquema, pero algunas cosas, si las comentaré.
En esta captura, se puede ver (una vez que pinches) la zona de Administracción, lo referente a Radius esta en un tono mas colorado, e indica que es un "modulo" no operativo, en mi instalación, la autenticación de usuarios, no se hace por Radius, si no por usuarios locales.
Los botones mas verdes indican que se usan sus opciones.
Tambien se puede observar que en la parte alta de la ventana aparece información de la versión, si esta funcionando o no, usuarios conectados, y cuanto tiempo hace, que el sistema esta operativo.
Boton Configuracion general (Gerenal Settings).
Las opciones mas destacadas de este apartado, podrian ser: filtro de acceso para este portal (Config acces IP), el puerto al cual escucha el sistema, la cantidad de hilos para poder usar el servidor, la selección de modos de autenticar a los usuarios, y un par de cosas muy interesantes, los portales que puedes llamar, mediante la opcion Server root directory. Esto te permite tener una serie de portales distintos para pruebas o para distintas ocasiones, lo malo es que no se pueden usar todos al tiempo y la otra opción es la de acceso SSL para la autenticación de usuarios.
En este punto se tiene que recalcar, que el modo de trabajo, como se ve en el esquema principal, es sin contraseña de ningun tipo en el acceso WIFI, lo que implica que es muy sencillo capturar los datos de esa conexión, y despues interpretarlos, con lo que se quedaria al descubierto las credenciales de los usuarios. Si en vez de usar el portal sin SSL, lo usaramos, quedaria todo el trafico cifrado, y seria casi imposible que un "escuchador" WIFI pudiera interptretar las credenciales ni el trafico de los usuarios.
La creacción del certificado se explica muy bien en el manual y seria un paso mas en el proceso de instalación.
Logs
El sistema puede crear eventos, de todo lo que marquemos en este apartado, los logs son en texto plano, os pongo uno de ellos.
Mar 31 02:46:38 2011 [INFO]: ARP test on 192.168.10.116 (00032f28796e) eth1 [OK]
Mar 31 02:46:40 2011 [INFO]: SES Usage: test (192.168.10.116) - IN: 1544661 bytes, 25692 packets - OUT: 45823942 bytes, 31389 packets
Mar 31 02:46:43 2011 [INFO]: WEB request 192.168.10.116 test http://192.168.1.10:81/status.ptl
Mar 31 02:46:46 2011 [INFO]: SES Usage: test (192.168.10.116) - IN: 1544661 bytes, 25692 packets - OUT: 45823942 bytes, 31389 packets
Tambien te da la opción de decidir, donde quieres que esos logs se almacenen, y el formato de los mismos. Es muy interesante ver la actividad a este nivel.
Licencia.
Tiene dos tipos de licencia, la de hasta 50 usuaruios concurentes (unos 500€) y la de usuarios ilimitados, (unos 800€)
No quiero ser malo ni nada de eso, pero... y si yo virtualizo este sistema en una maquina digamos con 4 interfaces y tres sistemas virtualizados, pues me salen unos 15 usuarios concurentes y la capacidad de tener 3 portales distintos... opciones hay muchas y mejor que las discurra otro.
Network.
En este apartado se toca todo lo referente a las interfaces de red, modo de trabajo, subnets a las que se les permitira el acceso, lista de Ips expluidas de autenticarse, en fin, toda la enjundia de red del sistema.
En este caso, se usa NAT(por defecto) para pasar o dejar ver la interface Eth1 a internet (Eth0), te permite seleccionar otros dos modos de trabajo transparente y bridge, pero no parece que sean muy buena idea en este tipo de montaje.
Si nuestro sistema en vez de tener 2 interfaces, pudieramos poner 4 se podrian poner cada una a un AP (Acces point) y tener 3 areas de covertura o 3 SSIDs distintos identificando zonas.
Esto de tener mas de 2 interfaces no hace falta, solo con conectar la Eth1 a otro switch (conmutador) o incluso al mismo (en modo NAT) podriamos poner tantos AP como quisieramos para dar mayor covertura o distinguir entre zonas.
Este menu nos permite hacer todo eso sin despeinarnos.
Configuración de la sesión.
Los parametros de este apartado son todos por defecto, y lo cierto es que no he trasteado mucho con esto.
Wallet Garden.
En este apartado se definen los sitios, a los que se podra tener acceso sin restricciones y sin autenticarse.
Yo puse estos, y me di cuenta de una cosa curiosa, el DNS que resuelve la IP, del sistema y del cliente tienen que ser, necesariamente los mismos, discrepancias en la IP de por ejemplo google.es puede hacer que el sistema deniege mostrar el sitio.
Perfiles.
Se pueden crear perfiles para no tener que definir todos estos parametros en cada usuario, esto te ayuda a crear los que se estimen necesarios y luego ir colocandoselos a los usuarios. Crea un entorno mas global y controlado al asociarlo a un nombre objeto que puede definir la esencia del perfil.
Cuentas locales.
Esto no tiene mucho misterio, son los distintos usuarios que hay definidos en el sistema y sus propiedades.
Conectados.
Este boton muestra en tiempo "real" (refresca cada 3sg), los usuarios conectados, y los usuarios registrados, permitiendo ver detalles de consumos de trafico, tiempo de conexion, IP asignada, dirección MAC y otros detalles, incluso poder desconectar al cliente si se considera oportuno.
Temas.
Los temas, son como las "pieles", themplates, o skins, del sistema, permite una daptación visual, que podira permitir integrarlo mejor en una intranet o entorno corporativo.
Yo no he usado nada de esto, he adaptado a mis colores, (que no formas) todas las pantallas que podria ver un cliente al interactuar con este portal.
Guardar.
El detalle de la acción de guardar, no la comento por rigor, si no mas bien por que no es como podria parecer algo trivial, en este sistema hay dos tipos de "save", el guardado de parametros y la activación de ciertos parametros, en la linea que veis y en las capturas anteriores, algunas estan marcadas con asteriscos dobles, que indican que NO tomaran efecto sus cambios hasta que no se rearranque el servicio del portal cautivo, muy importante tener esto en cuenta, a la hora de saber que cambios nos obligan a "tirar" a los posibles usuarios conectados.
Esto es todo por el momento y hasta que pruebe otras caracteristicas que tiene, como por ejemplo otro portal llamado "tos" que permite a los "posibles clientes" autoregistrarse, y que permitiria otro entorno de uso a este sistema.
y se puede utilizar free .La parte de portal cuativo tiene buenas opciones de gestion de usuarios y es muy personalizable.Si se puedieran filtrar dispositivos ya seria un buen punto extra.
saludos