GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

Grundlegendes zu SELinux-Richtlinien in Linux

Die SELinux-Richtlinie beschreibt die Zugriffsberechtigungen für alle Benutzer, Programme, Prozesse, Dateien und Geräte, auf die sie reagieren. SELinux implementiert eine von zwei verschiedenen Richtlinien:

  • Gezielt :Diese Standardrichtlinie wendet Zugriffskontrollen auf bestimmte (gezielte) Prozesse an.
  • MLS :Mehrstufige Sicherheit

Wählen Sie den Richtlinientyp aus der SELinux-GUI aus oder legen Sie die SELINUXTYPE-Direktive in der Datei /etc/selinux/config fest. Beispiel:

# vim /etc/selinux/config
SELINUXTYPE=targeted

Mit der zielgerichteten Richtlinie werden zielgerichtete Prozesse in ihrer eigenen Domäne ausgeführt, die als eingeschränkte Domäne bezeichnet wird. In einer eingeschränkten Domäne sind die Dateien, auf die ein Zielprozess Zugriff hat, begrenzt. Wenn ein beschränkter Prozess von einem Angreifer kompromittiert wird, ist der Zugriff des Angreifers auf Ressourcen und der mögliche Schaden, den er anrichten kann, ebenfalls begrenzt. SELinux verweigert den Zugriff auf diese Ressourcen und protokolliert die Verweigerung.

Nur bestimmte Dienste werden in diese unterschiedlichen Sicherheitsdomänen platziert, die durch die Richtlinie eingeschränkt werden. Beispielsweise läuft ein Benutzer in einer vollständig uneingeschränkten Domäne, während Dienste, die in einem Netzwerk auf Client-Anfragen lauschen, wie etwa named, httpd und sshd, in einer bestimmten, eingeschränkten Domäne ausgeführt werden, die auf seinen Betrieb zugeschnitten ist. Prozesse, die als Linux-Root-Benutzer ausgeführt werden und Aufgaben für Benutzer ausführen, wie z. B. die Anwendung passwd, sind ebenfalls eingeschränkt.

Nicht zielgerichtete Prozesse werden in einer uneingeschränkten Domäne ausgeführt. SELinux-Richtlinienregeln erlauben Prozessen, die in uneingeschränkten Domänen ausgeführt werden, fast den gesamten Zugriff. Wenn ein uneingeschränkter Prozess kompromittiert wird, hindert SELinux einen Angreifer nicht daran, Zugriff auf Systemressourcen und Daten zu erhalten. DAC-Regeln gelten weiterhin in einer uneingeschränkten Domäne. Im Folgenden finden Sie Beispiele für uneingeschränkte Domänen:

  • initrc_t-Domäne :Init-Programme werden in dieser uneingeschränkten Domäne ausgeführt.
  • kernel_t-Domäne :Unbegrenzte Kernel-Prozesse werden in dieser Domäne ausgeführt.
  • unconfined_t-Domäne :Am System angemeldete Linux-Benutzer werden in dieser Domäne ausgeführt.

Viele Domänen, die durch SELinux geschützt sind, haben Manpages, die beschreiben, wie ihre Richtlinien angepasst werden können. Die Konfiguration für jede Richtlinie wird in /etc/selinux/[SELINUXTYPE] installiert Verzeichnisse. Das folgende Beispiel zeigt eine teilweise Auflistung von /etc/selinux Verzeichnis mit installierten Ziel- und MLS-Richtlinien:

# ll -lrt /etc/selinux/
total 16
-rw-r--r--. 1 root root  546 Jan  1  2017 config
drwxr-xr-x. 2 root root    6 Aug  4  2017 tmp
-rw-r--r--. 1 root root 2321 Aug  4  2017 semanage.conf
drwxr-xr-x. 7 root root 4096 Feb 19 19:20 targeted
drwx------. 2 root root    6 Feb 19 19:20 final
drwxr-xr-x. 7 root root 4096 Mar  5 16:39 mls

Die Zielrichtlinie wird standardmäßig installiert, die MLS-Richtlinie jedoch nicht. Um die MLS-Richtlinie zu verwenden, installieren Sie das Paket selinux-policy-mls:

# yum install selinux-policy-mls
Leitfaden für Anfänger zu SELinux
So deaktivieren oder setzen Sie SELinux in den Permissive-Modus
So überprüfen Sie, ob SELinux aktiviert oder deaktiviert ist
So aktivieren/deaktivieren Sie SELinux-Modi in RHEL/CentOS
Was sind SELinux-Modi und wie man sie einstellt


Cent OS
  1. Linux-Berechtigungen 101

  2. Linux-Sicherheit:Manipulation von SELinux-Richtlinien mit Booleschen Werten

  3. Verständnis des sysfs-Dateisystems (/sys) in Linux

  4. Verständnis der rc-Skripte in Linux

  5. Linux-Betriebssystemdienst „setroubleshoot“

Grundlegendes zu Linux-Dateiberechtigungen

Host-Befehl unter Linux

Prozesse unter Linux verstehen

Was ist der Dokumentenstamm meiner Domain?

Grundlegendes zu Linux Multipath (dm-multipath)

sestatus-Befehlsbeispiele in Linux