При переносе с хостинга на хостинг, при восстановлении из резервной копии мы часто пропускаем важный с точки зрения безопасности шаг, а именно — ограничить права доступа к файлам на минимально необходимом уровне. Предоставление повышенных прав без реальной на то необходимости приводит к возникновению различного рода уязвимостям.
Недостаточные права доступа или не правильная настройка владельца файлов приводит к неочевидным проблемам в будущем: движок не сможет корректно обновиться, возможно перестанут загружаться фотографии, файлы, документы, поведение плагинов тоже может быть не предсказуемым.
Управление правами доступа к файлам осуществляется двумя linux-командами: chmod и chown. Первая меняет режим доступа к файлам, вторая назначает владельца и группу. Есть отдельные статьи, которые поясняют подробно какие есть варианты. Мы в рамках данной статьи кратко и лаконично дадим практические рекомендации, чтобы данную статью можно было добавить в избранное, а в случае необходимости, быстро найти готовые команды и выполнить поставленную задачу.
Итак, для начала надо знать, от имени какого пользователя работает web-server. Это можно посмотреть в конфиге сервера или в процессах. Чаще всего это www-data.
# Переходим в папку с установленным wordpress
cd /path/to/your/wordpress
# Рекурсивно в ней прописываем права доступа
# Чтение/Запись для владельца и Чтение для всех остальных
chmod -R 644 *
# Отдельно повышаем права на все папки
# Это требуется, чтобы в папку можно было зайти и получить список файлов
find . -type d -exec chmod 0755 {} \;
# Защищаем конфиг движка
# Чтение/Запись для владельца
chmod 600 ./wp-config.php
# Рекурсивно задаем владельца и группу для всех файлов-папок
chown -R www-data:www-data *
Настройка завершена. Вордпресс говорит вам Спасибо за заботу.