Jak mogę automatycznie zalogować się do portali internetowych w systemie OS X?
Captive portal jest używany przez (często nie chronione hasłem), sieci bezprzewodowych, które prezentują stronę internetową jak najszybciej połączyć się z nich, które wymagają, aby zalogować.
Muszę logować się bardzo często do różnych sieci bezprzewodowych i żaden z portali internetowych nie pamięta moich danych logowania / hasła. Czy istnieje sposób na zautomatyzowanie procesu logowania, a przynajmniej przechowywanie par login / hasło w pęku kluczy?
Aktualizacja: Istnieje aplikacja na iOS o nazwie AutoWifi, która zasadniczo to obsługuje. Jeśli można to zrobić na iOS z wszystkimi jego ograniczeniami, to na pewno musi być możliwe zrobienie czegoś takiego w OS X, prawda?
Powiązany ciekawy fakt: w ten sposób Apple testuje niewolne portale na OS X i iOS:
OS X i iOS wysyłają żądanie przy
http://www.apple.com/library/test/success.html
każdym połączeniu z siecią Wi-Fi.
Począwszy od Yosemite, adres URL jest teraz: http://captive.apple.com/hotspot-detect.html
Ten adres URL zwraca następujący kod HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<TITLE>Success</TITLE>
</HEAD>
<BODY>
Success
</BODY>
</HTML>
Odpowiedzi:
Możesz zmienić nazwę
w
i wszystko gotowe. Wprowadzanie hasła odbywa się teraz w wybranej przeglądarce i może być przechowywane za pomocą 1 hasła lub innych wtyczek. Pamiętaj, że jeśli byłeś już zalogowany podczas zmiany nazwy, wygasanie sesji może trochę potrwać ...
źródło
Właśnie znalazłem to Wyłącz obsługę niewoli sieci w OS X.
Który wspomina „Aby go wyłączyć, ustaw tę preferencję:”
Na wypadek, gdybyś kiedykolwiek chciał usunąć to ustawienie, możesz:
Następnie, jak wspomina @Leon, użyj zwykłej przeglądarki internetowej, aby się zalogować. Lub jeśli jesteś w sieci, w której to jakoś nie działa, nadal możesz spróbować otworzyć aplikację ręcznie (znajdującą się pod adresem
/System/Library/CoreServices/Captive Network Assistant.app
)źródło
Projekt NetworkAutoLogin firmy Tyilo na github to demon os.x, który „loguje się automatycznie w Captive Portal Networks” przy użyciu poświadczeń podanych przez użytkownika.
Korzysta z PhantomJS i CasperJS, aby opublikować niezbędne informacje w polach na stronie logowania do portalu. Może to być tajne „hasło” logowania, para nazwa użytkownika-hasło lub po prostu aktywacja pola wyboru EULA i przycisku „Połącz”.
Nie pamiętam dokładnie, w jaki sposób jest wyzwalany, ale rejestruje on .plist w launchctl.
Umieszczasz opcje konfiguracji w pliku json, określając nazwę zestawu pól (opcjonalnie) na stronie portalu w niewoli oraz niezbędne pary nazwa pola + pary treści (wymagane). Oto przykład pliku konfiguracyjnego przechowywanego w
~/.networkautologin.js
źródło
Czy usunięcie (lub zmiana nazwy) nie
/Library/Preferences/SystemConfiguration/CaptiveNetworkSupport/Settings.plist
zatrzymuje automatycznego sondowania?Może to przynajmniej zatrzymać otwieranie wyskakującego okienka WebView.
W przeciwnym razie zamień wszystkie adresy URL
Settings.plist
na lokalną hostowaną kopięsuccess.html
pliku isuccess.html
umieść plik na lokalnym serwerze internetowym.źródło
Co 5 minut widzę żądania portalu w niewoli w mojej sieci domowej. Ale zmieniłem w pliku /Library/Preferences/SystemConfiguration/CaptiveNetworkSupport/Settings.plist
ciąg: http://www.apple.com/library/test/success.html do http://captive.apple.com/hotspot-detect.html (miałem na myśli sekcję ProbeURL). Apple zmieniło adres URL sondy dla nowego systemu operacyjnego, nie wiem dlaczego, ale odpowiedź na nowy adres URL to 200 (OK) i powinna działać (miałem ten sam problem na moim MBP 2011 Mavericks).
źródło
Z pewną pomocą w korzystaniu z AppleScript, Lynx, Fakeapp / Safari i ControlPlane, mój MacBook zawsze teraz automatycznie łączy się z portalem dostępnym w moim biurze. Nadal nie jest to skuteczny sposób na zrobienie tego, ale nadal doskonale wykonuje pracę. Mam nadzieję, że ktoś może to uprościć.
Oto kod:
Upewnij się, że mamy poprawny identyfikator SSID
Sprawdź istnienie adresu w niewoli portalu
Przetestuj połączenie z portalem
Logowanie do portalu
Zapisz te skrypty jako jedną aplikację. Następnie użyj reguł ControlPlane, aby uruchomić go po uruchomieniu z określonym SSID.
Z pewnością formularz logowania w niewoli może zawierać inne elementy HTML. Możesz dodać niektóre okna dialogowe lub powiadomienia, inny SSID z własnymi elementami HTML i nazwą użytkownika / hasłem. Fake to przeglądarka + automatyzator, więc ułatwi Ci życie.
Nie zapomnij wyłączyć wyskakujących okien logowania. Teraz Twój Mac w 100% automatycznie łączy się z portalem.
Mam nadzieję, że to pomaga.
źródło
Portal w niewoli nie przypomina hasła. To bardziej przypomina arkusz logowania. Za każdym razem, gdy sieć, z którą jesteś połączony, przekazuje adres IP przez DHCP, daje to portalowi dostępnemu do zalogowania się / wyrażenia zgody, a następnie umożliwia połączenie. Z tego, co rozumiem, jest to ograniczenie międzyplatformowe, którego nie można zmienić. Może to być coś, co administratorzy sieci mogą zmienić, ale nawet to może zależeć od rodzaju używanego sprzętu.
źródło
Chociaż kilka lat to pytanie i odpowiedź pokazuje, że Google go wysoko. Niestety MacOS zmienił się od tego czasu. Ta strona MacWorld z 2016 roku wydaje się opisywać aktualny stan (w chwili pisania).
Zasadniczo dlatego, że dzięki SIP możesz wyłączyć asystenta tylko w trybie odzyskiwania. Muszę jeszcze znaleźć rozwiązanie drugiej części tego pytania: „czy możemy zautomatyzować logowanie?”
źródło
Możesz użyć Mili , narzędzia o otwartym kodzie źródłowym, które napisałem dla stron automatycznego logowania do hotspotów. Działa również w systemie Linux.
Po zmianie połączenia Wi-Fi Mili sprawdza usługi Mikrotik, a następnie próbuje zalogować się przy użyciu danych logowania.
Możesz również użyć informacji o wielokrotnym logowaniu, takich jak:
źródło