webentwicklung-frage-antwort-db.com.de

Captive-Portal auf Android-Gerät

Ich verwende mein Android-Gerät als mobilen Webserver. Ich möchte jeden Benutzer, der über meinen tragbaren Android-Hotspot eine Verbindung herstellt, zu einer bestimmten Willkommensseite weiterleiten.

Weiß jemand, wie man diese Technik auf meinem Gerät implementiert (ich glaube, das nennt man Captive Portal Technik)?

13
Panayotis

Ich beantworte meine eigene Frage, bis jemand nützliche Informationen zum Implementieren des Captive-Portals in einem nicht gerooteten Gerät weitergibt.

Im Moment ist mir eine solche funktionierende Lösung nicht bekannt.

Das Captive-Portal fängt die meisten Netzwerkpakete ab (mithilfe einer Firewall), unabhängig von Adresse oder Port, bis der Benutzer einen Browser öffnet und versucht, auf das Web zuzugreifen. Zu diesem Zeitpunkt wird der Browser auf eine Webseite umgeleitet, für die möglicherweise eine Authentifizierung erforderlich ist.

Damit es eine Captive-Portal-Lösung gibt, müssen viele Teile, wie z. B. eine Software-Firewall/ein Router/ein Webserver, integriert werden und zusammenarbeiten. Angesichts der aktuellen Einschränkungen/Berechtigungen in einem nicht gerooteten Telefon glaube ich jetzt, dass eine solche Anwendung wahrscheinlich nicht existiert.

@ mmm2006: Wenn Sie jedoch do ein gerootetes Gerät haben, gibt es Apps wie Paywall , die den Trick für Sie tun können.

Sie können auch versuchen, eine eigene Captive-Portal-Lösung zu implementieren. Es ist nicht trivial, aber da Android auf dem Linux-Kernel basiert, können Sie Folgendes ausprobieren:

11
Panayotis

Ich bin mir nicht sicher, ob ich dies auf Android-Geräten tun soll (ich habe hier nach Informationen zum Deaktivieren des Android-Checks für Captivate gesucht), aber ich richte dnsmasq auf einem Raspberry Pi ein, der mit hostapd als WiFi-Zugangspunkt fungiert, damit der gesamte Datenverkehr kommt an das Gerät (und verwenden Sie dann nginx, um entweder eine Standardseite oder ein domänenspezifisches virtualhost-Setup anzubieten).

Dies scheint mein Android 7.0 zu der Annahme zu veranlassen, dass es ein Captivate-Portal gibt (das mich seltsamerweise zu captivate.Apple.com weiterleitet, das mir meine Standard-URL anzeigt).

Vielleicht hilft Ihnen dies, die zugrunde liegenden Linux-Systemkomponenten zu beurteilen, die Sie zur Implementierung von etwas Ähnlichem benötigen. Entschuldigung, Ihre Frage wird nicht vollständig beantwortet.

0
MrMesees