‫Der erste ist im Grunde etwas zu lesen.
‫Wie dieses Oberteil geht es darum, sich die Grundausbildung für das zu
‫geben, was ... Wie
‫funktioniert Docker? Was ist grundlegende Sicherheit in Docker?
‫Wie schützt Docker überhaupt Ihren
‫Container? So etwas.
‫Ich habe im Grunde ein Produktionsgespräch, das Sie hier
‫sehen können. Das werden wir uns jetzt nicht ansehen.
‫Ich habe hier einen Link zum Docker-Sicherheitshandbuch.
‫Das Interessante an der Docker-Sicherheitsanleitung ist, dass es
‫nur darum
‫geht, wie die Docker-Sicherheit funktioniert.
‫Oder wie funktioniert Docker selbst?
‫Es gibt viel bessere Videos in meinem Kurs.
‫Ich habe dort Links zu anderen Referenzvideos eingefügt, die eine ganze Stunde
‫lang die Grundlagen von Docker widerspiegeln.
‫Die beiden wichtigsten Dinge, die Sie beachten müssen, sind
‫Kernel-Namespaces und Cgroups.
‫Namespaces geben einen guten
‫Überblick über die Funktionsweise dieses Materials.
‫Die Zusammenfassung hier ist, dass es zwei
‫Hauptfunktionen in Linux gibt, mit denen Docker überhaupt
‫möglich ist. Mit Kernel-Namespaces kann
‫der Kernel eine Anwendung oder
‫mehrere Anwendungen in einen Namespace aufnehmen.
‫Namespace schränkt im Wesentlichen ihre Ansicht, ihren
‫Zugriff auf Ressourcen oder das, was sie sehen,
‫ein, ob es sich um ein Netzwerk, andere Programme
‫im Speicher oder Dateien auf der Festplatte handelt, und beschränkt diesen
‫Bereich pro Programm.
‫So kann es für jedes einzelne Programm sein, und wir kennen
‫diese jetzt als Container. Da Namespaces
‫nicht Docker-spezifisch sind. Es war viel länger
‫als Docker. Es gibt es eigentlich
‫schon seit über einem Jahrzehnt als Konzept in verschiedenen Unix-Distributionen.
‫Wir haben das vielleicht in Solaris Jails oder anderen Technologien gehört,
‫die Sie im Grunde genommen glauben
‫ließen, Sie befänden sich auf
‫Ihrem eigenen Server, aber tatsächlich befanden Sie sich
‫in einem Server mit vielen anderen Personen und vielen
‫anderen Apps, richtig. Wir haben das in Linux und
‫Hosting-Plattformen sehr oft gemacht.
‫Namespaces ist diese Funktion. Es gibt Ihrem
‫Container eine eigene Netzwerkkarte. Es ist eine virtuelle Netzwerkkarte nur für diesen Container.
‫Es gibt ihm einen eigenen Dateibereich,
‫in dem der Rest des folgenden Dateisystems nicht
‫angezeigt wird, und es lässt nicht zu, dass andere Programme
‫außerhalb dieses Containers ausgeführt werden. Es geht also um den Zugang und die Sicht, richtig.
‫Das sind Namespaces.
‫Das funktioniert sofort.
‫So lässt Docker einen Container laufen, ohne alles andere auf
‫dem System zu sehen.
‫Die andere große Sache sind Kontrollgruppen, oder
‫wir nennen sie kurz Cgroups. Bei Kontrollgruppen geht
‫es hauptsächlich darum, die Ressourcennutzung zu begrenzen.
‫Sie können einem Container mitteilen, dass er nur Zugriff auf 1
‫GB RAM, eine CPU und so weiter hat.
‫Es erlaubt auch einige Metriken, in denen Sie Dinge um
‫dieses Zeug herum messen können, aber es geht
‫hauptsächlich darum, Ihren Container zu begrenzen. Denken Sie daran, dass
‫Ihre Container standardmäßig Zugriff auf alle Ressourcen haben können, da sie
‫den gesamten Dateibereich belegen, alle CPUs belegen
‫und den gesamten Arbeitsspeicher belegen können.
‫Dies ist nur ein Standardcontainer, aber Sie können
‫Optionen in docker run, in Swarm oder in
‫Kubernetes festlegen. Mit all diesen Dingen können
‫Sie Ressourcen steuern.
‫Aber es ist einfach nicht standardmäßig richtig. Standardmäßig erhält jeder
‫Container alles.
‫Wenn Sie in die Produktion gehen, ist dies definitiv
‫auf Ihrer To-Do-Liste. Ich würde nicht
‫sagen, dass Kontrollgruppen notwendigerweise ein Sicherheitsmerkmal sind, mit Ausnahme
‫einer bestimmten Anwendung, die alles aufnimmt, was sie
‫nicht sollte, und dann andere Dinge
‫nicht richtig ausführen kann.
‫Das ist nicht... Ich betrachte das nicht als direkte Sicherheit.
‫Ich betrachte dies als eine Art Teilaspekt der
‫Sicherheit, bei dem jemand technisch einen Denial-of-Service durchführen könnte,
‫indem Ihre App alle Ressourcen auf
‫Ihrem Server aufzehrt. Also, weißt du, so etwas.
‫Das sind die Grundlagen.
‫Sobald Sie die Grundlagen verstanden haben,
‫finden Sie hier einige gute Blog-Artikel zu verschiedenen
‫Arten von Sicherheitstools. Es gibt jede Menge
‫Werkzeuge, richtig. Ich werde heute nicht alle erwähnen.
‫Offensichtlich gibt es viele Dinge, aber viele von ihnen
‫sind kompliziert und nehmen Projekte in Angriff.
‫Sie müssen sie implementieren oder kaufen und dann Server für
‫sie reservieren, richtig.
‫Große Produkte rund um das Auditing
‫oder das Übergeben bestimmter
‫Ausweise wie PCI-Kreditkartensicherheit oder
‫behördliche Sicherheitsbestimmungen.