Ich bin dabei, einen Docker- Container nur für SFTP zu erstellen, der von mehreren Personen nur zum Hochladen und Verwalten von Dateien in ihrer eigenen chrootEd-Umgebung verwendet wird.
Auf dem Papier ist es ziemlich sicher: Ich deaktiviere jede Art der bashAnmeldung und führe keinen anderen Prozess darin aus. Ich würde es aber gerne noch etwas härter machen:
Ich möchte verhindern, dass dieser Container von innen auf das Internet zugreift, es sei denn, er dient als SFTP-Server.
Um es klar zu machen: Ich weiß, wie ich verhindern kann, dass die Außenwelt auf meinen Container zugreift. Ich kann eingehende iptablesRegeln einrichten und nur den SFTP-Port in meinem Docker-Ausführungsbefehl verfügbar machen.
Ich möchte jedoch den folgenden Befehl (als Beispiel) fehlschlagen lassen, wenn er im Container ausgeführt wird:
curl google.com
Meine Absicht ist es, den Schaden zu verringern, den ein gehackter Container anrichten kann (der nicht zum Versenden von Spam-E-Mails usw. verwendet werden kann).
--net=noneFlag docker runaktivieren, werden alle externen Netzwerkadapter deaktiviert, sodass Sie eigene Netzwerkverkehrsregeln hinzufügen und anpassen können.