Blockieren Sie den gesamten Nicht-HTTPS-Verkehr beim Surfen

366
Kidburla

Ich versuche, die Genehmigung einer Firewall-Regel von einem externen Windows-System in unser Firmennetzwerk einzuholen, um auf einen Proxy zuzugreifen, um wieder ins Internet zu gelangen. Meine Bedürfnisse beinhalten die Verwendung eines Webbrowsers, beispielsweise um Benutzername / Passwort anzugeben. Mein Unternehmen verlangt, dass alle Firewall-Regeln nur verschlüsselten Datenverkehr durchlaufen. Während der Transport zum Proxy selbst unverschlüsselt ist, haben die Genehmigenden klargestellt, dass die Pakete, die die Firewall durchlaufen, selbst verschlüsselt sind (z. B. Zugriff auf TLS-basierte Websites (HTTPS)), jedoch akzeptabel sind.

Meine Frage ist, wie kann ich sicherstellen, dass beim Surfen nur Anfragen mit HTTPS-Verkehr zulässig sind?

Die drastische Lösung ist nur zu verwenden, curlund / oder wgetmanuell die HTML - Parsing und Anfragen manuell basierend auf den Antworten zu senden, jedes Mal, um sicherzustellen, dass HTTPS verwendet wird. Abgesehen von der offensichtlichen Zeit, die dies in Anspruch nehmen würde, würde dies auch bedeuten, dass Javascript-aktivierte Seiten usw. nicht wie erwartet funktionieren würden.

Ich bin offen für eine Reihe von Lösungen wie:

  1. Firefox / Chrome-Plugins
  2. Einen lokalen Proxy (z. B. CNTLM) auf dem externen Computer ausführen, der nur an den Remote-Proxy weiterleitet, wenn die URL mit einem Muster übereinstimmt (ich habe mir das CNTLM-Handbuch angesehen, kann jedoch keine Befehlszeilen- oder Konfigurationsoptionen finden nur bestimmte URL-Muster zulassen)
  3. Verwendung eines speziellen Browsers, der diese Option bietet
  4. Gibt es eine Möglichkeit zum Konfigurieren eines Proxy-Tunnels (unter der Voraussetzung, dass er unter Windows verfügbar sein muss), der den Verkehr auf der einen Seite verschlüsselt und auf der anderen Seite entschlüsselt, ist dies alles nicht erforderlich

Beachten Sie, dass ich mich nicht um den Datenverkehr kümmern muss, der von anderen Anwendungen als meinem Webbrowser gesendet wird, da dies nur gilt, wenn ich den Proxy in dieser Anwendung speziell konfiguriert habe

0

1 Antwort auf die Frage

1
grawity

Gibt es eine Möglichkeit zum Konfigurieren eines Proxy-Tunnels (unter der Voraussetzung, dass er unter Windows verfügbar sein muss), der den Verkehr auf der einen Seite verschlüsselt und auf der anderen Seite entschlüsselt, ist dies alles nicht erforderlich

Ja - meistens würden Sie dafür ein VPN (wie IKEv2, OpenVPN oder ein anderes proprietäres Produkt) verwenden, da es den gesamten IP-Verkehr verschlüsselt und nicht nur auf HTTP beschränkt ist. Es ist üblich, dass Menschen in externen Netzwerken über VPN-Software eine Verbindung zum LAN ihres Unternehmens herstellen.

Es gibt auch eine Software, die einzelne TCP-Verbindungen über TLS tunnelt, z. B. Stunnel.

Ich würde vorschlagen, dass die Verwendung eines VPN oder eines anderen sicheren Transports die beste Methode ist, da dadurch die Richtlinie auf der Unternehmensseite erzwungen wird und Unfälle vermieden werden, z.

Auf der anderen Seite sichert das VPN in das Unternehmensnetzwerk nur den Datenverkehr zwischen Ihnen und dem Proxy, führt jedoch nicht durch, dass die vom Proxy weitergeleiteten Anforderungen sicher sind. (Ich weiß nicht, ob Ihre Politik über eingehende Verbindungen nur oder abgehend diejenigen, auch.) Wenn das ist eine Forderung, soll es auf dem Proxy selbst implementiert werden.

Firefox / Chrome-Plugins

Für die manuelle Konfiguration unterstützt Firefox separate Proxy-Server-Adressen für HTTP und HTTPS ("SSL"). Früher gab es Erweiterungen zur Konfiguration dieser Site.

Viele Browser unterstützen eine PAC-Datei, die eine benutzerdefinierte Logik für die Proxy-Auswahl basierend auf der URL aufweisen kann.

Für die VPN-Software müssen Sie normalerweise einen virtuellen Netzwerkadapter konfigurieren, den der gesamte Datenverkehr durchläuft. Leider habe ich keine Berechtigung, dies auf dem Quellsystem zu tun. Das Werkzeug "stunnel" klingt interessant; Können Sie uns näher erläutern, wie Sie dies mit einem Proxy einrichten können? muss "stunnel" sowohl auf meinem Quellsystem als auch im internen Netzwerk ausgeführt werden, in dem der Verschlüsselungstunnel endet? wie dann den Verkehr von dort an den Proxy weiterleiten? PS: danke auch für den tipp über FF einstellungen; Ich glaube, das könnte funktionieren, obwohl es nicht so robust ist (wie Sie sagten) Kidburla vor 5 Jahren 0
Grundsätzlich brauche ich einen lokalen Server, der auf meinem externen System ausgeführt wird und Clients (Software) als reinen HTTP-Proxy erscheint. Er nimmt dann empfangene Pakete an, verschlüsselt sie und sendet sie an das interne Netzwerk, wo sie von einem anderen Programm entschlüsselt werden sie und leitet sie an den "echten" Proxy weiter. Ich kann in der "stunnel" -Dokumentation nicht finden, wie sie so eingerichtet wird, dass sie wie ein einfacher HTTP-Proxy aussieht. Normalerweise ist es so eingerichtet, dass es wie ein HTTPS-Webserver aussieht ... Kidburla vor 5 Jahren 0
stunnel "sieht nicht aus" _allthing_ - es ist für das Tunneln beliebiger TCP-Dienste, was an einem Ende durch das andere geht. Die Clients erhalten also nur das, was sich am anderen Ende befindet, HTTP, SMTP oder IRC. (Genauer gesagt: Stunnel fügt einfach TLS hinzu bzw. entfernt sie. Daher benötigen Sie eine Konfiguration, die TLS auf der Proxy-Seite hinzufügt, und eine Konfiguration, die TLS auf der Clientseite entfernt.) grawity vor 5 Jahren 0