Zum Inhalt springen

Linux/SELinux/02 Installation: Unterschied zwischen den Versionen

Aus Foxwiki
Zeile 6: Zeile 6:


; Paketen (Grundkonfiguration)
; Paketen (Grundkonfiguration)
* selinux-basics
* [[selinux-basics]]
* selinux-policy-default
* [[selinux-policy-default]]
* auditd
* [[auditd]]


=== AppArmor entfernen ===
=== AppArmor entfernen ===
Auf vielen Debian-Systemen wir bereits [[AppArmor]]
Fall [[AppArmor]] installiert ist sollte dies entfernt werden, um Konflikte zu vermeiden
* Dies muss entfernt werden, um Konflikte zu vermeiden


<syntaxhighlight lang="bash" highlight="1" copy>
<syntaxhighlight lang="bash" highlight="1" copy>

Version vom 12. Juni 2026, 11:48 Uhr

Linux/SELinux/02 Installation - SELinux installieren

Installation (Debian)

Standardkernel von Debian enthalten SELinux-Unterstützung

Paketen (Grundkonfiguration)

AppArmor entfernen

Fall AppArmor installiert ist sollte dies entfernt werden, um Konflikte zu vermeiden

sudo apt purge apparmor
sudo reboot

SELinux installieren

sudo apt install selinux-basics selinux-policy-default auditd newrole attr
Installiere:
attr  auditd  newrole  selinux-basics  selinux-policy-default

Installiere Abhängigkeiten:
checkpolicy  libauparse0t64  policycoreutils  selinux-utils

Vorgeschlagene Pakete:
audispd-plugins  logcheck  syslog-summary

Empfohlene Pakete:
policycoreutils-python-utils  setools

Zusammenfassung:
Aktualisiere: 0, Installiere: 9, Entferne: 0, Aktualisiere nicht: 0
Herunterlade-Größe: 4.074 kB
Benötigter Platz: 8.594 kB / 31,7 GB verfügbar

Fortfahren? [J/n]
selinux-policy-default

Das Paket selinux-policy-default liefert die Standardregeln für Debian

  • Diese Policy beschränkt standardmäßig primär exponierte Systemdienste
  • Benutzer-Sessions laufen in der Voreinstellung meist weitgehend unconfined

SELinux aktivieren

SELinux wird über Kernel-Parameter aktiviert

Dazu wird die GRUB-Konfiguration angepasst

sudo vi /etc/default/grub

In GRUB_CMDLINE_LINUX und GRUB_CMDLINE_LINUX_DEFAULT folgende Parameter ergänzen

selinux=1 security=selinux
GRUB aktualisieren
sudo update-grub

Dateisystem neu labeln

Damit vorhandene Dateien und Verzeichnisse korrekte SELinux-Labels erhalten, wird eine vollständige Relabel-Operation für den nächsten Systemstart vorgemerkt:

sudo touch /.autorelabel
sudo reboot
Standardmäßig läuft SELinux im permissiven Modus

Funktion prüfen

SELinux-Status anzeigen

getenforce
Permissive
sestatus
SELinux status:                 enabled
SELinuxfs mount:                /sys/fs/selinux
SELinux root directory:         /etc/selinux
Loaded policy name:             default
Current mode:                   permissive
Mode from config file:          permissive
Policy MLS status:              enabled
Policy deny_unknown status:     allowed
Memory protection checking:     actual (secure)
Max kernel policy version:      33

Nach dem Neustart kann geprüft werden, ob SELinux Zugriffe blockiert hat

Solche Ereignisse erscheinen als AVC-Denials im Audit-Log

sudo grep AVC /var/log/audit/audit.log
AVC-Denials

Meldungen, in denen SELinux eine angeforderte Operation eines Prozesses auf ein Objekt verweigert hat

  • enthalten unter anderem den Quellkontext (scontext), den Zielkontext (tcontext) und die Objektklasse (tclass)

Installation (RHEL)

Vollständigen Installation von Red Hat Enterprise Linux

SELinux-Pakete sind standardmäßig installiert

Minimalinstallation im Textmodus

Nicht installiert

  • policycoreutils-python
  • policycoreutils-gui

Modus

Außerdem läuft SELinux standardmäßig SELinux im Enforcing-Modus und die SELinux-Targeted-Policy wird verwendet

Zusätzliche SELinux-Pakete

Pakete Beschreibung
policycoreutils Dienstprogramme wie restorecon, secon, setfiles, semodule, load_policy und setsebool für den Betrieb und die Verwaltung von SELinux
selinux-policy Grundlegende Verzeichnisstruktur, die Datei selinux-policy.conf und RPM-Makros
selinux-policy -targeted SELinux-Targeted-Richtlinie
libselinux API für SELinux-Anwendungen
libselinux-utils Dienstprogramme avcstat, getenforce, getsebool, matchpathcon, selinuxconlist, selinuxdefcon, selinuxenabled und setenforce
libselinux-python Python-Bindungen für die Entwicklung von SELinux-Anwendungen
Standardmäßig nicht installiert

Installation durch

yum install <package-name>
Pakete Beschreibung
selinux-policy-devel Dienstprogramme zum Erstellen einer benutzerdefinierten SELinux-Richtlinie und von Richtlinienmodulen
selinux-policy-doc Handbuchseiten, die beschreiben, wie SELinux zusammen mit verschiedenen Diensten konfiguriert wird
selinux-policy-mls MLS-SELinux-Richtlinie (Multi-Level Security)
setroubleshoot-server übersetzt Ablehnungsmeldungen, die bei einer Zugriffsverweigerung durch SELinux ausgegeben werden, in detaillierte Beschreibungen, die mit dem ebenfalls in diesem Paket enthaltenen Dienstprogramm sealert angezeigt werden können
setools-console Tresys Technology SETools-Distribution, eine Reihe von Dienstprogrammen und Bibliotheken zur Analyse und Abfrage von Richtlinien, zur Überwachung und Berichterstellung von Audit-Protokollen sowie zur Verwaltung von Dateikontexten
setools Metapaket für SETools
setools-gui Dienstprogramme apol und seaudit bereit
setools-console Befehlszeilen-Dienstprogramme sechecker, sediff, seinfo, sesearch und findcon bereit
  • Beachten Sie, dass die Pakete setools und setools-gui nur verfügbar sind, wenn der Red Hat Network Optional-Kanal aktiviert ist
mcstrans mcstrans übersetzt Stufen wie s0-s0:c0.c1023 in eine besser lesbare Form wie SystemLow-SystemHigh
policycoreutils-python Dienstprogramme wie semanage, audit2allow, audit2why und chcat zum Bedienen und Verwalten von SELinux
policycoreutils-gui stellt system-config-selinux bereit, ein grafisches Dienstprogramm zur Verwaltung von SELinux