come posso accedere automaticamente a una rete con un portale captive in Windows?


14

Ho una rete WI-FI in ufficio che richiede l'accesso con un portale captive (richiede l'accesso con nome utente e password).

Vorrei in qualche modo eseguire uno script che acceda automaticamente non appena mi collego alla rete (senza dover avviare il browser e tenerlo aperto).

Stranamente, sono riuscito a trovare un client simile per Android ( CoovaAX che non è più disponibile), ma non uno per Windows (ho Windows 7, se è importante).

Qualcuno ha una soluzione semplice per questo? Preferirei non dover perdere tempo a programmare il mio strumento per questo.


Qualcuno ha rilasciato un programma per risolvere questo problema nei due anni successivi? Esistono soluzioni ragionevoli per Android ( play.google.com/store/apps/… ) e iOS).
Jess Riedel,

Inoltre, Meta: come attirare l'attenzione su questa domanda? Non posso chiedere la mia versione poiché sarebbe un duplicato, ma la risposta qui è completamente obsoleta e vorrei dare un'occhiata fresca.
Jess Riedel,

@JessRiedel Ho pubblicato una nuova risposta che funziona ora e include un collegamento a una guida completa .
Menasheh,

Risposte:


7

Non so di semplice ... Uso uno strumento chiamato webinject.pl per testare siti Web. È uno script perl che ti consente di specificare input e risultati previsti e potrebbe essere facilmente configurato per questo. Potrebbe volerci un'ora per farlo funzionare.

Per quanto riguarda come automatizzarlo. L'Utilità di pianificazione di Windows è piuttosto robusta e può innescarsi su una miriade di eventi. È possibile collegarlo a un evento di accesso o a una voce del registro eventi o semplicemente eseguirlo ogni 5 minuti (è un po 'doloroso). Ad esempio, ottengo un evento 32 nel registro di sistema quando stabilisco una connessione di rete. Potrebbe farlo.


Grazie. Non so se questo risolva completamente il mio problema, immagino che potrebbe connettersi al sito e inviare le mie credenziali, ma dovrei comunque accenderlo automaticamente quando mi collego alla rete wifi dell'azienda. Qualche idea di come farlo? Potrei prendere un evento con Scheduler, forse?
Assaf Stone,

Ho aggiunto maggiori dettagli su come attivarlo.
uSlackr,

@uSlackr Saresti in grado di fornire il codice che hai utilizzato per questo?
Cameron

@Cameron Quale codice? Il webinject.pl è disponibile per il download. il file di configurazione XML sarà specifico per il tuo caso d'uso.
uSlackr

Sì, potrei vedere l'XML come esempio? Grazie
Cameron

5

Puoi usare lynx (la versione con supporto SSL) - un browser basato su testo - con un cmd_argsfile di script contenente i comandi necessari per accedere. Puoi generare tale file di script accedendo al wifi con lynx una volta e registrando l'input. Fallo chiamando lynx con il seguente argomento:

lynx.exe -cmd_log =% USERPROFILE% \ lynxlog.txt`

Quindi puoi rinominare quel file e usarlo chiamando lynx come segue:

lynx.exe -cmd_args = FILENAME_HERE

Metti questo in un file batch. (Utilizzare il percorso completo dell'eseguibile lince o impostare tale percorso nella variabile di ambiente PATH.)

Una volta che lo fai funzionare, crea un'attività pianificata attivata dall'ID evento 10000nell'origine NetworkProfiledel registro Microsoft-Windows-NetworkProfile/Operationalche lo chiama:

Esempio di trigger di Utilità di pianificazione

Personalmente, lo raggruppo insieme iexpress.exeper eseguirlo nascosto in background e mi assicuro che l'attività pianificata sia impostata per l'esecuzione anche se non ho effettuato l'accesso. L'ho appena installato sul mio computer poche settimane fa e ha funzionato benissimo!

Fonte: il mio articolo su Come automatizzare l'accesso al portale Captive .


1

L'ho fatto in passato con l'utilità di pianificazione di Windows e uno script php + mysqllite. Lo script php + mysqllite ha appena controllato per vedere se poteva raggiungere Google, se veniva reindirizzato, controllava se aveva una routine per il dominio a cui veniva reindirizzato, in tal caso, lo eseguiva. Il mysqllite era mantenere i cookie per il browser senza testa che ho implementato in php. Probabilmente sarebbe molto meno lavoro usare un equivalente greasemonkey per fare il login. (Con il lato negativo, il browser si aprirà e farebbe le cose ogni volta che il tuo programmatore viene inciampato.)

Il trigger dell'utilità di pianificazione varierà da macchina a macchina. Avevo un laptop che registrava le connessioni wifi come eventi e includevano lo ssid in modo da poter filtrare per attivare solo quelli a cui tenevo.

Sul mio attuale laptop, sembra che l'unico evento che viene generato in modo affidabile sia la connessione client DHCP. Certo, questo si frigge ogni volta che ottengo un indirizzo IP e non mi dice un SSID.

Puoi controllare quali eventi sono disponibili per l'attivazione con il Visualizzatore eventi di Windows. Ho appena acceso e spento il mio wifi 3 volte e verificato quali eventi sono stati attivati ​​3 volte nell'ultima ora.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.