Masalah seperti itu mungkin tergantung pada OS yang Anda gunakan dan bagaimana hal itu dikonfigurasi. Beberapa distro linux (terutama yang berbasis pada RHEL seperti CentOS atau Fedora) datang dengan SELinux diaktifkan secara default. Ini dapat diperiksa, dan sementara diubah, dengan perintah berikut:
root@ls:~# /usr/sbin/getenforce
Enforcing
root@ls:~# /usr/sbin/setenforce Permissive
root@ls:~# /usr/sbin/getenforce
Permissive
Anda juga dapat memiliki tampilan yang lebih lengkap tentang konfigurasi saat ini dengan:
root@ls:~# /usr/sbin/sestatus
SELinux status: enabled
SELinuxfs mount: /selinux
Current mode: permissive
Mode from config file: enforcing
Policy version: 21
Policy from config file: targeted
Perubahan ini dapat dibuat permanen dengan mengedit /etc/selinux/config
file dan mengatur SELINUX
variabel ke permissive
atau disabled
.
Tapi, cara yang benar untuk menyelesaikan masalah seperti ini , jika Anda memang dalam situasi ini, adalah dengan memeriksa /var/log/audit/audit.log
file log. Ini akan berisi semua acara yang terkait dengan aturan SELinux. Maka Anda mungkin harus memberikan naskah Anda konteks yang benar, yaitu diizinkan untuk dijalankan oleh pengguna apache / php. Memeriksa konteks keamanan SELinux dilakukan dengan ls -Z
:
root@ls:~# ls -alZ /var/www/cgi-bin/
drwxr-xr-x root root system_u:object_r:httpd_sys_script_exec_t .
drwxr-xr-x root root system_u:object_r:httpd_sys_content_t ..
Ini daftar Pengguna, Peran dan Jenis setiap file / direktori. Di sini httpd_sys_script_exec_t
tipe memberikan file dalam direktori cgi izin untuk dieksekusi oleh httpd. Script shell Anda mungkin harus memiliki tipe yang sama.
Anda juga bisa memberi makan audit.log
garis ke audit2allow
perintah. Ini akan menampilkan Anda perubahan yang diperlukan untuk membuat SELinux bahagia. Tetapi biasanya perubahan yang disarankan perlu dilakukan pada kebijakan SELinux itu sendiri yang bukan apa yang harus Anda lakukan dalam kasus Anda (masih, output ini dapat memberikan petunjuk tentang apa yang sedang terjadi).
Halaman berikut menjelaskan masalah yang serupa dan berbagai cara untuk menyelesaikannya: http://sheltren.com/stop-disabling-selinux
x
) pada file? Apakah Anda menentukan penerjemah skrip dalam baris shebang?