GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So sichern Sie Linux-Server mit SE Linux

Sicherheit ist heutzutage ein äußerst wichtiger Aspekt der Softwareentwicklung, der Serververwaltung und der Anwendungsentwicklung.

Und wenn Sie Linux verwenden, haben Sie Glück – es enthält eine hervorragende Funktion namens SE Linux, mit der Sie eine zusätzliche Sicherheitsebene hinzufügen können.

Was ist SE Linux?

SE Linux wurde von der NSA (National Security Agency) entwickelt, um regierungsbezogene Sicherheitsaufgaben zu erfüllen.

SE Linux steht für Security Enhanced Linux. Es gibt Systemadministratoren mehr Kontrolle über den Zugriff auf Dateien und Prozesse. Mit SE Linux können Administratoren einen Kontext definieren und Dateien taggen und sie in diesem Kontext zulassen.

Zugriff und Berechtigungen werden normalerweise basierend auf Benutzergruppen vererbt. Aber es gibt einige Quellen (wie Webserver und Prozesse), die Zugriff auf Netzwerkports und Kernelprozesse benötigen. Diese werden normalerweise vom Root-Benutzer oder Benutzern mit speziellem Zugriff erstellt. SE Linux hilft Ihnen einzuschränken, wer auf diese speziellen Prozesse zugreifen kann.

Arbeiten mit SE Linux

SE Linux ist standardmäßig in den meisten Linux-Distributionen enthalten. In diesem Beitrag werde ich an Fedora arbeiten.

Denken Sie nur daran, dass die Arbeit mit SE Linux sudo erfordert oder root Zugriff.

Die SE-Linux-Konfigurationsdatei befindet sich im Verzeichnis /etc/sysconfig/selinux Mappe. Sehen wir uns den Inhalt an:

SE-Linux-Modi

In der Konfigurationsdatei können wir die Modi ändern und einen der folgenden auswählen:

  1. Erzwungen – Standardmäßig aktiviert, Filter basierend auf definierten Richtlinien.
  2. Zulässig – Setzt die definierten Richtlinien nicht durch, zeichnet aber alle Versuche in Protokolldateien auf. Dieser Modus ist nützlich für die Fehlersuche.
  3. Deaktiviert – SE Linux ist vollständig deaktiviert. Dies wird nicht empfohlen, da es Ihr System Bedrohungen aussetzen könnte. Auch die Rückkehr zum erzwungenen Modus könnte zu gewissen Diskrepanzen führen.

Sie können Ihren aktuellen SE-Linux-Modus mit den folgenden Befehlen überprüfen:

  1. getenforce
  2. sestatus

Wenn Sie den Modus nur für die aktuelle Sitzung ändern müssen, können Sie die folgenden Befehle verwenden:

  1. sudo setenforce 0 – Legt den Erlaubnismodus für die aktuelle Sitzung fest
  2. sudo setenforce 1 – setzt den Erzwingungsmodus für die aktuelle Sitzung

SE-Linux-Richtlinien

In SE Linux definieren Richtlinien den Zugriff auf Benutzer. Benutzer definieren den Zugriff auf Rollen und Rollen definieren den Zugriff auf Domänen. Domänen bieten dann Zugriff auf bestimmte Dateien.

Um Zugriffe zu ändern und zu modifizieren, werden 'booleans' definiert. Wir werden uns im nächsten Abschnitt mit booleschen Werten befassen.

So verwalten Sie SE-Linux-Richtlinien mit booleschen Werten

Wie Sie jetzt wissen, werden SE-Linux-Richtlinien von booleschen Werten verwaltet.

Sehen wir uns ein Arbeitsbeispiel an, wie Sie einen booleschen Wert anzeigen und festlegen würden. In diesem Beispiel setzen wir boolesche Werte speziell für httpd .

Listen Sie zunächst alle http-spezifischen Module auf – getsebool -a | grep httpd .

Hier -a listet alle booleschen Werte auf.

Als nächstes wählen und ändern wir den gelb hervorgehobenen booleschen Wert im obigen Code:

getsebool httpd_can_connect_ftp

Setzen Sie nun den Wert auf allow .

setsebool -P httpd_can_connect_ftp 1

Im obigen Befehl

  • Das Flag P wird verwendet, um die Änderung auch nach einem Neustart dauerhaft zu machen.
  • 1 aktiviert den booleschen Wert.

Wenn Sie den Prozess jetzt erneut auflisten, wird sein Wert zugelassen.

SE-Linux-Architektur

Das folgende Diagramm erläutert, wie SE Linux einen Versuch von der Quelle validiert:

Fehlerbehebung und SE-Linux-Protokolle

SE Linux erstellt sehr detaillierte Protokolle für jeden Versuch. Sie können die Protokolle hier finden und anzeigen:/var/log/audit .

Während der Fehlersuche sollten Sie in den „zulässigen“ Modus wechseln, damit alle Ereignisse in den Protokollen aufgezeichnet werden können. Obwohl Richtlinien nicht durchgesetzt werden, werden Versuche in Protokollen aufgezeichnet.

So deaktivieren und aktivieren Sie SE Linux

Das vollständige Deaktivieren von SE Linux ist niemals eine gute Option. Es gibt jedoch bestimmte Szenarien, in denen Richtlinien umgangen werden können, z. B. bei der Fehlerbehebung.

Anstatt SE Linux zu deaktivieren, wenn Sie auf ein kleines Problem stoßen, ist es besser, etwas Zeit in die Fehlerbehebung zu investieren.

Aber wenn Sie SE Linux wirklich deaktivieren müssen, folgen Sie diesen Schritten:

  1. Ändern Sie den Modus von "erzwingend" in "permissiv".
  2. Ändern Sie den Modus von "permissiv" zu "deaktiviert".

Abschluss

Das Erlernen von SE Linux ist Ihre Zeit wert und es gibt endlose Möglichkeiten, die Sie bei der Verwendung erkunden können.

SE Linux bietet Administratoren eine feinkörnige Kontrolle. Warum lernen Sie es also nicht kennen und nutzen es, um Ihre Sicherheit zu erhöhen?

Danke fürs Lesen bis zum Ende. Vernetzen wir uns auf Twitter.


Linux
  1. Wie ich Vagrant mit libvirt verwende

  2. So verschlüsseln Sie Dateien mit gocryptfs unter Linux

  3. So sichern Sie Nginx mit Letsencrypt unter Rocky Linux/Centos 8

  4. So sichern Sie Rocky Linux 8

  5. Wie überprüfe ich das Passwort mit Linux?

So führen Sie einen Alias ​​mit Sudo in Linux aus

Erste Schritte mit Arch Linux

Wie schütze ich GRUB mit einem Passwort unter Linux?

So verwalten Sie Speicher mit GParted Linux

So sichern Sie eine Linux-Firewall mit IPTables-Regeln

So sichern Sie SSH mit Fail2Ban