Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Vertraut mit den drei Arbeitsmodi von SELinux

Vertraut mit den drei Arbeitsmodi von SELinux

WBOY
WBOYOriginal
2024-02-26 15:27:071034Durchsuche

Vertraut mit den drei Arbeitsmodi von SELinux

SELinux (Security-Enhanced Linux) ist ein Sicherheitsmodul, das Mandatory Access Control (MAC) in Linux-Systemen implementiert. Es erzwingt Sicherheitsrichtlinien, indem es Etiketten auf Systemobjekte (Dateien, Prozesse usw.) anwendet, um eine detailliertere Zugriffskontrolle zu ermöglichen. SELinux verfügt über drei Arbeitsmodi: Erzwingen, Freigeben und Deaktivieren. In diesem Artikel werden diese drei Modi ausführlich vorgestellt und spezifische Codebeispiele bereitgestellt.

1. Durchsetzungsmodus

Der Durchsetzungsmodus ist der sicherste und empfohlene Modus, der SELinux-Richtlinien durchsetzt und Verstöße ablehnt und protokolliert. Im Durchsetzungsmodus verweigert das System unbefugten Zugriff und generiert entsprechende Protokolldatensätze. Um den Erzwingungsmodus zu verstehen, können wir das folgende Codebeispiel durchgehen, um zu demonstrieren, wie man das SELinux-Label einer Datei festlegt und versucht, darauf zuzugreifen:

# 创建测试文件
touch testfile

# 查看文件的SELinux标签
ls -Z testfile

# 修改文件的SELinux标签为httpd_sys_content_t类型
chcon -t httpd_sys_content_t testfile

# 尝试访问文件
cat testfile

Im obigen Beispiel haben wir eine Datei mit dem Namen testfile erstellt und ihr SELinux-Label festgelegt zum Typ httpd_sys_content_t. Beim Versuch, diese Datei zu lesen, wird der Zugriff verweigert, da die Bezeichnung der Datei nicht mit der Bezeichnung des aktuellen Prozesses übereinstimmt.

2. Permissiver Modus

Der permissive Modus ermöglicht es Systemadministratoren, SELinux-Richtlinien zu testen, ohne tatsächlich Zugriffsanfragen abzufangen. Im Permissive-Modus protokolliert SELinux Zugriffsverletzungen, lehnt sie jedoch nicht ab. Dieser Modus wird normalerweise zum Debuggen und Testen neuer SELinux-Richtlinien verwendet. Hier ist ein Beispiel, das zeigt, wie Protokolldatensätze im Permissiv-Modus angezeigt werden:

# 查看当前SELinux模式
sestatus

# 切换SELinux模式为Permissive
setenforce 0

# 尝试访问被禁止的文件
cat /etc/shadow

# 查看SELinux日志记录
cat /var/log/audit/audit.log

Im obigen Beispiel schalten wir den SELinux-Modus auf Permissiv um und versuchen, die Datei /etc/shadow zu lesen, woraufhin die Protokolldatensätze Informationen anzeigen dass der Zugriff auf Informationen verboten ist, der tatsächliche Zugriff jedoch weiterhin gestattet ist.

3. Deaktivierter Modus

Der deaktivierte Modus deaktiviert SELinux vollständig und hebt alle mit SELinux verbundenen Zugriffskontroll- und Schutzmaßnahmen auf. Dies ist der am wenigsten empfohlene Modus, da dadurch die Sicherheit des Systems beeinträchtigt wird. Im deaktivierten Modus führt das System keine SELinux-Richtlinien aus und zeichnet keinen illegalen Zugriff auf. Hier ist ein Beispiel, das zeigt, wie SELinux deaktiviert wird:

# 查看当前SELinux模式
sestatus

# 禁用SELinux
setenforce 0

# 查看当前SELinux模式
sestatus

Im obigen Beispiel haben wir SELinux über den Befehl setenforce deaktiviert und über den Befehl sestatus überprüft, ob sich SELinux im deaktivierten Modus befindet.

Zusammenfassung: Das Verständnis der drei Arbeitsmodi von SELinux ist für die Systemsicherheit und Zugriffskontrolle von entscheidender Bedeutung. Der Erzwingungsmodus bietet das höchste Maß an Schutz, der Permissive-Modus wird zum Debuggen und Testen verwendet und der Disabled-Modus sollte vermieden werden, um die Systemsicherheit zu gewährleisten. Ich hoffe, dass die Leser durch die oben genannten spezifischen Codebeispiele ein tieferes Verständnis des Arbeitsmodus von SELinux und seiner Vor- und Nachteile erlangen können.

Das obige ist der detaillierte Inhalt vonVertraut mit den drei Arbeitsmodi von SELinux. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn