Такая установка, кажется, распространена в торговых центрах и аэропортах. В Западной Канаде Shaw предоставляет такую услугу и называет ее «Shaw Open». Я уверен, что в других регионах есть аналогичные услуги от таких провайдеров, как T-Mobile и т. Д.
С чем-то вроде мобильного телефона это сделать не очень сложно. Для подключения к точке доступа Wi-Fi аутентификация не требуется, поскольку она «открыта» для публичного доступа. Но мой мобильный телефон не будет подключаться к веб-сайтам или удаленным службам через приложения, пока я не использую свой браузер и не войду на определенную веб-страницу, предоставленную интернет-провайдером .
Мой простой вопрос: как мне автоматизировать этап аутентификации с устройства, которое обычно не имеет традиционного браузера?
В моем конкретном случае у меня Raspberry Pi настроен с программным обеспечением, которое я хочу использовать на выставках и т. Д. В этих местах есть такие же «открытые» точки доступа. Распи должен быть самодостаточным. Он просто делает свое дело и разговаривает с сайтом. Но это исходящее соединение блокируется «открытым» соединением интернет-провайдера, потому что я не имею и не могу выполнить часть процесса, связанную с браузером.
Предполагая, что у меня есть учетные данные для этого в сети конкретного провайдера, как я могу автоматизировать эту часть процесса, не требуя от меня открыть сеанс терминала для Pi? Какую технологию здесь даже используют, которую я могу искать?
источник
wget
установлена ли программа?links2
например.Ответы:
Ключ к решению таких проблем - это умение задать вопрос. Я искал Google в поисках "как получить доступ к panera bread wifi" и обнаружил этот драгоценный камень.
В этой статье было несколько сценариев, которые можно использовать для упрощения автоматического входа в систему. Я решил включить пример для Panera Bread, который использует библиотеку Python Mechanize.
Это решение использует каталог NetworkManager
dispatcher.d
для запуска сценариев всякий раз, когда конкретный сетевой интерфейс работает вверх или вниз. В статье подробно описан сценарий , который вы бы разместить в этом каталоге/etc/NetworkManager/dispatch.d
, называется07-autologin_openwifi
. Вот этот скрипт:А вот сценарий с хлебом Panera
panera.py
:Я рекомендую вам прочитать всю статью, если вы заинтересованы в других методах автоматического входа в систему. В статье было несколько других открытых сетей WiFi, которые были созданы для Балтимора, штат Мэриленд.
источник
В зависимости от того, как реализована аутентификация, вы можете отправить HTTP-запрос для получения доступа. Это зависит от многочисленных аспектов конкретной реализации, хотя.
Имейте в виду, что эти типы аутентификации созданы для защиты автономных систем, предоставляя доступ только браузерам, и это именно то, что вы пытаетесь обойти.
В идеале у вас должен быть телефон, который вы можете настроить как точку доступа Wi-Fi и подключить свой Pi к этой сети, чтобы вы могли делать все, что захотите, но это не бесплатно.
TL; DR: нищие не могут быть выбирающими
источник
Очевидно, что эти сети с веб-аутентификацией основаны на пост-аутентификации управления доступом на основе MAC-адреса, поэтому вы можете просто выполнить аутентификацию на другом устройстве, подделывая MAC-адрес вашего Pi, и тогда ваш Pi сможет подключиться к сети.
Получил этот совет от http://frankiejarrett.com/how-to-connect-apple-tv-to-a-hotel-wi-fi-network/
источник
Если у вас есть второе сетевое устройство, вы можете настроить переадресацию NAT. Подключитесь к своей «внутренней» сети с помощью мобильного телефона или ноутбука, и RPi переадресует это подключение к сети в целом. Затем авторизуйтесь с помощью браузера на вашем ноутбуке или телефоне. Сеть видит внешний MAC-адрес вашего RPi и связывает его с аутентифицированным соединением.
Я регулярно делаю это с карманным туристическим маршрутизатором (старый AirPort Express) для подключения к интернету отеля, затем я могу подключить Chromecast и другие устройства к этой сети без повторной аутентификации.
Еще проще ... Если ваше сетевое устройство USB и работает с ноутбуком, подключите его к ноутбуку и войдите в сеть. Затем подключите его к RPi. Это должно работать в течение нескольких часов.
источник