Мне известны требования, предъявляемые WP к определенным каталогам и файлам для записи. Я также знаю, что слишком свободные разрешения могут открыть дыры в безопасности. Наконец, я знаю, что пользователь (который вставляет ваш сервер здесь) работает как в системах Linux, может быть фактором.
Помимо безопасности, мне нравится загружать темы и плагины в свой блог и обновлять их при необходимости. Надлежащие разрешения, кажется, немного расходятся с этим предпочтением.
Я собрал немного деталей здесь и там, но я хотел бы увидеть более четкий ответ, если таковой будет: какая установка предпочтительнее с намеком на безопасность? Какие разрешения должны быть на месте, от какого пользователя должен работать сайт и т. Д.
Ответы:
Если у вас есть FTP-доступ к вашему серверу, самая безопасная настройка - не иметь каталог тем или плагинов, доступный для записи вашим веб-сервером, а вместо этого иметь файлы обновления WordPress с использованием FTP. Когда вы пойдете обновить плагин, WordPress запросит у вас данные FTP.
Метод FTP намного медленнее, чем прямая запись файлов, но он намного более безопасен, так как мошеннический скрипт не сможет изменить ваши файлы.
источник
Как отметил @ Viper007Bond, обновление вашего ядра, плагинов и тем через встроенные механизмы обновления является довольно безопасным с точки зрения прав доступа к файлам, поскольку они могут использовать ваши действительные учетные данные пользователя. Для максимальной безопасности вы должны убедиться, что у вас установлено расширение SSH2 PHP . Способ установки (если это возможно) может варьироваться от хоста к хосту, поэтому, если его там еще нет, вам может потребоваться обратиться к службе хостинга или выполнить поиск в Google.
Многие службы общего хостинга будут использовать
suexec
в своих настройках Apache, так что веб-служба будет работать как фактический пользователь. Это устраняет большинство проблем с разрешениями и помогает защитить ваши файлы от других пользователей на сервере. Однако в тех случаях, когда Apache работает как отдельный пользователь, если вы хотите загружать файлы в WordPress, вы должны открыть разрешения для каталога загрузки.В этом случае вы, вероятно, хотите, чтобы у вашего
wp-content/uploads
каталога были0713
разрешения (AKArwx--x-wx
). Это дает владельцу каталога полные права, его группа может читать файлы, если они знают полный путь, а другие (включая веб-сервер) могут читать файлы, к которым они знают путь, и могут создавать / записывать файлы.Некоторые плагины для кэширования также ожидают наличия
wp-content/cache
каталога (или аналогичного), в который они могут писать. Тот же совет по разрешениям будет применяться к этому.Наконец, для довольно постоянных ссылок WordPress должен иметь возможность изменять
.htaccess
файл, если вы не планируете обновить его вручную. В этом случае вы хотели бы0646
для режима файла. Однако, как только вы определитесь со структурой постоянных ссылок, вам обычно не нужно будет изменять это снова, поэтому вы можете отключить дополнительные разрешения на запись и установить для него значение0644
. Иногда для обновления плагина или ядра может потребоваться доступ к нему, и вы можете временно включить разрешения на запись для этого, а затем снова отключить его.Все остальные файлы должны иметь
0644
разрешения. Каталоги должны быть,0711
если вы чрезмерно параноидальны, но это может помешать любым плагинам, которые должны получить список файлов из каталога. В этом случае, или если вы не совсем параноик, используйте0755
, что позволит другим читать, но не писать.В основном это касается, если вы находитесь на виртуальном хостинге. Если у вас есть выделенный сервер (включая VPS), и нет других пользователей, которые имеют доступ по SSH / FTP, то вы можете немного расслабиться. Я не имею в виду, что вы должны просто сделать все открыто доступным для записи, но вы, вероятно, можете просто доверять системным настройкам по умолчанию, которые, вероятно, будут
0755
разрешениями на каталоги, а не0711
.Если это вариант, получите сертификат SSL, установленный для сайта, и после того, как вы проверили, что можете получить доступ к своему сайту через
https
, вы можете принудительно установить SSL для входа и доступа администратора, добавив эти строки в свойwp-config.php
файл, непосредственно перед ' Прекратить редактировать комментарий:источник