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