SELinux ist ein von der NSA entwickeltes Tool um Linux-Systeme abzusichern. Seid dem Jahr 2000 ist SELinux frei verfügbar und mittlerweile auch in den meisten Distributionen enthalten. Ich möchte die Funktionsweise von SELinux jetzt erklären, da es dazu bereits genügend Artikel/Bücher gibt. Ich beschreibe nachfolgend nur die einzelnen Schritte um unter Debian Wheezy SELinux mit einer Standard Richtlinie zu aktivieren-
Zu beachten ist, dass SELinux einen entsprechenden Kernel vorausgesetzt. Virtuelle Maschinen bieten diese Unterstützung i.d.R. nicht an!
Installiert werden müssen zwei Pakete:
apt-get install selinux-basics selinux-policy-default
Damit SELinux nicht nur passiv mit läuft, muss es in der Konfiguration expliziert "scharf" geschaltet werden:
/etc/selinux/config SELINUX=enforcing SELINUXTYPE=default
Ab Wheezy heißt es nicht mehr targeted , sondern default!
Nun kann SELinux selbst aktiviert werden:
selinux-activate reboot
Die Maschine bootet nun 2x, denn SELinux labelt das Dateisystem um es überwachen zu können. Hier ist zu beachten,
dass wenn die Maschine einmal mit deaktiviertem SELinux gestartet wurde, ein relabeln notwendig ist.
Nach dem reboot kann der Status von SELinux wie folgt geprüft werden:
check-selinux-installation
bzw.
sestatus
I.d.R. kommen bei check-selinux-installation einige Meldungen bei raus. Nachfolgend ist beschrieben,
wie zwei davon behoben werden können:
Meldung /etc/pam.d/login is not SELinux enabled
Es muss eine Zeile ergänzt werden.
vim /etc/pam.d/login session required pam_selinux.so multiple
Meldung # FSCKFIX is not enabled – not serious, but could prevent system from booting…
vim /etc/default/rcS FSCKFIX=yes
Probleme beim booten
Sollte es bei der Einrichtung von SELinux zu Problemen kommen, kann SELinux im Bootloader grub wie folgt deaktiviert werden
Im Grub Bootloader "e" drücken und die folgenden Parameter abändern
selinux=0 security=permissive
Dateisystem relabeln
Wurde das Linux-System einmal mit deaktiviertem SELinux gestartet, muss es erneut gelabelt werden
touch /.autorelabel reboot
Links