Wir haben eine Reihe gebrauchter Server von einem anderen Team geerbt. Einige von ihnen haben SELinux aktiviert, andere nicht. Aufgrund von SELinux haben wir Probleme beim Einrichten von ssh ohne Passwort, unseres Webservers usw. Wir haben auf dieser Stackexchange-Site eine Lösung gefunden , die ausgeführt werden soll:
restorecon -R -v ~/.ssh
Da SELinux jedoch nicht für das ausgeführt werden muss, was wir tun, ist es möglicherweise einfacher, es auszuschalten, als sich daran zu erinnern, dass alle Benutzer das oben genannte cmd für jedes Verzeichnis ausführen, für das Berechtigungen erforderlich sind.
Können wir SELinux ausschalten, ohne dass sich dies später auswirkt, oder ist es besser, den Server einfach neu abzubilden? Eine Sache zu beachten; Unsere IT-Gruppe ist sehr beschäftigt, daher steht die Neubildung eines Servers nicht ganz oben auf ihrer Liste, es sei denn, dies ist unbedingt erforderlich (Sie benötigen einen sehr guten Business Case) ... oder jemand besticht seinen Chef mit einer Flasche Scotch oder Whisky.
UPDATE: Vielen Dank für alle Vorschläge und Ratschläge. Diese Server werden alle als interne Entwicklungsserver verwendet. Es wird keinen externen Zugriff auf diese Maschinen geben, daher ist uns die Sicherheit kein großes Anliegen. Auf unseren aktuellen Servern, die wir alle verwenden (nach meinem besten Wissen), ist SELinux nicht aktiviert. Einige von denen, die mein Manager gerade erworben hat, tun dies und diese sind diejenigen, die wir deaktivieren möchten, damit alles in unserem Cluster einheitlich ist.
Antworten:
SELinux ist eine Sicherheitsfunktion des Betriebssystems. Es wurde entwickelt, um einige Teile des Servers vor anderen Teilen zu schützen.
Wenn Sie beispielsweise einen Webserver ausführen und über einen "anfälligen" Code verfügen, mit dem ein Angreifer beliebige Befehle ausführen kann, kann SELinux Abhilfe schaffen, indem verhindert wird, dass Ihr Webserver auf Dateien zugreift, die nicht angezeigt werden dürfen.
Jetzt Sie können SELinux deaktivieren und es sollte nichts kaputt machen. Der Server arbeitet wie gewohnt weiter.
Sie haben jedoch eine der Sicherheitsfunktionen deaktiviert.
quelle
Es gibt verschiedene Ansichten von SELinux. In vielen Fällen spielen einige Anwendungen mit SELinux nicht gut, so dass diese Entscheidung umstritten ist (Oracle ist ein Beispiel).
Im Allgemeinen ist SELinux ein Schutzmechanismus, um einem Bösewicht, der Ihr System untergraben möchte, ein weiteres Hindernis in den Weg zu stellen.
In meinen früheren Rollen als Systemadministrator bei großen Unternehmen ... habe ich SELinux im Allgemeinen deaktiviert. Ich hatte nicht die Zeit, alle SELinux-Fehler auf allen Systemen aufzuspüren, die von Benutzern, Entwicklern und Managern verwendet werden.
Bevor Sie Dinge deaktivieren, sollten Sie zunächst die Dateien auf dem System wieder so beschriften, wie sie sein sollten. Die einfachste Methode, die ich gefunden habe, ist die Eingabe des Befehls:
ODER
Starten Sie dann neu und warten Sie, da das System ungefähr genauso lange benötigt, um fehlerhafte SELinux-Labels im System zu überprüfen und zurückzusetzen. Danach sind Sie möglicherweise in Ordnung, da nicht konforme SELinux-Labels behoben und korrigiert werden, die möglicherweise vor dem Versuch, den Server zu verwalten, geändert wurden.
Wenn dies nicht der Fall ist, wird das System nicht beschädigt, wenn SELinux NICHT im Durchsetzungsmodus ist. Es ist nur eine zusätzliche Schutzschicht.
quelle
/sbin/fixfiles onboot
arbeitete für mich auf CentOS, nicht so mittouch /.autorelabel
. Beim Laufensealert -a /var/log/audit/audit.log
werden jetzt 0 Warnungen angezeigt. @mdpc Was ist der Unterschied zwischen diesen beiden Befehlen?Einfach ausgedrückt ist das Deaktivieren von MAC-Mechanismen (obligatorischer Zugriffskontrolle) wie SELinux keine gute Idee und kann Sie in einen Sicherheitsnachteil bringen, wenn ein Bösewicht namenbasierte Zugriffskontrollen, die von Discretionary Access Control (DAC) implementiert werden, erfolgreich umgeht.
Wäre ich es, würde ich so etwas tun
um besonders sicher zu sein, welche Typbezeichnung rekursiv von zugewiesen wurde
~/.ssh
quelle
Im Allgemeinen sollten Sie SELinux nicht deaktivieren. Es gibt Tools, die Ihnen helfen können, zu verstehen, was schief gelaufen ist. Mein Favorit ist die Verwendung von Sealert-Beispielen:
OFC Sie können SELinux für das Debuggen immer in den zulässigen Modus versetzen, aber das Deaktivieren oder Zulassen von SELinux wird von Red Hat als schwerwiegende Sicherheitslücke eingestuft.
quelle