Container mit SELinux schützen

Auf dieser Seite wird gezeigt, wie Sie Ihre Container durch Aktivierung von SELinux schützen können. SELinux wird für Red Hat Enterprise Linux (RHEL) unterstützt. Wenn auf Ihren Hostmaschinen RHEL ausgeführt wird und Sie SELinux für Ihren Cluster aktivieren möchten, müssen Sie SELinux auf allen Ihren Hostmaschinen aktivieren. Ab der GKE on Bare Metal-Version 1.9.0 können Sie SELinux vor oder nach der Clustererstellung oder Clusterupgrades aktivieren oder deaktivieren. Wenn SELinux auf dem Host aktiviert ist, gilt es auch für die Containerlaufzeit.

Aktivierung von SELinux prüfen

SELinux ist unter RHEL standardmäßig aktiviert.

  • Führen Sie zur Überprüfung Folgendes aus:

    getenforce
    

Der Befehl gibt entweder Enforcing, Permissive oder Disabled zurück. Wenn der Befehl Enforcing zurückgibt, können Sie mit dem Upgrade fortfahren oder die Cluster erstellen.

SELinux aktivieren

Wenn der Befehl getenforce Permissive zurückgibt, können Sie mit dem Befehl setenforce in den Modus Enforcing wechseln. Bei einem Wechsel zwischen Permissive- und Enforcing-Modus mit setenforce ist kein Systemneustart erforderlich. Wenn Sie jedoch möchten, dass die Änderungen auch nach einem Neustart beibehalten werden, müssen Sie die Datei /etc/selinux/config aktualisieren.

  • Führen Sie diesen Befehl aus, um in den Enforcing-Modus zu wechseln:

    sudo setenforce 1 # temporary
    sudo sed -i 's/SELINUX=permissive/SELINUX=enforcing/g' /etc/selinux/config # persistent - after reboot
    

Wenn SELinux Disabled ist, aktivieren Sie es zuerst im Permissive-Modus und starten Sie dann das System neu, um zu prüfen, ob das System erfolgreich gestartet wird. Wenn keine SELinux-Fehler vorhanden sind, können Sie sicher auf SELinux in den Modus Enforcing wechseln.

  1. Optional: Aktivieren Sie SELinux im Permissive-Modus:

      sudo sed -i 's/SELINUX=disabled/SELINUX=permissive/g' /etc/selinux/config
      sudo reboot
    
  2. Wenn das System ohne SELinux-Fehler neu gestartet wird, können Sie den Enforcing-Modus aktivieren:

      sudo sed -i 's/SELINUX=disabled/SELINUX=enforcing/g' /etc/selinux/config
      sudo reboot
    

Sobald SELinux im Enforcing-Modus aktiviert ist, wird SELinux für alle Prozesse auf dem Host aktiviert, einschließlich der Containerlaufzeit.