So konfigurieren Sie Amanda Enterprise unter SELinux

Überprüfen des SELinux-Modus

Sie können die aktuelle Konfiguration des SELinux-Modus abrufen, indem Sie getenforce oder sestatus als Root-Benutzer ausführen. Ersteres druckt einfach entweder "Enforcing" oder "Permissive" nach stdout. Letzteres enthält zusätzliche Details, einschließlich des SELinuxfs-Einhängepunkts, des aktuellen Modus, des Modus, wie er in der SELinux-Konfigurationsdatei angezeigt wird usw.

Der SLELinux-Modus kann vom Root-Benutzer zur Laufzeit mit der Anwendung setenforce geändert werden.

Verwendung:

setenforce [Durchsetzung | Zulässig | 1 | 0]

Es ist wichtig zu bedenken, dass Änderungen, die mit judgforce vorgenommen wurden, bei einem Systemneustart nicht dauerhaft sind.

Wenn SELinux auf "Zulässig" und nicht auf "Deaktiviert" eingestellt ist, verhalten sich alle SELinux-fähigen Anwendungen so, als ob der Erzwingungsmodus noch festgelegt wäre. SELinux wird auch weiterhin die Aktivität von Anträgen im zulässigen Modus prüfen. Dies ist der Hauptunterschied zwischen der Verwendung des zulässigen Modus und der vollständigen Deaktivierung von SELinux.

Der Standardwert für den Modus beim Systemstart wird in der Datei / etc / selinux / config durch den Parameter SELINUX definiert. Der Parameter SELINUX akzeptiert das Erzwingen, Zulassen oder Deaktivieren.

Beispielsweise:

root> # cat / etc / selinux / config # Diese Datei steuert den Status von SELinux auf dem System. # SELINUX = kann einen dieser drei Werte annehmen: # erzwingen - Die SELinux-Sicherheitsrichtlinie wird erzwungen. # permissive - SELinux druckt Warnungen aus, anstatt sie zu erzwingen. # disabled - Es wird keine SELinux-Richtlinie geladen. SELINUX = Erzwingen von # SELINUXTYPE = kann einen von drei zwei Werten annehmen: # Zielgerichtet - Zielgerichtete Prozesse sind geschützt, # Minimum - Änderung der Zielrichtlinie. Nur ausgewählte Prozesse sind geschützt. # mls - Mehrstufiger Sicherheitsschutz. SELINUXTYPE = Zielwurzel> #

Wenn Sie jemals ein Problem beheben müssen, bei dem der SELinux-Modus beim Booten ständig in einen unerwarteten Modus wechselt, sollten Sie beachten, dass SELinux auch in grub.conf konfiguriert werden kann, indem Sie den Durchsetzungsparameter auf 0 oder 1 setzen (zulässig) bzw. Durchsetzung).

Konfigurieren von SELinux für eine gute Zusammenarbeit mit Amanda

Da die Hauptfunktion von SELinux darin besteht, die obligatorische Zugriffskontrolle zu erzwingen, sind möglicherweise zusätzliche Schritte erforderlich, um Amanda auszuführen, wenn SELinux nicht deaktiviert ist oder sich im zulässigen Modus befindet

Moderne Versionen von Zmanda (Amanda Enterprise Edition) versuchen, SELinux bei der Installation automatisch in den zulässigen Modus zu versetzen.

root> # ./amanda-enterprise-3.4-linux-x64.run Für die Installation von Zmanda muss SELinux in den zulässigen Zustand versetzt werden. Das Installationsprogramm selbst führt dies aus und stellt den ursprünglichen Zustand wieder her, sobald die Installation abgeschlossen ist. Möchtest du fortfahren? [J / N]:

Das Zmanda-Installationsprogramm verwendet dazu die Semanage-Anwendung. Stellen Sie daher sicher, dass das Semanage installiert ist, indem Sie z. B. prüfen, welches Semanage ausgeführt wird, bevor Sie das Installationsprogramm ausführen. Wenn Semanage noch nicht installiert ist, können Sie die Anwendung abrufen mit:

root> # yum bietet * / semanage {zusätzliche Ausgabe nicht angezeigt} root> # yum install

Versuchen Sie bei der Fehlerbehebung bei Amanda / Zmanda-Installationen in Umgebungen, in denen SELinux nach Möglichkeit implementiert ist, SELinux vorübergehend auf den zulässigen Modus zu setzen. Wiederholen Sie Ihre Tests, um zu bestätigen, dass SELinux tatsächlich die Ursache des Problems ist, und um Überwachungsprotokolleinträge zu generieren.

Wenn es aufgrund Ihrer Sicherheitsrichtlinie nicht möglich ist, SELinux im zulässigen Modus auszuführen, gibt es einige Anzeichen dafür, dass SELinux den normalen Betrieb von Amanda beeinträchtigt. Sie können die Überwachungsprotokolle auf Einträge in Bezug auf Amanda und / oder Zmanda überprüfen:

