SELinux

SELinux (Security Enhanced Linux) auf Debian 10 Buster

SELinux (Security Enhanced Linux) auf Debian 10 Buster
SELinux ist ein Kennzeichnungssystem für Prozesse und Dateien.  Der Zugriff von gekennzeichneten Subjekten auf gekennzeichnete Objekte wird durch Regeln eingeschränkt, die Richtlinien bilden restricted. Dieses Tutorial ist eine Einführung in die Grundlagen von SELinux und zeigt, wie Sie SELinux unter Debian 10 Buster einrichten und aktivieren und es mit einigen zusätzlichen Informationen zu beliebten Befehlen aktivieren enable.

Bevor Sie beginnen, müssen Sie die folgenden Konzepte lernen:

Themen: Prozesse oder Benutzer.
Objekte: Dateien oder Dateisysteme.

Typdurchsetzung: Unter SELinux haben alle Subjekte und Objekte eine Typkennung, die mit _t . endet. “Type Enforcement ist die Vorstellung, dass in einem obligatorischen Zugangskontrollsystem der Zugang durch eine Freigabe auf der Grundlage eines Subjekt-Zugangs-Objekt-Regelwerks geregelt wird.

In SELinux wird die Typerzwingung basierend auf den Labels der Subjekte und Objekte implementiert.  SELinux selbst hat keine Regeln, die sagen /bin/bash ausführen können /bin/ls. Stattdessen gelten ähnliche Regeln wie „Prozesse mit dem Label user_t können reguläre Dateien mit der Bezeichnung bin_t ausführen“.“ (Quelle https://wiki.gentoo.org/wiki/SELinux/Type_enforcement)

Diskretionäre Zugriffskontrolle (DAC): DAC ist das Eigentums- und Berechtigungssystem, das wir in Linux verwenden, um den Zugriff auf Objekte wie Dateien oder Verzeichnisse zu verwalten. Die diskretionäre Zugriffskontrolle hat nichts mit SELinux zu tun und ist eine andere Sicherheitsschicht. Weitere Informationen zu DAC finden Sie unter Linux Permissions Explained.

Obligatorische Zugangskontrolle (MAC): ist eine Art der Zugriffskontrolle, die den Zugriff von Subjekten auf die Interaktion mit Objekten einschränkt. Im Gegensatz zu DAC mit MAC können Benutzer die Richtlinien nicht ändern.
Subjekte und Objekte haben einen Sicherheitskontext (Sicherheitsattribute), der von SELinux überwacht und gemäß Sicherheitsrichtlinien verwaltet wird, die durch durchzusetzende Regeln festgelegt werden.


Rollenbasierte Zugriffskontrolle (RBAC): ist eine rollenbasierte Zugangskontrolle, die sowohl mit MAC als auch mit DAC kombiniert werden kann. RBAC-Richtlinien vereinfachen die Verwaltung vieler Benutzer innerhalb einer Organisation im Gegensatz zu DAC, das in individuellen Berechtigungszuweisungen abgeleitet werden kann, sie erleichtern die Überwachung, Konfiguration und Richtlinienaktualisierungen.

Durchsetzungsmodus: SELinux beschränkt den Zugriff von Subjekten auf Objekte basierend auf Richtlinien.

Permissiver Modus: SELinux protokolliert nur illegitime Aktivitäten.

Zu den SELinux-Funktionen gehören (Wikipedia-Liste):

Quelle: https://de.Wikipedia.org/wiki/Security-Enhanced_Linux#Features

Hinweis: Benutzer unterscheiden sich auf SELinux und passwd.

Einrichten von SELinux unter Debian 10 Buster

In meinem Fall wurde SELinux unter Debian 10 Buster deaktiviert. SELinux aktiviert zu lassen ist einer der grundlegenden Schritte, um ein Linux-Gerät sicher zu halten. Um den Status von SELinux in Ihrem Gerät zu erfahren, führen Sie den Befehl aus:

/# sestatus

Ich habe festgestellt, dass SELinux deaktiviert war. Um es zu aktivieren, müssen Sie einige Pakete vor und nach einem installieren apt-Update, führe den Befehl aus:

/# apt install selinux-basics selinux-policy-default

Drücken Sie bei Bedarf Ja um den Installationsvorgang fortzusetzen. Lauf apt-Update nach Abschluss der Installation.

Um SELinux zu aktivieren, führen Sie den folgenden Befehl aus:

/# selinux-aktivieren

Wie Sie sehen, wurde SELinux ordnungsgemäß aktiviert. Um alle Änderungen zu übernehmen, müssen Sie Ihr System wie angewiesen neu starten.

Der Befehl getenforce kann verwendet werden, um den SELinux-Status zu erfahren, wenn er sich im permissiven oder erzwingenden Modus befindet:

/# getenforce

Der permissive Modus könnte durch Einstellen des Parameters ersetzt werden 1 (zulässig ist 0). Sie können den Modus auch in der Konfigurationsdatei mit dem Befehl überprüfen Weniger:

/# weniger /etc/selinux/config

Ausgabe:

Wie Sie sehen können, zeigen die Konfigurationsdateien den permissiven Modus. Drücken Sie Q beenden.

Um einen Datei- oder Prozesssicherheitskontext anzuzeigen, können Sie das Flag -Z verwenden:

/# ls -Z

Das Etikettenformat ist Benutzer:Rolle:Typ:Ebene.

semanage - SELinux-Richtlinienverwaltungstool

semanage ist das SELinux Policy Management Tool. Es ermöglicht die Verwaltung von booleschen Werten (die es ermöglichen, Prozesse während der Ausführung zu ändern), Benutzerrollen und -ebenen, Netzwerkschnittstellen, Richtlinienmodule und mehr. Semanage ermöglicht die Konfiguration von SELinux-Richtlinien, ohne dass Quellen kompiliert werden müssen. Semanage ermöglicht die Verbindung zwischen dem Betriebssystem und SELinux-Benutzern und bestimmten Objektsicherheitskontexten.

Weitere Informationen zu semanage finden Sie auf der Manpage unter: https://linux.sterben.net/man/8/semanage

Fazit und Anmerkungen

SELinux ist eine zusätzliche Möglichkeit, den Zugriff von Prozessen auf Systemressourcen wie Dateien, Partitionen, Verzeichnisse usw. zu verwalten. Es ermöglicht die Verwaltung massiver Berechtigungen nach Rolle, Stufe oder Typ. Die Aktivierung ist als Sicherheitsmaßnahme ein Muss und bei der Verwendung ist es wichtig, sich an die Sicherheitsschicht zu erinnern und das System nach dem Aktivieren oder Deaktivieren neu zu starten (das Deaktivieren wird außer für bestimmte Tests überhaupt nicht empfohlen). Manchmal wird ein Dateizugriff blockiert, obwohl die System- oder Betriebssystemberechtigungen erteilt wurden, weil SELinux dies verbietet.

Ich hoffe, Sie fanden diesen Artikel zu SELinux als Einführung in diese Sicherheitslösung nützlich. Folgen Sie LinuxHint für weitere Tipps und Updates zu Linux und Netzwerken.

Zum Thema passende Artikel:

Die 5 besten Arcade-Spiele für Linux
Heutzutage sind Computer ernsthafte Maschinen, die zum Spielen verwendet werden. Wenn du den neuen Highscore nicht bekommst, weißt du was ich meine. I...
Schlacht um Wesnoth 1.13.6 Entwicklung veröffentlicht
Schlacht um Wesnoth 1.13.6, das letzten Monat veröffentlicht wurde, ist die sechste Entwicklungsversion im 1.13.x-Serie und bietet eine Reihe von Verb...
So installieren Sie League of Legends auf Ubuntu 14.04
Wenn Sie ein Fan von League of Legends sind, dann ist dies eine Gelegenheit für Sie, League of Legends zu testen. Beachten Sie, dass LOL von PlayOnLin...