Mam w biurze sieć WI-FI, która wymaga zalogowania się za pomocą portalu typu captive (wymaga zalogowania się przy użyciu nazwy użytkownika i hasła).
Chciałbym w jakiś sposób uruchomić skrypt, który automatycznie się loguje, gdy tylko połączę się z siecią (bez konieczności uruchamiania przeglądarki i utrzymywania jej otwartości).
Co dziwne, udało mi się znaleźć takiego klienta dla Androida ( CoovaAX, który nie jest już dostępny), ale nie jednego dla systemu Windows (mam Windows 7, jeśli ma to znaczenie).
Czy ktoś ma na to proste rozwiązanie? Wolę nie spędzać czasu na kodowanie własnego narzędzia do tego.
windows
captive-portal
Kamień Assafa
źródło
źródło
Odpowiedzi:
Nie wiem o prostych ... Używam narzędzia o nazwie webinject.pl do testowania stron internetowych. Jest to skrypt perla, który pozwala na określenie danych wejściowych i oczekiwanych rezultatów i może być łatwo skonfigurowany do tego. Uruchomienie go może zająć godzinę.
Co do tego, jak to zautomatyzować. Harmonogram zadań systemu Windows jest dość niezawodny i może wyzwalać mnóstwo zdarzeń. Możesz powiązać go ze zdarzeniem logowania lub wpisem dziennika zdarzeń lub po prostu uruchamiać go co 5 minut (to trochę bolesne). Na przykład dostaję zdarzenie 32 w dzienniku systemowym, gdy nawiązuję połączenie sieciowe. To może to zrobić.
źródło
Możesz użyć lynx (wersja z obsługą SSL) - przeglądarki tekstowej - z
cmd_args
plikiem skryptu zawierającym polecenia potrzebne do zalogowania. Możesz wygenerować taki plik skryptu, logując się raz raz w Wi-Fi za pomocą lynxa i logując dane wejściowe. Zrób to, wywołując rysia z następującym argumentem:Następnie możesz zmienić nazwę tego pliku i użyć go, wywołując lynx w następujący sposób:
Umieść to w pliku wsadowym. (Użyj pełnej ścieżki do pliku wykonywalnego rysia lub ustaw tę ścieżkę w zmiennej środowiskowej PATH).
Gdy już zaczniesz działać, wykonaj zaplanowane zadanie uruchamiane przez identyfikator zdarzenia
10000
w źródleNetworkProfile
dziennika,Microsoft-Windows-NetworkProfile/Operational
który go wywołuje:Osobiście łączę to z,
iexpress.exe
aby uruchomić to ukryte w tle i upewnić się, że zaplanowane zadanie jest uruchomione, nawet jeśli nie jestem zalogowany. Właśnie skonfigurowałem to na komputerze kilka tygodni temu i działa świetnie!Źródło: Mój artykuł na temat automatyzacji logowania do portalu Captive Portal .
źródło
Robiłem to w przeszłości za pomocą harmonogramu zadań Windows i skryptu php + mysqllite. Skrypt php + mysqllite właśnie sprawdził, czy może dotrzeć do Google, jeśli został przekierowany, sprawdził, czy ma procedurę dla domeny, do której został przekierowany, jeśli tak, to go uruchomił. Mysqllite miał przechowywać pliki cookie dla bezgłowej przeglądarki, którą zaimplementowałem w php. Prawdopodobnie byłoby o wiele mniej pracy, aby użyć loginu typu fatmonkey do zalogowania się. (z wadą jest to, że przeglądarka wyskakuje i robi rzeczy za każdym razem, gdy uruchamiany jest harmonogram).
Wyzwalacz harmonogramu zadań będzie się różnić w zależności od maszyny. Miałem jednego laptopa, który rejestrowałby połączenia Wi-Fi jako zdarzenia i zawierały ssid, dzięki czemu mogłem filtrować, by uruchamiać tylko te, na których mi zależało.
Na moim obecnym laptopie wydaje się, że jedynym zdarzeniem, które niezawodnie zostanie uruchomione, jest połączenie klienta DHCP. Oczywiście to frytki za każdym razem, gdy otrzymuję adres IP i nie mówią mi SSID.
Za pomocą przeglądarki zdarzeń systemu Windows możesz sprawdzić, które zdarzenia są dostępne do uruchomienia. Właśnie trzykrotnie włączałem i wyłączałem Wi-Fi i sprawdzałem, które zdarzenia zostały uruchomione 3 razy w ciągu ostatniej godziny.
źródło