Was soll ich mit Docker tun, wenn eine Sicherheitslücke im Linux-Kernel gefunden wurde?

Was soll ich mit Docker tun, wenn eine Sicherheitslücke im Linux-Kernel gefunden wurde?

Nehmen wir an, ich habe einen Ubuntu-Hostcomputer, auf dem Docker läuft.

Dieser Host enthält viele laufende Container, die viele verschiedene Basis-Images ( FROM) verwenden, wie etwa Ubuntu, Alpine, Java:8 …

Dieser Host enthält auch einige von Hand erstellte Bilder.

Heute kann ich alle meine Container anhalten und entfernen und sie dann alle erneut erstellen. Keines der Images speichert Daten (ich übergebe keine Container). Daher ist der Verlust meiner Daten kein Problem. Auch das erneute Hochfahren meiner Dienste sollte kein Problem sein, solange die Images gleich bleiben.

Angenommen, es wurde eine Sicherheitslücke im Linux-Kernel gefunden.

Ich habe mein Host-Betriebssystem aktualisiert, sodass der Host nicht mehr anfällig ist. Docker-Container verwenden zum Ausführen den Kernel des Hosts, aber ist das ausreichend? Welche Überlegungen und Maßnahmen sollte ich ergreifen, um sicherzustellen, dass meine Container nicht von der Sicherheitsanfälligkeit betroffen sind?

Antwort1

Da Docker-Container den Host-Kernel verwenden, treten mit den Containern keine Probleme mehr auf, sobald der Host-Kernel aktualisiert ist.

Probleme mit Bibliotheken sind eine andere Geschichte. OpenSSL ist beispielsweise eine Bibliothek, die in Containern und auf dem Host unterschiedlich sein kann und aktualisiert werden sollte.

Es empfiehlt sich, apt-get update && apt-get -q -y upgradeam Anfang Ihrer Docker-Datei ein einzufügen. Sie sollten Ihre Images also regelmäßig erstellen.

Wenn Sie offizielle Images verwenden, empfiehlt es sich, regelmäßig einen Pull durchzuführen, um Ihre Container zu aktualisieren. Wenn Sie Docker-Compose verwenden:

docker-compose pull && docker-compose up -d

Dadurch werden sie aktualisiert. Für einfaches Docker müssen Sie einen Pull durchführen. Löschen Sie den Container und erstellen Sie einen neueren, der auf dieselben Volumes verweist:

docker pull image
docker stop containerid && docker rm containerid
docker run image ....

Grüße

verwandte Informationen