Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 7537|Antwort: 4

Verbot von Docker-Containern, auf das Internet zuzugreifen (Extranet)

[Link kopieren]
Veröffentlicht am 14.12.2022, 22:53:18 | | | |
Anforderungen: Ein privates Home-Album-System wurde mit Docker-Containern gebaut, das auf Zugriff und Anzeigen im Heim-LAN beschränkt ist, da das Docker-Image von einem Drittanbieter entwickelt wurde und ich nicht weiß, ob es eine Sicherheitssituation darstellen wirdDatenschutzverletzungen erzeugenUm dieses Problem besser zu lösen, möchten wir eine Datenschutzgarantie hinzufügen, indem wir Docker-Containern den Zugriff auf das Internet (externes Netzwerk) verbieten.

CentOS 7 verbietet einer IP den Zugriff auf den Server
https://www.itsvse.com/thread-10264-1-1.html

Die iptables Firewall erlaubt nur bestimmten IPs den Zugriff auf bestimmte Ports und bestimmte Webseiten
https://www.itsvse.com/thread-2535-1-1.html

CentOS7 View verwenden und die Firewall deaktivieren
https://www.itsvse.com/thread-7771-1-1.html

Dieser Artikel verwendet ein CentOS7-System, Docker-Version: 20.10.20, und verwendet nginx-Bilder zur Bereitstellung von Tests.

Internetzugang (Extranet) ist standardmäßig erlaubt

Erstellen Sie einen neuen nginx-Container, der Webdienste bereitstellt, auf die von18080 Portzugang: Der Container kann standardmäßig auf das Internet (externes Netzwerk) zugreifen, der Befehl lautet wie folgt:

Betreten Sie den Container und fordern Sie die Ressourcen dieser Seite über den Curl-Befehl an, der wie in der untenstehenden Abbildung gezeigt werden kann, wie in der folgenden Abbildung gezeigt:



Deaktivieren von Docker-Containern am Internetzugang (Extranet)

Zuerst müssen wir ein benutzerdefiniertes Netzwerk über Docker erstellen und eine virtuelle Netzwerkkarte mit folgendem Befehl erstellen:



Setzen Sie eine Regel auf der virtuellen NIC über iptables, um den Zugang zum Internet mit folgendem Befehl zu verbieten:

Unabhängig davon, ob der iptables-Dienst verfügbar ist oder nicht, unabhängig davon, ob die Firewall aktiviert ist oder nicht,IPTables-Regeln, die per Befehl hinzugefügt wurden, treten sofort in Kraft!!!

Hinweis: Dieser Plan ist angemessenWenn verschiedene Container sich mit demselben Netzwerk verbinden, können die Container nicht miteinander kommunizieren!!!!

Schauen Sie sich die DOCKER-USER-Regel an, wie unten gezeigt:



Erstelle erneut einen neuen nginx-Container, der Container stellt den Webservice bereit, und der18081 Der Port stellt Dienste für die Außenwelt bereit, und dem Container ist der Zugang zum Internet (öffentliches Netzwerk) verboten; der Befehl lautet wie folgt:



Wir haben unser Ziel erreicht, aber,Nach dem Neustart des Servers verschwinden die in iptables erstellten RegelnWie können wir unsere benutzerdefinierten Regeln automatisch laden, nachdem der Server neu gestartet wurde?

Der Befehl iptables-save wird verwendet, um die iptables-Tabelle im Linux-Kernel an einen Standardausgabeanbieter zu exportieren, wobei üblicherweise die I/O-Umleitungsfunktion in der Shell verwendet wird, um die Ausgabe in eine bestimmte Datei zu speichern.

Speichere die bestehende iptables-Regel

Füge die Restore iptables-Regel zum Boot-Boot hinzu, die Boot-Boot-Datei ist /etc/rc.d/rc.local, bearbeite die Datei und füge am Ende folgenden Befehl hinzu:

Fügen Sie schließlich die Ausführungsberechtigung mit folgendem Befehl hinzu:

Nachdem die Einstellungen abgeschlossen sind, treten die iptables-Regeln auch dann in Kraft, wenn der Server neu gestartet wird.

Alle Container in Docker dürfen nicht auf das Internet zugreifen (Extranet),Nicht getestet, lautet der Befehl wie folgt:

(Ende)






Vorhergehend:Die Asset-Datei "project.assets.json" kann nicht gefunden werden. Führe NuGet-Paketwiederherstellung durch...
Nächster:BBR vs BBRplus vs BBR2 Allgemeine Netzwerkgeschwindigkeitsvergleich
Veröffentlicht am 16.12.2022, 21:14:15 |
Lerne es
 Vermieter| Veröffentlicht am 2.1.2023, 17:43:19 |
Der Fall ist wie folgt:

【Praktischer Kampf】Baue ein privates Gitea-Git-Repository mit weichem Routing
https://www.itsvse.com/thread-10403-1-1.html


Veröffentlicht am 07.04.2023, 18:55:08 |
Diese Funktion ist sehr wichtig, komm und lerne sie dir
Veröffentlicht am 21.4.2023, 12:00:24 |
Danke fürs Teilen, habe ich gelernt.
Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com