Auf CentOS Linux, wie verwalten Sie die Begrenzung (Limitierer)? Ist sie immer deaktiviert oder aktiv?
sobes.tech KI
Antwort von AI
SeLinux (Security-Enhanced Linux) ist ein Mechanismus zur obligatorischen Zugriffskontrolle (MAC). Standardmäßig ist es aktiviert und läuft in einem der folgenden Modi:
- Enforcing: Durchsetzung von Sicherheitsrichtlinien. Jede verbotene Operation wird blockiert.
- Permissive: Verbote Operationen nicht, sondern erzeugt Warnungen und protokolliert sie.
- Disabled: SeLinux ist vollständig deaktiviert.
In der Praxis versuche ich, SeLinux im Enforcing-Modus auf Produktionsservern aktiv zu halten. Dies fügt eine zusätzliche Sicherheitsebene hinzu. Das Deaktivieren von SeLinux ist eine extreme Maßnahme, die nur zur Fehlerbehebung oder in spezifischen, vollständig kontrollierten Umgebungen angewendet wird.
Zur Verwaltung von SeLinux verwende ich folgende Befehle:
- Überprüfung des aktuellen Status und Modus:
sestatus # SeLinux-Status und aktueller Modus - Wechsel zwischen Modi (ohne Neustart):
setenforce 0 # Permissiver Modus setenforce 1 # Enforcing-Modus - Änderung des Standardmodus (erfordert Neustart), Bearbeitung von
/etc/selinux/config:nano /etc/selinux/config # Ändern von SELINUX=enforcing zu permissive oder disabled - Verwaltung von booleschen Einstellungen (erlauben oder verbieten bestimmte Richtlinien):
getsebool -a # Alle Boolean auflisten setsebool -P <boolean_name> on/off # Boolean dauerhaft setzen (-P)
Bei der Konfiguration neuer Dienste oder Anwendungen, die mit der aktuellen SeLinux-Politik nicht kompatibel sind, bevorzuge ich es, eine lokale Politik (Modul) zu erstellen/aktualisieren, anstatt SeLinux vollständig zu deaktivieren. Dies ist ein sichererer Ansatz.
Schritte zur Erstellung einer lokalen Politik:
- Notwendige Utilities installieren:
yum install policycoreutils policycoreutils-python - SeLinux in den
Permissive-Modus versetzen, um Verstöße zu überwachen:setenforce 0 - Die Aktionen ausführen, die Verstöße verursachen.
- Eine Politik basierend auf den Logs
audit.loggenerieren:
wobeigrep <service_name> /var/log/audit/audit.log | audit2allow -M my_service_policy<service_name>der Name des Dienstes ist, der Verstöße verursacht. - Die generierte Politik installieren:
semodule -i my_service_policy.pp - SeLinux wieder in den
Enforcing-Modus versetzen:setenforce 1
Auf diese Weise ist meine Strategie, SeLinux im Enforcing-Modus zu verwenden und es bei Bedarf anzupassen.