Ich bin neu bei SELinux. kam von Debian. Ich möchte httpd
Zugriff auf ein Verzeichnis geben.
SELinux Alert Browser schlägt vor:
# grep httpd /var/log/audit/audit.log | audit2allow -M mypol
# semodule -i mypol.pp
Ich konnte nicht verstehen, wie dieser Befehl funktioniert. Ich gebe nirgendwo einen Verzeichnispfad an. Woher weiß es, welches Verzeichnis für httpd zulässig ist?
Bisher habe ich grep verwendet, um Text aus der Ausgabe oder Datei zu extrahieren. Aber hier wird grep für einen Prozess verwendet. Das habe ich nicht bekommen.
Auch was ist die eigentliche Lösung. Wenn ich httpd Schreibzugriff auf ein Verzeichnis gewähren möchte?
fedora
rhel
apache-httpd
selinux
Neel Basu
quelle
quelle
Antworten:
So ändern Sie den Kontext eines Verzeichnisses dauerhaft:
Hier finden Sie weitere Dokumentationen zu den verschiedenen Kontexten für httpd:
RHEL 7: https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/SELinux_Users_and_Administrators_Guide/sect-Managing_Confined_Services-The_Apache_HTTP_Server-Tml
RHEL 6: https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Managing_Confined_Services/sect-Managing_Confined_Services-The_Apache_HTTP_Server-Types.html
quelle
SELinux verwendet erweiterte Attribute, die an die Verzeichnisstrukturen auf der Festplatte angehängt werden können. Überlegen Sie, ob dies Metadaten sind. Zugriffssteuerungslisten (ACLs) sind andere.
Die erweiterten Attribute, die Sie an ein Verzeichnis anhängen müssen, werden als Kontexte bezeichnet. SELinux verhält sich wie ein Verkehrspolizist und stellt sicher, dass eine ausführbare Datei mit bestimmten Kontexten basierend auf diesen Kontexten auf das Dateisystem zugreifen kann. Mit dem
-Z
Schalter auf können Sie sehen, was im Verzeichnis verfügbar istls
.Hier können Sie sehen, dass diese Verzeichnisse den Kontext
httpd_sys_script_exec_t:s0
im Verzeichnis habencgi-bin
. und dashtml
dir. hathttpd_sys_content_t:s0
.Sie können diese mit dem folgenden
chcon
Befehl hinzufügen :Der Befehl, nach dem Sie fragen, lädt einfach das Modul.
mypoll.pp
Ich glaube nicht, dass es Berechtigungen für irgendetwas gewährt.audit.log
Es fehlen wahrscheinlich mehr Nachrichten in dem , die Sie mit Ihrem Befehl vermissen, die Ihnen detaillierter mitteilen, was Sie benötigen zu tun, um den Zugang zu ermöglichen.Ich möchte Sie ermutigen, sich etwas Zeit zu nehmen und sich mit SELinux vertraut zu machen. Es ist zunächst verwirrend, aber im Allgemeinen unkompliziert, nachdem Sie ein wenig Zeit damit verbracht haben. Weitere Informationen finden Sie in den folgenden Ressourcen.
Verweise
quelle
chcon -R -t httpd_sys_content_t <dir>