Puncte:1

Cum să setați SELinux pentru a permite script-ului CGI să creeze un fișier

drapel ng

Scriu un CGI pentru httpd pe CentOS 7, care creează și scrie fișiere într-un director de acasă. Când activez SELinux, provoacă o eroare internă a serverului. Cum pot configura SELinux?

Comanda sudo ausearch -m AVC,USER_AVC -ts recent afișează o eroare mai jos.

ora->Vineri, 24 septembrie 09:03:23 2021
type=PROCTITLE msg=audit(1632441803.684:10739412): proctitle=2F7573722F62696E2F707974686F6E330075706C6F61642E636769
type=SYSCALL msg=audit(1632441803.684:10739412): arch=c000003e syscall=2 success=no exit=-13 a0=7f69aa9978c0 a1=a00c2 a2=180 a3=3 items=203945 au pid=3 items=2039495 =1018 gid=1018 euid=1018 suid=1018 fsuid=1018 egid=1018 sgid=1018 fsgid=1018 tty=(none) ses=4294967295 comm="upload.cgi" exe="/usr/bin6/py" subj=system_u:system_r:httpd_user_script_t:s0 key=(null)
type=AVC msg=audit(1632441803.684:10739412): avc: denied { add_name } for pid=5135 comm="upload.cgi" name="16r3sq_k" scontext=system_u:system_r:httpd_user_user_name_t:unject_confined_script_t:object_sq_k:httpd_user_user_script_t:unject_confined_t:unject_sq_k :s0 tclass=dir permisiv=0

Contextul directorului este setat ca mai jos.

$ ls -ldZ încărcat
drwxrwxr-x. utilizator utilizator unconfined_u:object_r:httpd_user_rw_content_t:s0 încărcat
Michael Hampton avatar
drapel cz
Programul tău `upload.cgi` încearcă să creeze un fișier numit `16r3sq_k` într-un director. Jurnalele nu spun ce director. Ce director este acesta?
drapel ng
@MichaelHampton Directorul este `~/public_html/uploaded/`. Am setat `httpd_user_rw_content_t` pentru director, dar nu sunt sigur că acestea sunt setările de context corecte.
Michael Hampton avatar
drapel cz
SELinux insistă foarte mult asupra faptului că un server web sau procesele pe care le generează nu pot scrie în directoarele de acasă ale utilizatorilor (este permisă doar citirea). Plasați site-ul dvs. web într-un loc adecvat în sistemul de fișiere pe care SELinux îl recunoaște, de ex. `/srv/www/myappname`.

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.