Best Practices für die Sicherheit – Erstellen Sie einen robusten Docker-Container

Sichern Sie Ihren Docker Container…


Docker hat einen langen Weg zurückgelegt und ist stets bestrebt, ein hochfunktionelles und dennoch sicheres Produkt zu entwickeln, das die besten Praktiken hervorbringt und auf Schwachstellen oder Probleme in hohem Maße reagiert.

Seit seiner Gründung hat Docker gegenüber dem Vorjahr einen deutlichen Anstieg seiner Einführung verzeichnet. Bei sorgfältiger Einrichtung ohne ein Element der Unwissenheit wird Docker zu einem leistungsstarken Aktivposten, für den Sie zweifellos für Ihre IT-Praktiken bürgen würden.

Die Verantwortung für die Sicherung Ihrer Containerumgebung liegt nicht nur in der Sicherung der Container oder der Server, auf denen sie letztendlich ausgeführt werden, sondern muss auch so strategisiert werden, dass alle winzigen Aktionen vom Abrufen des Container-Images aus einer Registrierung bis zum Push des Containers ausgeführt werden in die Produktionswelt.

Da die Container normalerweise als Teil des CI / CD-Frameworks mit der DevOps-Geschwindigkeit bereitgestellt werden, müssen unbedingt mehr Aufgaben automatisiert werden, um die Effizienz, Produktivität, Prüfung / Protokollierung und damit die Behandlung von Sicherheitsproblemen zu verbessern.

Im Folgenden finden Sie einen Überblick über die sicherheitsrelevanten Best Practices, die Sie bei der Einführung von Docker beachten sollten.

Authentisches Docker-Image

Oft haben Entwickler die Basis-Docker-Images verwendet, anstatt sie von Grund auf neu zu erstellen. Das Herunterladen dieser Bilder aus nicht vertrauenswürdigen Quellen kann jedoch zu Sicherheitslücken führen.

Es ist daher undurchlässig, die Echtheit vor dem Herunterladen des Bildes zu überprüfen, indem Sie die folgenden Vorsichtsmaßnahmen treffen:

  • Verwenden des Basisimages aus vertrauenswürdigen Quellen wie dem Docker Hub mit Bildern, die von den Sicherheits-Scan-Diensten des Dockers gescannt und überprüft werden.
  • Verwenden des von Docker Content Trust digital signierten Basisimages, das vor Fälschungen schützt.

Autorisierter Zugriff

Bei der Arbeit in großen Teams ist es wichtig, die rollenbasierte Zugriffssteuerung (RBAC) für Ihren Docker-Container-Stack zu konfigurieren. Große Unternehmen verwenden Verzeichnislösungen wie Active Directory, um den Zugriff und die Berechtigungen für Anwendungen im gesamten Unternehmen zu verwalten.

Es ist wichtig, eine gute Zugriffsverwaltungslösung für Docker zu haben, die es den Containern ermöglicht, mit minimalen Berechtigungen und Zugriff zu arbeiten, die für die Erledigung der Aufgabe erforderlich sind, was wiederum den Risikofaktor verringert.

Dies trägt dazu bei, die Skalierbarkeit mit der wachsenden Anzahl von Benutzern zu gewährleisten.

Sensibles Informationsmanagement

Laut der Hafenschwarm Dienste, Geheimnisse sind die sensiblen Daten, die nicht unverschlüsselt in Dockerfile oder im Quellcode der Anwendung übertragen oder gespeichert werden dürfen.

Geheimnisse sind vertrauliche Informationen wie Passwörter, SSH-Schlüssel, Token, TLS-Zertifikate usw. Geheimnisse werden während der Übertragung und in Ruhe in einem Docker-Schwarm verschlüsselt. Ein Geheimnis ist nur für die Dienste zugänglich, denen explizit Zugriff gewährt wurde, und nur, wenn diese Dienste ausgeführt werden.

