На самом деле это зависит от плагинов, которые вы планируете использовать, так как некоторые плагины изменяют корневой документ WordPress. но обычно я рекомендую что-то подобное для каталога WordPress.
Это назначит «root» (или любого другого пользователя, которого вы используете) как пользователя в каждом отдельном файле / папке, R означает рекурсивный, поэтому он не останавливается на папке «html». если вы не использовали R, то это применимо только к каталогу "html".
sudo chown -R root:www-data /var/www/html
Это установит владельца / группу «wp-content» на «www-data», что позволит веб-серверу устанавливать плагины через панель администратора.
chown -R www-data:www-data /var/www/html/wp-content
Это установит разрешение для каждого отдельного файла в папке «html» (включая файлы в подкаталогах) равным 644, поэтому посторонние люди не могут выполнить любой файл, изменить любой файл, группа не может выполнить любой файл, изменить любой файл и только пользователю разрешено изменять / читать файлы, но даже пользователь не может выполнить ни один файл. Это важно, потому что это предотвращает любое выполнение в папке «html», а также потому, что владельцем папки html и всех других папок, кроме папки wp-content, являются «root» (или ваш пользователь), www-data может ' • изменить любой файл за пределами папки wp-content, поэтому, даже если на веб-сервере есть какая-либо уязвимость, и если кто-то получил к нему несанкционированный доступ, он не сможет удалить основной сайт, кроме плагинов.
sudo find /var/www/html -type f -exec chmod 644 {} +
Это ограничит разрешение доступа к «wp-config.php» пользователю / группе с rw-r ----- этими разрешениями.
chmod 640 /var/www/html/wp-config.php
И если плагин или обновление жаловались, что он не может обновиться, то получите доступ к SSH и используйте эту команду, а также предоставьте временное разрешение на «www-data» (веб-сервер) для обновления / установки через панель администратора, а затем вернитесь вернуться к «root» или вашему пользователю, как только он будет завершен.
chown -R www-data /var/www/html
А в Nginx (такая же процедура для apache) для защиты папки wp-admin от несанкционированного доступа и зондирования. apache2-utils необходим для шифрования пароля, даже если у вас установлен nginx, пропустите c, если вы планируете добавить больше пользователей в тот же файл.
sudo apt-get install apache2-utils
sudo htpasswd -c /etc/nginx/.htpasswd userName
Теперь посетите это место
/etc/nginx/sites-available/
Используйте эти коды для защиты папки «wp-admin» паролем, теперь она спросит пароль / имя пользователя, если вы попытались получить доступ к «wp-admin». обратите внимание, здесь вы используете файл ".htpasswd", который содержит зашифрованный пароль.
location ^~ /wp-admin {
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/.htpasswd;
index index.php index.html index.htm;
}
Теперь перезапустите nginx.
sudo /etc/init.d/nginx restart