root> # ausearch -m avc -c amanda

Wenn Sie keine Protokolleinträge zu SELinux finden können, die Amanda verweigern, aber keine Probleme auftreten, wenn Sie im zulässigen Modus ausgeführt werden, liegt dies möglicherweise an den Regeln für Nichtprüfungen. Um Dontaudit-Regeln vorübergehend zu deaktivieren, können Sie Folgendes ausführen:

root> # semodule -DB

Versuchen Sie anschließend, die Installation, Sicherung oder Wiederherstellung erneut auszuführen, und überprüfen Sie das Überwachungsprotokoll. Nachdem SELinux die entsprechenden Ablehnungen protokolliert hat, müssen Sie sie erneut aktivieren nicht prüfen Regeln:

root> # semodule -B

Einige Betriebssysteme verfügen über vorinstallierte Richtlinienmodule für Amanda, die möglicherweise nicht die richtigen Kontexte für Ihre Version von Amanda widerspiegeln. Sie können überprüfen, welches Modul derzeit enthalten ist, indem Sie Folgendes verwenden:

root> # semodule -l | grep amanda

Es kann einige Momente dauern, bis alle installierten Module aufgelistet sind. Wenn es kein Modul gibt, das mit 'amanda' übereinstimmt, wird natürlich keine Ausgabe ausgegeben. Wenn Sie feststellen, dass Sie ein altes oder beschädigtes Amanda-Richtlinienmodul ausführen, können Sie es entfernen, indem Sie:

root> # semodule -r 

Alle SELinux-Kontexte können manuell konfiguriert werden, dies liegt jedoch außerhalb des Geltungsbereichs dieser Dokumentation. Wenn Sie an einer vollständig manuellen Lösung interessiert sind, finden Sie ausführliche Informationen in den Manpages chcon und restorecon.

Erstellen von benutzerdefinierten Richtlinienpaketen mit audit2allow

In den meisten Umgebungen gibt es eine Reihe von Amanda-Clientcomputern, auf denen ähnliche Betriebssysteme ausgeführt werden, und gelegentlich müssen zusätzliche Amanda-Server bereitgestellt werden. In diesen Szenarien ist es nicht effizient, Sicherheitskontexte auf jedem einzelnen Computer manuell zu beheben und zu ändern. Hier kann ein Tool namens audit2allow hilfreich sein, um benutzerdefinierte Richtlinienpakete zu erstellen, die auf mehreren Computern im Netzwerk bereitgestellt werden können.

Führen Sie zunächst Ihre Aufgaben im zulässigen Modus aus und erstellen Sie eine Typdurchsetzungsdatei:

root> # grep -E 'amanda | zmanda' /var/log/audit/audit.log | audit2allow -m myamanda> myamanda.te

Stellen Sie nach dem Erstellen der Typdurchsetzungsdatei sicher, dass sie von einem Bediener überprüft wird. Bitte ändern Sie die automatisch generierte Ausgabe entsprechend den Anforderungen Ihrer Informationssicherheitsabteilung.

Beachten Sie beim Überprüfen der Typ-Durchsetzungsdatei Folgendes: Viele Anwendungen bieten den SELinux-Sicherheitskontext mithilfe eines -Z-Schalters. Zum Beispiel 'ls, -Z', 'ps axZ' usw.

Sobald überprüft wurde, ob die Typdurchsetzungsdatei die Anforderungen Ihrer Sicherheitsrichtlinie erfüllt, muss sie in ein Richtlinienpaket konvertiert werden, um als aktives Richtlinienmodul aufgenommen zu werden. Dazu können Sie folgende Befehle ausführen:

root> # checkmodule -mo myamanda.mod myamanda.te root> # semodule_package -m myamanda.mod -o myamanda.pp

Um das Richtlinienmodul zu laden, sollten Sie dann Folgendes ausführen:

root> # semodule -i myamanda.pp

Wenn Sie einen Fehler erhalten, den Sie haben "Versucht, ein Nicht-MLS-Modul mit einer MLS-Basis zu verbinden" Sie müssen stattdessen die Typ-Durchsetzungsdatei als Multi-Layer-Sicherheit konvertieren und das resultierende Richtlinienpaket wie folgt einschließen:

root> # checkmodule -M -m -o myamanda.mod myamanda.te root> # semodule_package -m myamanda.mod -o myamanda.pp

Fügen Sie dann das Richtlinienpaket mit dem oben beschriebenen Semodul -i hinzu. Sie sollten jetzt so eingerichtet sein, dass Ihre Sicherungen und Wiederherstellungen mit SELinux im Erzwingungsmodus ausgeführt werden.