Es ist unbedingt darauf zu achten, dass die Geheimnisse nur für die entsprechenden Container zugänglich sind und nicht auf Host-Ebene offengelegt oder gelagert werden.

Sicherheit auf Code- und Anwendungslaufzeit

Die Docker-Sicherheit beginnt auf Host-Ebene. Daher ist es wichtig, das Host-Betriebssystem auf dem neuesten Stand zu halten. Außerdem sollten die im Container ausgeführten Prozesse die neuesten Aktualisierungen aufweisen, indem die beste sicherheitsrelevante Codierungspraxis berücksichtigt wird.

Sie müssen hauptsächlich sicherstellen, dass die Container, die von Drittanbietern installiert werden, nichts herunterladen und zur Laufzeit ausführen. Alles, was ein Docker-Container ausführt, muss deklariert und in das statische Container-Image aufgenommen werden.

Namespace- und cgroups-Berechtigungen sollten optimal angewendet werden, um den Zugriff zu isolieren und zu steuern, was jeder Prozess ändern kann.

Container sind über Cluster hinweg miteinander verbunden, sodass ihre Kommunikation die Sichtbarkeit auf Firewalls und Netzwerk-Tools einschränkt. Die Nutzung der Nanosegmentierung kann hilfreich sein, um den Explosionsradius bei Angriffen zu begrenzen.

Komplettes Lifecycle Management

Die Containersicherheit hängt davon ab, wie Sie mit dem Containerlebenszyklus umgehen, der das Recht von der Erstellung, Aktualisierung bis zum Löschen von Containern umfasst. Die Container sollten als unveränderlich behandelt werden, anstatt den laufenden Container durch Aktualisierungen zu ändern oder zu aktualisieren, ein neues Image zu erstellen und diese Container gründlich auf Schwachstellen zu testen und die vorhandenen Container zu ersetzen.

Ressourcen begrenzen

Docker sind einfache Prozesse, da Sie mehr Container als virtuelle Maschinen ausführen können. Dies ist vorteilhaft, um die Hostressourcen optimal zu nutzen. Dies kann jedoch zu Sicherheitslücken wie der Verweigerung von Angriffen führen, die durch die Begrenzung der Systemressourcen behoben werden können, die einzelne Container über das Container-Framework wie Swarm verbrauchen können.

Überwachung der Containeraktivität

Wie in jeder anderen Umgebung ist es wichtig, die Benutzeraktivitäten in Ihrem Container-Ökosystem ständig aktiv zu überwachen, um böswillige oder verdächtige Aktivitäten zu identifizieren und zu beheben.

Überwachungsprotokolle müssen in die Anwendung integriert werden, um Ereignisse aufzuzeichnen, z. B. wann das Konto erstellt und aktiviert wurde, zu welchem ​​Zweck, wann das letzte Kennwort aktualisiert wurde und ähnliche Aktionen auf Organisationsebene.

Die Implementierung solcher Prüfpfade für jeden Container, den Sie für Ihr Unternehmen erstellen und bereitstellen, ist eine bewährte Methode, um einen böswilligen Eingriff zu identifizieren.

Fazit

Docker wurde von Natur aus unter Berücksichtigung der besten Sicherheitspraktiken entwickelt, sodass Sicherheit in Containern kein Problem darstellt. Aber es ist entscheidend, dass Sie niemals Ihre Wache loslassen und wachsam sein.

Wenn weitere Updates und Verbesserungen anstehen und diese Funktionen in die Praxis umgesetzt werden, können Sie sichere Apps erstellen. Durch die Nutzung der Containersicherheitsaspekte wie Containerbilder, Zugriffs- und Berechtigungsrechte, Containersegmentierung, Geheimnisse und Lebenszyklusmanagement in IT-Praktiken kann ein optimierter DevOps-Prozess mit minimalen Sicherheitsproblemen sichergestellt werden.

Wenn Sie Docker noch nicht kennen, ist dies möglicherweise für Sie von Interesse Online Kurs.

STICHWORTE:

  • Docker

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map