SELinux: verweigert {Ausführen} für pid=2174 comm="httpd" path="/etc/httpd/lib/libaprutil-1.so.0.5.3"

SELinux: verweigert {Ausführen} für pid=2174 comm="httpd" path="/etc/httpd/lib/libaprutil-1.so.0.5.3"

Ich habe ein Problem mit SELinux. Es wird empfohlen, es setroubleshootzu aktivieren , damit Apache ausgeführt werden kann.mypol.ppsemodule -i mypol.pp

nachdem ich den vorgeschlagenen Befehl ausgeführt habe, erhalte ich ständig:

type=AVC msg=audit(1388119964.806:11): avc:  denied  { execute } for  pid=2174 comm="httpd" path="/etc/httpd/lib/libaprutil-1.so.0.5.3" dev=md0 ino=2228931 scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:object_r:httpd_config_t:s0 tclass=file

**** Invalid AVC allowed in current policy ***

type=AVC msg=audit(1388120085.792:29): avc:  denied  { execute } for  pid=2298 comm="httpd" path="/etc/httpd/lib/libaprutil-1.so.0.5.3" dev=md0 ino=2228931 scontext=unconfined_u:system_r:httpd_t:s0 tcontext=system_u:object_r:httpd_config_t:s0 tclass=file

**** Invalid AVC allowed in current policy ***

type=AVC msg=audit(1388120159.57:37): avc:  denied  { execute } for  pid=2330 comm="httpd" path="/etc/httpd/lib/libaprutil-1.so.0.5.3" dev=md0 ino=2228931 scontext=unconfined_u:system_r:httpd_t:s0 tcontext=system_u:object_r:httpd_config_t:s0 tclass=file

**** Invalid AVC allowed in current policy ***

type=AVC msg=audit(1388121088.955:65): avc:  denied  { name_connect } for  pid=2331 comm="httpd" dest=8080 scontext=unconfined_u:system_r:httpd_t:s0 tcontext=system_u:object_r:http_cache_port_t:s0 tclass=tcp_socket

**** Invalid AVC allowed in current policy ***

found 0 alerts in /var/log/audit/audit.log

Antwort1

Das Folgende deutet für mich darauf hin, dass Sie ein Problem mit der Neuetikettierung haben.

type=AVC msg=audit(1388119964.806:11): avc: denied { execute } for pid=2174 comm="httpd" path="/etc/httpd/lib/libaprutil-1.so.0.5.3" dev=md0 ino=2228931 scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:object_r:httpd_config_t:s0 tclass=file

Handelt es sich um /etc/httpd/libeinen symbolischen Link zu einem anderen Ort? Normalerweise würden Sie Ihre Bibliotheken nicht hier ablegen, sondern nur als symbolischen Link. In diesem Fall restorecon -Rv /usr/lib{,64}könnte es von Vorteil sein, sie hier auszuführen.

Damit das zweite unten gemeldete Problem funktioniert, müssen Sie sicherstellen, dass SELinux weiß, welches Verhalten Sie von Ihrem httpd-Dienst erwarten.

type=AVC msg=audit(1388121088.955:65): avc: denied { name_connect } for pid=2331 comm="httpd" dest=8080 scontext=unconfined_u:system_r:httpd_t:s0 tcontext=system_u:object_r:http_cache_port_t:s0 tclass=tcp_socket

Aktivieren Sie den Booleschen Wert, httpd_can_network_relayindem Sie ausführen setsebool -P httpd_can_network_relay 1.

Antwort2

Ich weiß nichts über die **** Invalid AVC allowed in current policy ***Nachricht, aber wir haben eineFragen und Antworten dazu hierbereits

Ausführen des von Ihnen eingegebenen Textesaudit2zulassenschlägt vor

#============= httpd_t ==============

allow httpd_t http_cache_port_t:tcp_socket name_connect;
allow httpd_t httpd_config_t:file execute;

Sie könnten also versuchen, mit grep die relevanten AVC-Ablehnungsmeldungen in eine temporäre Datei zu ziehen und sie dann an audit2allow weiterzuleiten.

grep denied: audit.log | grep httpd >temp.log

cat temp.log | audit2allow -M myHTTPD
******************** IMPORTANT ***********************
To make this policy package active, execute:

semodule -i myHTTPD.pp

Nach der Installation von myHTTPD.pp kann es sein, dass SElinux den Start von httpd immer noch verhindert. Dies liegt daran, dass frühere (jetzt zulässige) Ablehnungen die späteren nicht mehr maskieren. Wiederholen Sie einfach jedes Mal den obigen Vorgang.

verwandte Informationen