Ich versuche, eine Verbindung zu einem WLAN-Netzwerk herzustellen, in dem alle Anfragen missbraucht und Sie auf eine Seite weitergeleitet werden, auf der Sie Nutzungsbedingungen zustimmen müssen, bevor Sie eine Verbindung zur tatsächlichen Außenwelt herstellen können. Dies ist eine ziemlich übliche Praxis und stellt normalerweise kein großes Problem dar.
Ich habe jedoch einen Computer mit Ubuntu 9.10-Server ohne Fenstersystem. Wie kann ich über die Befehlszeile den Nutzungsbedingungen zustimmen? Ich habe keinen Internetzugang auf dem Computer, um Pakete über apt-get oder ähnliches herunterzuladen. Sicher, ich kann mir eine beliebige Anzahl von Problemumgehungen vorstellen, aber ich vermute, dass es eine einfache Möglichkeit gibt, wget oder curl oder so etwas zu verwenden.
Grundsätzlich benötige ich eine Befehlszeilenlösung zum Senden einer HTTP-POST-Anforderung, indem ich im Wesentlichen auf eine Schaltfläche klicke. Zum späteren Nachschlagen wäre es hilfreich zu wissen, wie eine POST-Anfrage beispielsweise mit einem Benutzernamen und einem Passwort gesendet wird, wenn ich mich jemals in einer anderen Situation an einem anderen Hotel oder Flughafen befinde.
Antworten:
Installieren Sie Lynx im Voraus und verwenden Sie Lynx über die Befehlszeile. Lynx ist ein textbasierter Browser.
Alternativ können Sie versuchen, www.google.com mit wget oder curl abzurufen und anschließend die zurückgegebene HTTP-Datei zu analysieren.
quelle
Sie müssen einmal in der Quelle des Anmeldeformulars nachsehen , um die Namen der Benutzer- und Kennwortfelder herauszufinden. Verwenden Sie bei der Authentifizierung aller Seiten eine beliebige URL, um diese Quelle abzurufen:
Zum Beispiel finden Sie:
Eine andere Möglichkeit besteht darin, (auf einem anderen Computer) einen Proxy wie Fiddler2 zu verwenden, um zu sehen, was vom Browser "über das Kabel " gesendet wird.
Dann können Sie Ihren
curl
Befehl erstellen , um Ihre Formularinformationen zu veröffentlichen:Wenn Sie nicht haben
curl
, ist es möglich, einen einfachen HTTP-Client mit einer Sprache zu schreiben, die Sie möglicherweise auf der Plattform haben (Perl, Lua, Java ...).quelle