Puncte:2

SELinux - blochează trimiterea e-mailurilor postfix din aplicația web

drapel cn

Mediul meu de sistem este Centos-7.9, Apache2.4, Php-fpm, PHP-7.4

Am configurarea postfix pentru a trimite e-mailuri de pe site-ul web, care funcționează în e-mailuri de testare autonome și când opresc SELinux.

Cu toate acestea, dacă SELinux este activat, va bloca trimiterea e-mailurilor de pe server cu eroarea de mai jos /var/log/maillog

 postfix/sendmail[10883]: fatal: execv /usr/libexec/postfix/smtpd: Permisiune refuzată

Cand fac

  sudo setenforce 0

Trimite e-mailuri, totuși, nu vreau să dezactivez SELinux, dar aș dori să permit aplicației mele web să trimită e-mail-uri pe lista albă. Am incercat mai jos dar nu a mers

sudo setsebool -P httpd_can_sendmail 1

Ai idee cum să rezolvi această problemă?

Puncte:0
drapel cn

Ce aș face aici este

Pune SELinux în modul permisiv

setenforce 0

Rotiți jurnalele de audit pentru a obține o listă curată a refuzurilor AVC

kill -USR1 $(cat /run/auditd.pid) 

Cauză Apare problema și generează mesaje de audit

Creați un modul de politică locală

grep a refuzat /var/log/audit/audit.log | audit2allow -m mypolicy >mypolicy.te 

Verificați dacă fișierul de politică generat arată așa cum mă aștept și nu „dezvăluie” lucruri pe care nu le doresc și editați după cum este necesar.

Creați și instalați politica

checkmodule -M -m -o mypolicy.mod mypolicy.te
semodule_package -o mypolicy.pp -m mypolicy.mod
semodule -i mypolicy.pp 

S-ar putea să vă fie mai ușor să puneți toate refuzările AVC într-un fișier separat și apoi să le eliminați pe cele care nu au legătură cu problema pe care încercați să o rezolvați înainte de a utiliza audit2alow pe fișier. Dacă funcționează mai bine pentru tine, poți sări peste pașii intermediari și să mergi direct la fișierul .pp

cat myavcs.log | audit2allow -M mypolicy
Puncte:0
drapel vn

Aceasta este o eroare cunoscută cu RHEL 7.7 și updata la utilizare php-fpm în locul lui Apache mod_php. Din moment ce sunteți pe CentOS 7.9, se aplică.

Puteți citi mai multe despre problema pe Bugzilla de la Red Hat: http://bugzilla.redhat.com/show_bug.cgi?id=1754622

În ceea ce privește o soluție pentru problema dvs., prima și cea mai evidentă este dezactivarea SELinux, dar ca a doua opțiune, aș recomanda următoarele:

  1. Instalați pachetul policycoreutils-python
  2. Utilizare audit2de ce și audit2allow pentru a crea reguli personalizate pentru activare php-fpm pentru a lucra cu SELinux activat.
  3. coada -f pe /var/log/audit/audit.log și încercați să trimiteți un mesaj de e-mail de la httpd. Obțineți rezultatul și introduceți-o audit2de ce și audit2allow. Ar fi de la sine explicat.
  4. Aplicați regulile recomandate de ambele programe.

O a treia soluție ar fi punerea httpd_t sau system_mail_t (în funcție de ieșirea de audit2allow) în modul permisiv dacă nu doriți să creați reguli personalizate specifice acestei mașini. Dar rețineți că, făcând acest lucru, veți dezactiva SELinux într-un întreg context.

Asta s-ar face cu următoarea comandă: semanage permissive -a httpd_t sau semanage permissive -a system_mail_t. Pentru a anula modificările, trebuie doar să schimbați -A la -d.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.