Saya menjalankan mesin CentOS. Saya ingin melayani direktori pengguna dengan Apache, jadi saya mengkonfigurasi httpd.conf
untuk mengizinkan public_html
direktori.
Saya telah menambahkan apache
pengguna ke usergroup saya dan chmod g+xr
yang public_html
dan direktori toplevel nya. Jika saya su apache
, saya bisa cd /home/nijansen/public_html
tanpa masalah.
http://localhost/~nijansen
Namun ketika meminta , saya mendapatkan 403 Forbidden
kesalahan. Saya dapat mempersempitnya menjadi masalah SELinux - ini berfungsi dengan baik ketika saya menonaktifkan SELinux.
Saya telah melakukan /usr/sbin/restorecond ~/public_html
dan ls -Zd ~/public_html
memberi saya
drwxr-x---. nijansen nijansen unconfined_u:object_r:httpd_user_content_t:s0 public_html
dan /var/log/httpd/error
hanya berkata
[Fri Oct 05 20:20:25 2012] [error] [client 127.0.0.1] (13)Permission denied: access to /~nijansen denied
Sekarang saya kehabisan ide dan mencari masalah ini tidak memberi saya sejauh ini. Saya akan menghargai petunjuk ke arah yang benar.
Memperbarui
Untuk pemecahan masalah, saya telah mengatur mode SELinux ke permisif , dan itu memang memberikan beberapa log, tapi saya gagal menafsirkannya:
Oct 5 20:50:18 localhost kernel: type=1400 audit(1349463018.930:95232): avc: denied { search } for pid=10443 comm="httpd" name="nijansen" dev=dm-6 ino=12058625 scontext=system_u:system_r:httpd_t:s0 tcontext=unconfined_u:object_r:user_home_dir_t:s0 tclass=dir
Oct 5 20:50:18 localhost kernel: type=1400 audit(1349463018.938:95233): avc: denied { getattr } for pid=10444 comm="httpd" path="/home/nijansen" dev=dm-6 ino=12058625 scontext=system_u:system_r:httpd_t:s0 tcontext=unconfined_u:object_r:user_home_dir_t:s0 tclass=dir
Jawaban:
Dengan memfilter keluaran menggunakan
ausearch -m avc | audit2allow
mudah untuk menemukan pelakunya:Untuk mengatasi ini, jalankan sebagai root:
sumber