Оптимальные настройки владельца/разрешений для каталога веб-сайта, работающего на Apache

Оптимальные настройки владельца/разрешений для каталога веб-сайта, работающего на Apache

Я использую Ubuntu на моем vserver и настроил довольно много настроек, касающихся моей темы. Но я не совсем уверен, что они настроены правильно.

Моя текущая настройка следующая:

Apache2:

export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=www-data
export APACHE_PID_FILE=/var/run/apache2.pid

Я читал статьи о добавлении дополнительного пользователя, например, sudo adduser apacheкоторый запускает сервер Apache. Какой же выбор лучше?

Каталоги веб-сайтов:

drwxr-xr-x 5 www-data:www-data 4.0K Feb  5 04:16 mysite/

Например, этот каталог находится в /var/www. Мои настройки папки внутри каталога — , chmod 755а мои файлы — 644. Должен ли он принадлежать www-data или моему имени пользователя?

Буду рад, если вы дадите мне несколько рекомендаций по этому вопросу. Спасибо за совет!

решение1

Самое главное, что я усвоил, — не предоставлять Apache права на запись туда, куда вам не нужно писать, например, к кэшу, пользователям или каталогам загрузок, в которые вы можете загружать данные.

Поэтому возьмите на себя ответственность за все, например, sudo chown user:userза каталог веб-сайта, и предоставьте oдругой части необходимые разрешения... .

Замените user:userна имя пользователя и группу, которые вам нужны.

В каталогах вы можете использовать команду типа:

sudo chmod o+rx /var/www/'directory' #make directory read and executable for other
sudo chmod o-wx /var/www/'directory'/'files' #remove write and execute from files
sudo chmod o+r  /var/www/'directory'/'files' #add read to files

Вы также можете использовать findкоманду, которая немного сложнее, но немного облегчает работу, например (после того, как вы стали владельцем файлов):

chown user:user /var/www/ -R # this is only an example.. 
  • каталоги
find /var/www/ -type d -exec sudo chmod o+rx {} \; 
  • файлы
find /var/www/ -type f -exec sudo chmod o-wx {} \;
find /var/www/ -type f -exec sudo chmod o+r {} \;

Я старался быть максимально описательным. Я могу объяснить больше, если нужно. Это говорит о разрешениях примерно на полпути вниз:

http://www.linuxforums.org/forum/servers/5270-apache-conf-html-permissions.html

Связанный контент