Wie kann ich in Linux den Datenverkehr zu bestimmten Webadressen zulassen, aber alle anderen einschränken?

Wie kann ich in Linux den Datenverkehr zu bestimmten Webadressen zulassen, aber alle anderen einschränken?

Ich möchte, dass mein Linux-Systemgerät (Ubuntu 14.04, 64 Bit), in das eine 3G-Karte eingesteckt ist, nur eingeschränkten Internetzugang hat. Ich möchte ein Szenario erstellen, in dem das System, wenn die Karte aktiv ist, mit jedem beliebigen URL mit dem Muster mysite.comund eine Verbindung herstellen kann google.com. Eingehende Verbindungen werden kein Problem darstellen. Wenn die Webadresse nicht gefiltert werden kann, kann auch die IP-Adresse verwendet werden.

Ist Iptables die Antwort darauf? Wie würden wir IP-Tabellen verwenden, um Regeln hinzuzufügen, die den Datenverkehr nur zu zwei Sites und nicht zu anderen zulassen? Ich möchte diesen Vorgang immer wieder durchführen (z. B. nach dem Einstecken oder Entfernen der Karte). Wie erreiche ich das gewünschte Ergebnis?

Antwort1

Ja, iptalbesist die Antwort für den Filterteil.

Um je nach Distribution bestimmte Regeln beim Einstecken des Gerätes zu aktivieren, kann man sich anschauen, udevwelche beispielsweise die Gerätebenennung und das Einstecken von USB-Sticks handhabt und ein spezielles Skript ausführen lassen.

Da Sie Ubuntu verwenden, wäre es einfacher, einen Blick auf zu werfen /etc/network/interfaces. Die 3G-Karte hätte einen festen Schnittstellennamen (dank udev), sodass interfacesSie in der Datei ein/einige Skripte für diese Schnittstelle angeben können pre-up, post-updie Ihre iptables-Konfiguration „on the fly“ anwenden.

verwandte Informationen