Comment se connecter automatiquement aux portails captifs sur OS X?

Comment puis-je me connecter automatiquement aux portails captifs sur OS X?

Un portail captif est utilisé par des réseaux sans fil (souvent non protégés par un mot de passe) qui présentent une page Web dès que vous vous connectez, ce qui vous oblige à vous connecter.

Je dois vous connecter à différents réseaux sans fil comme celui-ci très fréquemment, et aucun des portails captifs ne se souvient de mes informations de connection / mot de passe. Existe-t-il un moyen d'automatiser le process de connection d'une manière ou d'autre, ou au less stocker les paires de connection / mot de passe dans le porte-keys?

Mise à jour: Il existe une application iOS appelée AutoWifi qui gère essentiellement cela. S'il est possible de le faire sur iOS avec toutes ses ressortingctions, il est certain qu'il est possible de faire quelque chose comme ça sur OS X, n'est-ce pas?


Un fait amusant associé: Voici comment Apple teste des portails captifs sur OS X et iOS:

OS X et iOS font une request à http://www.apple.com/library/test/success.html chaque fois que vous vous connectez à un réseau WiFi.

À partir de Yosemite, l'URL est maintenant: http://captive.apple.com/hotspot-detect.html

Cette URL renvoie le HTML suivant:

 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <HTML> <HEAD> <TITLE>Success</TITLE> </HEAD> <BODY> Success </BODY> </HTML> 

Vous pouvez renommer

 /System/Library/CoreServices/Captive Network Assistant.app 

dans

 /System/Library/CoreServices/No More Captive Network Assistant.app 

et vous êtes tous set. L'input par mot de passe passe maintenant par votre browser de choix et peut être stockée à l'aide de 1 passeur ou d'autres plugins. Notez que si vous étiez déjà connecté pendant le renommage, il peut prendre un certain time pour que votre session expire …

Je viens de find ce Disable Captive Network Support dans OS X

Ce qui mentionne "Pour le désactiver, définissez cette preference:"

 sudo defaults write /Library/Preferences/SystemConfiguration/com.apple.captive.control Active -boolean false 

Dans le cas où vous voudriez supprimer ce paramètre, vous pouvez:

 sudo defaults delete /Library/Preferences/SystemConfiguration/com.apple.captive.control Active 

Ensuite, comme le mentionne @Leon, utilisez le browser Web habituel pour vous connecter. Ou si vous êtes sur un réseau où cela ne fonctionne pas, vous pouvez essayer d'ouvrir l'application manuellement (situé dans /System/Library/CoreServices/Captive Network Assistant.app )

Le projet NetworkAutoLogin de Tyilo sur github est un démon os.x qui "s'inscrit automatiquement dans les réseaux de portails captifs" avec les informations d'identification fournies par l'user.

Il utilise PhantomJS et CasperJS pour publier les informations nécessaires dans les champs de la page de connection du portail captif. Peut être le mot de passe secret de connection, une paire username-password ou simplement activer une case EULA et le button "connect".

Je ne me souviens pas exactement de la façon dont il est déclenché, mais il enregistre un .plist avec launchctl.

Vous mettez les options de configuration dans un file json, en précisant le nom du champ (facultatif) sur la page du portail captif et les paires de contenu fieldname + nécessaires (requirejses). Voici un exemple du file de configuration stocké dans ~/.networkautologin.js

 { // Example with all possible options match: { SSID: ['Example WiFi 1', 'Example WiFi 2'], BSSID: '01:23:45:67:89:AB', URL: 'http://logon.example.org/?url=http://www.apple.com/library/test/success.html' }, form_selector: 'form#login_form', fields: { 'username': 'test', 'password': '123123' } } 

Ne supprime pas (ou renomme) /Library/Preferences/SystemConfiguration/CaptiveNetworkSupport/Settings.plist arrête l'auto-sondage?

Cela pourrait au less arrêter l'ouverture du popup WebView.

Sinon, replace toutes les URL dans Settings.plist avec une copy hébergée locale du file success.html et héberger le file success.html sur votre server Web localhost.

Je vois les requests de portail captif sur mon réseau domestique toutes les 5 min. Mais j'ai changé dans le file /Library/Preferences/SystemConfiguration/CaptiveNetworkSupport/Settings.plist

string: http://www.apple.com/library/test/success.html à http://captive.apple.com/hotspot-detect.html (je voulais parler de la section ProbeURL). Apple a changé l'URL de la sonde pour un nouveau operating system, je ne sais pas pourquoi, mais la nouvelle réponse URL est 200 (OK) et devrait fonctionner (j'ai rencontré le même problème sur mes Mavericks mbp 2011).

Un portail captif n'est pas un mot de passe. C'est plus comme une feuille de connection. Chaque fois que le réseau vous connecte à une adresse IP via DHCP, il vous donne le portail captif pour vous connecter / accepter et vous permet de vous connecter. D'après ce que je comprends, il s'agit d'une ressortingction multiplate-forme qui ne peut être modifiée. Il se peut que les administrateurs réseau puissent changer, mais même cela peut dépendre du type d'équipement utilisé.

Bien que quelques années, cette question et cette réponse montrent beaucoup de google. Malheureusement MacOS a changé depuis lors. Cette page sur MacWorld à partir de 2016 semble décrire l'état actuel (à partir de cette écriture).

Ce qui est essentiellement à cause de SIP, vous pouvez désactiver l'assistant uniquement en mode de récupération. Je n'ai pas encore trouvé de solution à l'autre partie de cette question, "pouvons-nous automatiser la connection?"