Мне нужна помощь в установке правильных разрешений или прав собственности на корень документа apache. Вот что мне нужно:
/var/www/html/<site>
Как я могу это сделать? На данный момент все файлы доступны для записи всем, что не очень хорошо. На сервере работает CentOS 5.5.
Спасибо
Создать новую группу
groupadd webadmin
Добавьте своих пользователей в группу
usermod -a -G webadmin user1
usermod -a -G webadmin user2
Смена владельца каталога сайтов
chown root:webadmin /var/www/html/
Изменить права доступа к каталогу сайтов
chmod 2775 /var/www/html/ -R
Теперь любой может читать файлы (включая пользователя apache), но только root и webadmin могут изменять их содержимое.
Я предпочитаю монтировать раздел с помощью -o acl. Это позволяет вам использовать команду setfacl для предоставления детализированных разрешений для файлов и папок вместо того, чтобы указывать только разрешения группы пользователей.
Поэтому поместите acl в свою строку раздела в / etc / fstab или перемонтируйте с помощью mount -o remount, acl / mnt / xy, а затем предоставьте право собственности на свой веб-каталог никому: никому. Chmod до 770 и используйте setfacl, чтобы дать права на запись только для тех папок, которые в этом нуждаются, например. предоставьте www-data (или пользователю, от имени которого работает ваш веб-сервер) права на запись для папки загрузки и предоставьте права на запись вашему собственному пользователю для всего каталога.
mkdir dir
chown nobody:nobody dir
setfacl -m u:www-data:r-x,d:u:www-data:r-x dir
setfacl -m u:www-data:rwx,d:u:www-data:rwx dir/upload
setfacl -m u:youruser:rwx,d:u:youruser:rwx dir
Теперь никто не может читать ваши файлы, кроме вашего веб-сервера и вашего собственного пользователя. Вы можете писать в каждый файл в папке, а веб-сервер может писать только в папку загрузки.