Сделать /var/www доступным только для root и веб-сервера

Сделать /var/www доступным только для root и веб-сервера

Я веб-разработчик. Я разрешаю SSH-доступ к моей машине нескольким людям.

Я хочу быть уверенным, что они не смогут получить доступ к моим файлам в формате /var/www/.

Так возможно ли сделать эти файлы доступными для чтения только веб-серверу и предоставить права на чтение и запись пользователю root?

решение1

Я предполагаю, что пользователь Apache называется www-data. Если вы хотите, чтобы файлы в /var/www/стали доступны для чтения только этому пользователю, вам нужно дать ему право собственности:

sudo chown -R www-data /var/www/

Теперь вы хотите www-dataбыть единственным пользователем, который действительно может читать/писать эти данные:

sudo chmod -R 700 /var/www/

Обратите внимание, что rootвсегда имеет доступ на чтение/запись к любому файлу, независимо от разрешений. Является ли эта настройка хорошей идеей или нет – ну, я бы лучше chroot этих пользователей SSH в их домашние папки. СмотритеМогу ли я создать пользователя SSH, который сможет получить доступ только к определенному каталогу?

решение2

В зависимости от пользователя вашего веб-сервера (обычно www-data):

chown www-data /var/www
chmod -R 700 /var/www

Это сделает пользователя www-data владельцем вашего каталога /var/www и разрешит доступ к каталогу только владельцу.

решение3

Вы можете захотеть сделать root или другого пользователя владельцем вашего веб-контента. Это не позволит веб-серверу перезаписывать контент, если кто-то получит доступ через скрипт или другую точку входа. Замените rootв этих командах на любого пользователя, которому вы хотите назначить владельца контента.

chown -R root:www-data /var/www
chmod 2750 /var/www

Чтобы разрешить user(кроме root) поддерживать контент, вам необходимо добавить пользователя в группу www-data.

adduser user www-data

Некоторые веб-приложения могут иметь некоторые каталоги, в которые они записывают динамический контент. Чтобы разрешить доступ, либо измените владельца на www-data, либо разрешите групповую запись.

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