Este tipo de configuración parece ser común en centros comerciales y aeropuertos. En el oeste de Canadá, Shaw ofrece dicho servicio y lo llama "Shaw Open". Estoy bastante seguro de que otros locales tienen servicios similares de proveedores como T-Mobile, etc.
Desde algo como un teléfono celular no es muy complicado de hacer. No es necesaria la autenticación para conectarse al punto de acceso wifi, ya que está "abierto" para el acceso público. Pero mi teléfono celular no se conectará a sitios web o servicios remotos a través de aplicaciones hasta que use mi navegador e inicie sesión en una página web particular proporcionada por el ISP .
Mi pregunta simplemente es: ¿Cómo automatizo el paso de autenticación desde un dispositivo que normalmente no tiene un navegador tradicional?
Tengo, en mi caso particular, una Raspberry Pi configurada con el software que quiero usar en ferias comerciales, etc. Estas ubicaciones tienen el mismo tipo de puntos de acceso "abiertos". El Raspi está destinado a ser autónomo. Simplemente hace sus negocios y habla con un sitio web. Pero esta conexión saliente está bloqueada por la conexión "abierta" de los ISP porque no lo he hecho, ni puedo completar la parte del navegador del proceso.
Suponiendo que tengo credenciales para hacer esto en la red de un proveedor en particular, ¿cómo puedo automatizar esa parte del proceso sin requerir que abra una sesión de terminal en el Pi? ¿Qué tipo de tecnología se utiliza aquí, que puedo buscar?
fuente
wget
programa instalado?links2
por ejemplo.Respuestas:
La clave para resolver problemas como este es saber cómo hacer la pregunta. Busqué en Google buscando "cómo acceder a panera bread wifi" y encontré esta joya.
Este artículo tenía varios scripts que podrían usarse para facilitar el inicio de sesión automático. Opté por incluir el ejemplo de Panera Bread que aprovecha la biblioteca Mechanize de Python.
La solución utiliza el
dispatcher.d
directorio de NetworkManager para ejecutar scripts cada vez que una interfaz de red en particular sube o baja. El artículo detalla una secuencia de comandos que colocaría en este directorio/etc/NetworkManager/dispatch.d
, llamada07-autologin_openwifi
. Aquí está ese guión:Y aquí está el script de pan Panera
panera.py
:Le recomiendo que lea el artículo completo si está interesado en otros métodos para iniciar sesión automáticamente. El artículo tenía varias otras redes WiFi abiertas que estaban programadas para el área de Baltimore, MD.
fuente
Dependiendo de cómo se implemente la autenticación, es posible que pueda enviar una solicitud HTTP para obtener acceso. Sin embargo, esto depende de numerosos aspectos de la implementación particular.
Tenga en cuenta que estos tipos de autenticación se implementan para mantener los sistemas autónomos fuera y al mismo tiempo permitir que solo los navegadores tengan acceso, que es exactamente lo que está tratando de eludir.
Lo ideal sería tener un teléfono que pueda configurar como punto de acceso wifi y conectar su Pi a esa red para que pueda hacer lo que quiera, pero eso no es gratis.
TL; DR: Los mendigos no pueden elegir
fuente
Aparentemente, estas redes con autenticación basada en la web dependen del control de acceso basado en MAC posterior a la autenticación, por lo que simplemente puede autenticarse en un dispositivo diferente mientras falsifica la dirección MAC de su Pi, y luego su Pi debería poder conectarse a la red.
Recibí este consejo de http://frankiejarrett.com/how-to-connect-apple-tv-to-a-hotel-wi-fi-network/
fuente
Si tiene un segundo dispositivo de red, puede configurar el reenvío NAT. Conéctese a su red "interna" con su teléfono celular o computadora portátil y haga que el RPi reenvíe esa conexión a la red en general. Luego autentíquese con el navegador en su computadora portátil o teléfono. La red ve la dirección MAC externa de su RPi y la asocia con la conexión autenticada.
Regularmente hago esto con un enrutador de bolsillo (antiguo AirPort Express) para conectarme a Internet del hotel, luego puedo conectar mi Chromecast y otros dispositivos a esa red sin tener que volver a autenticarme.
Aún más simple ... Si su dispositivo de red es USB y funciona con una computadora portátil, conéctelo a una computadora portátil e inicie sesión en la red. Luego vuelve a conectarlo al RPi. Debería funcionar durante varias horas.
fuente