Die Rolle von SELinux: 1. Bietet verbesserte Sicherheit für das Linux-System durch Verwendung der MAC-Steuerung für Prozesse und Dateiressourcen. 2. Gewährt dem Subjekt minimale Zugriffsrechte, um die Zugänglichkeit von Dienstprozessen in den Systemressourcen zu minimieren, was das verhindern kann 3. Jeder Prozess hat seinen eigenen Laufbereich und jeder Prozess läuft nur in seiner eigenen Domäne und kann nicht auf andere Prozesse und Dateien zugreifen. 4. SELinux kann Programme maximieren, um die Aktivität von Schadcode in Linux-Systemen zu begrenzen .
Die Betriebsumgebung dieses Tutorials: Linux7.3-System, Dell G3-Computer.
SELinux, die Abkürzung für Security Enhanced Linux, also sicherheitsverstärktes Linux, wurde gemeinsam von der US-amerikanischen National Security Agency (NSA) und anderen Sicherheitsbehörden (wie SCC) entwickelt, um die Sicherheit des traditionellen Linux-Betriebssystems zu verbessern . Lösen Sie verschiedene Berechtigungsprobleme im DAC-System (Discretionary Access Control) in herkömmlichen Linux-Systemen (z. B. übermäßige Root-Berechtigungen usw.).
Für SELinux können Anfänger es auf diese Weise verstehen. Es handelt sich um ein Funktionsmodul, das unter Linux bereitgestellt wird, um die Systemsicherheit zu verbessern.
Traditionelle Linux-Systemsicherheit nutzt DAC (Discretionary Access Control), während SELinux ein in Linux-Systemen eingesetztes Sicherheitserweiterungsfunktionsmodul ist, das MAC (Mandatory Access Control) für Prozess- und Dateiressourcen verwendet.
Die Hauptaufgabe von SELinux
bietet verbesserte Sicherheit für Linux-Systeme durch die Verwendung der MAC-Steuerung (mandatory access control) von Prozess- und Dateiressourcen.
Minimieren Sie die für den Serviceprozess im System zugänglichen Ressourcen (Prinzip der geringsten Rechte).
Es gewährt dem Subjekt (Benutzer oder Prozess) die geringsten Zugriffsrechte, was bedeutet, dass jedes Subjekt nur einen begrenzten Satz an Berechtigungen erhält, die zum Ausführen der relevanten Aufgaben erforderlich sind. Durch die Gewährung der geringsten Zugriffsrechte können Sie verhindern, dass ein Prinzipal andere Benutzer oder Prozesse beeinträchtigt.
Während des SELinux-Verwaltungsprozesses verfügt jeder Prozess über einen eigenen Laufbereich (Domäne genannt). Jeder Prozess läuft nur in seiner eigenen Domäne und kann nicht auf andere Prozesse und Dateien zugreifen, es sei denn, es werden spezielle Berechtigungen erteilt.
SELinux kann Schadcode-Aktivitäten in Linux-Systemen so weit wie möglich einschränken.
Erweiterte Kenntnisse:
Grundlegende Konzepte von SELinux:
1. Betreff: Es ist der Prozess, der auf Datei- oder Verzeichnisressourcen zugreifen möchte. Um Ressourcen zu erhalten, ist der grundlegende Prozess wie folgt: Der Benutzer ruft einen Befehl auf, der Befehl generiert einen Prozess und der Prozess greift auf die Datei- oder Verzeichnisressource zu. In einem diskretionären Zugriffskontrollsystem (Linux-Standardberechtigungen) ist das durch Berechtigungen kontrollierte Subjekt der Benutzer; in einem obligatorischen Zugriffskontrollsystem (SELinux) ist das durch Richtlinienregeln kontrollierte Subjekt der Prozess.
2. Objekt: Dieses Konzept ist relativ klar, es ist die Datei- oder Verzeichnisressource, auf die zugegriffen werden muss.
3. Richtlinie: Es gibt eine große Anzahl von Prozessen und Dateien im Linux-System, daher ist die Anzahl der SELinux-Regeln, die den Zugriff von Prozessen auf Dateien einschränken, noch umständlicher, wenn jede Regel manuell vom Administrator festgelegt werden muss. dann wird die Benutzerfreundlichkeit von SELinux extrem gering sein. Glücklicherweise müssen wir die Regeln nicht manuell definieren. SELinux definiert standardmäßig zwei Richtlinien. Rufen Sie einfach die Richtlinie auf und sie können normal verwendet werden. Die beiden Standardrichtlinien lauten wie folgt:
-targeted: Dies ist die Standardrichtlinie von SELinux. Diese Richtlinie beschränkt hauptsächlich Netzwerkdienste und hat nur sehr wenige Einschränkungen für das lokale System. Diese Strategie reicht uns.
-mls: Mehrstufige Sicherheitsschutzstrategie, diese Strategie ist restriktiver.
4. Sicherheitskontext: Jeder Prozess, jede Datei und jedes Verzeichnis verfügt über einen eigenen Sicherheitskontext. Ob der Prozess auf die Datei oder das Verzeichnis zugreifen kann, hängt davon ab, ob der Sicherheitskontext übereinstimmt. Wenn der Sicherheitskontext des Prozesses mit dem Sicherheitskontext der Datei oder des Verzeichnisses übereinstimmt, kann der Prozess auf die Datei oder das Verzeichnis zugreifen. Um festzustellen, ob der Sicherheitskontext eines Prozesses mit dem Sicherheitskontext einer Datei oder eines Verzeichnisses übereinstimmt, müssen Sie sich natürlich auf die Regeln in der Richtlinie verlassen. Wir müssen zum Beispiel einen Partner finden, Männer können als Subjekt betrachtet werden und Frauen als Zielscheibe. Ob ein Mann eine Frau verfolgen kann (ob das Subjekt auf das Ziel zugreifen kann), hängt hauptsächlich davon ab, ob die Persönlichkeiten der beiden Personen zueinander passen (ob die Sicherheitskontexte des Subjekts und des Ziels übereinstimmen). Ob die Persönlichkeiten zweier Personen jedoch geeignet sind, muss anhand spezifischer Bedingungen wie Lebensgewohnheiten, Verhalten, familiärem Umfeld usw. beurteilt werden. (Ob der Sicherheitskontext übereinstimmt, muss anhand der Regeln in der Richtlinie festgestellt werden).
SELinux-Arbeitsmodus
SELinux bietet drei Arbeitsmodi: Deaktiviert, Zulässig und Erzwingend, und jeder Modus bietet unterschiedliche Vorteile für die Linux-Systemsicherheit.
1. Arbeitsmodus deaktivieren (Aus-Modus)
Im Deaktivierungsmodus ist SELinux ausgeschaltet und die Standard-DAC-Zugriffskontrollmethode wird verwendet. Dieser Modus ist in Umgebungen nützlich, die keine erhöhte Sicherheit erfordern.
Wenn beispielsweise eine laufende Anwendung aus Ihrer Sicht einwandfrei funktioniert, aber eine große Anzahl von SELinux AVC-Ablehnungsmeldungen generiert, kann es sein, dass dadurch die Protokolldatei überfüllt wird und das System unbrauchbar wird. In diesem Fall besteht die einfachste Lösung darin, SELinux zu deaktivieren. Sie können jedoch auch den richtigen Sicherheitskontext für die Dateien festlegen, auf die Ihre Anwendung zugreift.
Beachten Sie, dass Sie vor dem Deaktivieren von SELinux überlegen müssen, ob SELinux erneut auf dem System verwendet werden darf. Wenn Sie sich entscheiden, es in Zukunft auf „Erzwingend“ oder „Zulässig“ zu setzen, wird das System automatisch SELinux passieren Beim nächsten Mal wird die Datei neu verarbeitet.
Das Ausschalten von SELinux ist ebenfalls sehr einfach. Bearbeiten Sie einfach die Konfigurationsdatei /etc/selinux/config und ändern Sie SELINUX= im Text in SELINUX=disabled. Nach dem Neustart des Systems wird SELinux deaktiviert.
2. Permissiver Arbeitsmodus (permissiver Modus)
Im permissiven Modus ist SELinux aktiviert, aber Sicherheitsrichtlinienregeln werden nicht durchgesetzt. Wenn Sicherheitsrichtlinienregeln den Zugriff verweigern sollten, ist der Zugriff dennoch zulässig. Es wird jedoch eine Meldung an die Protokolldatei gesendet, dass der Zugriff verweigert werden sollte.
Der SELinux-Permissive-Modus wird hauptsächlich in den folgenden Situationen verwendet:
Überprüfen Sie die aktuellen SELinux-Richtlinienregeln.
Testen Sie neue Anwendungen, um die Auswirkungen der Anwendung von SELinux-Richtlinienregeln auf diese Programme zu sehen ein bestimmter Dienst oder eine bestimmte Anwendung funktioniert unter SELinux nicht mehr ordnungsgemäß.
In einigen Fällen kann der Befehl audit2allow verwendet werden, um das SELinux-Überwachungsprotokoll zu lesen und neue SELinux-Regeln zu generieren, um verweigerte Verhaltensweisen selektiv zuzulassen. Dies ist auch eine Möglichkeit, Anwendungen zuzulassen, ohne SELinux zu deaktivieren Systeme.
3. Erzwingender Arbeitsmodus (Erzwingungsmodus)
Wie Sie am Namen dieses Modus erkennen können, wird SELinux im Erzwingungsmodus gestartet und alle Sicherheitsrichtlinienregeln werden durchgesetzt.
Verwandte Empfehlungen: „
Linux-Video-TutorialDas obige ist der detaillierte Inhalt vonWas nützt Selinux unter Linux?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!