Со ссылкой на ответ в этой теме , я Я хотел бы спросить о другом случае, когда мы должны сохранить важные файлы в папке над корнем документа, чтобы защитить важные пользовательские данные (скажем, фото пользователя). Я хотел бы спросить следующее: -
Спасибо.
chown -R user: apache /var/www/mysite.com
со структурой каталогов
( 750) (750)
/var/www/mysite.com/ html () (730)
\ internal\uploads\test.jpg (660)
\ (710)
\scripts\test.php (640)
\ (710)
\functions\fn.php (640)
DOCROOT - это HTML. ВНЕ ДОКРОТА это внутренности. uploads хранит фотографии профилей пользователей и им нужны g + rw perms для файлов для пользователя apache, в то время как папка uploads требует w_x perms. структура верна? С этими разрешениями, Должен ли я беспокоиться о том, что apache проходит вне корня, чтобы записывать файлы в загрузках?
Да. Я считаю, что лучше всего поместить что-либо, что вы изменяете (даже файлы конфигурации), в другой раздел, чтобы вы могли создать резервную копию этого раздела самостоятельно. Вы можете использовать символические ссылки и / или "cp", чтобы соединить их вместе. Для этого создайте сценарий.
Что ж, на это просто и сложно ответить: не добавляйте больше разрешений для этого конкретного файла. Если для этого не нужны разрешения на выполнение, не добавляйте его. Если файл нужно только для чтения, не добавляйте права на запись. Никогда не используйте chmod 777
, так как это полностью убивает любую безопасность. Это простой ответ.
Несколько более сложный ответ ...
Если вы используете ftp / ssh, создайте пользователя для каждого человека и добавьте / те пользователей в группу, для которой вы устанавливаете apache (вероятно, apache [114019) ]), а затем сосредоточиться на настройке разрешений для группы, а не для отдельного пользователя. Для других я бы всегда отключал разрешения. Причина: если кто-то жаловался на что-либо, запрещается разрешать этому лицу знать, что это проблема, связанная с настройкой группы этого пользователя. И это легко исправить.
Если сервер является однопользовательской настройкой, вы можете сосредоточиться на настройке разрешений для пользователя, используемого apache, и вы можете уменьшить разрешения для группы. Однако вы также можете использовать групповой метод для 1 пользователя.
Общий 1-й подход (f для файлов, d для каталогов), настроенный для пользователя:
find / var / www / -type f -print0 | xargs -0 chmod 640
Если сервер является однопользовательской настройкой, вы можете сосредоточиться на настройке разрешений для пользователя, который использует Apache, и вы можете уменьшить разрешения для группы. Однако вы также можете использовать групповой метод для 1 пользователя.
Общий 1-й подход (f для файлов, d для каталогов), настроенный для пользователя:
find / var / www / -type f -print0 | xargs -0 chmod 640
Если сервер является однопользовательской настройкой, вы можете сосредоточиться на настройке разрешений для пользователя, который использует Apache, и вы можете уменьшить разрешения для группы. Однако вы также можете использовать групповой метод для 1 пользователя.
Общий 1-й подход (f для файлов, d для каталогов), настроенный для пользователя:
find / var / www / -type f -print0 | xargs -0 chmod 640
find / var / www / -type d -print0 | xargs -0 chmod 750
Это отключает «другие». Если вы хотите использовать группу, измените их на 460 или 660 и 570 или 770 (вторая пара также включает пользователя). Если в / var / www /
есть какие-либо файлы, требующие выполнения, их там не должно быть, поэтому вы поймаете те с этой настройкой (они должны быть в каталоге cgi-bin /
за пределами / var / www /
).
Если вы используете группы, вы можете добавить своего обычного пользователя в группу apache.
И я бы сам не использовал администратора, а выделенного пользователя только для поддержки сайта. Сохраняйте администратора для экстренных случаев и настройки.