Dalam konfigurasi yang saya setup, saya ingin mengizinkan samba dan apache untuk mengakses / var / www Saya dapat mengatur konteks untuk mengizinkan akses samba, tetapi kemudian httpd tidak memiliki akses. Menggunakan setenforce ke 0 menghilangkan masalah jadi saya tahu bahwa itu SELinux.
Selain itu: Bagaimana saya bisa melihat konteks folder, dan dapatkah folder memiliki banyak konteks?
(CentOS)
apache-2.2
centos
samba
selinux
Joshua Enfield
sumber
sumber
Jawaban:
Pertama, Anda dapat melihat konteks sesuatu dengan ls menggunakan ls -Z
Kedua, ada dua opsi untuk memberikan akses Samba dan Apache ke direktori yang sama.
Cara sederhananya adalah dengan hanya mengizinkan akses samba baca / tulis di mana saja dengan:
Ini sederhana, mudah, dan tidak mengacaukan dengan sifat aneh SELinux.
Jika Anda khawatir dengan Samba yang memiliki akses penuh ke semua direktori dan hanya ingin mengubah / var / www, coba:
Ini akan memungkinkan Samba dan Apache menulis akses ke direktori apa pun dengan konteks public_content_rw_t. Perhatikan bahwa chcon hanya memodifikasi / var / www. Setiap direktori baru yang dibuat di bawah / var / www akan menjadi public_content_rw_t, tetapi tidak ada direktori seperti / var / www / html atau / var / www / manual. Jika Anda ingin mengubah segalanya, tambahkan -R ke chcon:
Anda dapat melihat melalui halaman wiki CentOS ini untuk mendapatkan petunjuk tentang boolean SELinux lainnya.
sumber
chcon -t public_content_rw_t /mnt/share/webroot(/.*)?
chcon -t public_content_rw_t /mnt/share
setsebool -P ftpd_full_access=1
Sebagai contoh:
sumber