Руководство по установке правильных прав доступа к файлам и владельцам для WordPress
Опубликовано: 2021-10-18
Когда дело доходит до повышения безопасности веб-сайта WordPress, установка плагинов безопасности обычно считается передовой практикой, которой должен следовать каждый веб-сайт WordPress. Однако люди не уделяют особого внимания настройке прав доступа к файлам и праву собственности на сайт WordPress.
Но помните, что права доступа к файлам и право собственности являются важными элементами, которые помогают обеспечить общую безопасность веб-сайта. А их неправильная настройка может привести к фатальным ошибкам, поставить под угрозу безопасность вашего сайта и сделать его уязвимым для атак.
В этом посте я подробно расскажу о настройке прав доступа и владельцев файлов на сайте WordPress: что именно мы подразумеваем под разрешениями и владельцами файлов и как их правильно настроить.
Я также поделюсь с вами различными типами конфигураций файлов WordPress и их отличиями друг от друга.
Использование терминала для изменения разрешений и прав собственности через FTP-клиент
Когда вы читаете этот пост, в нескольких разделах вы обнаружите, что терминал используется для изменения разрешений и владельцев.
Но, вероятно, некоторые из вас могут задаться вопросом, почему вы не можете использовать FTP-клиент для удовлетворения такой потребности? Причина, по которой мы не будем использовать FTP-клиент, заключается в том, что он имеет определенные ограничения.
Что интересно?
Хотя верно то, что FTP-клиент может помочь в передаче файлов и изменении прав доступа к файлам и папкам, он удерживает пользователей от изменения настроек прав собственности.
Теперь, прежде чем вы начнете настраивать права доступа и владельцев файлов, убедитесь, что вы вошли на свой сервер с помощью команды «SSH».
Если вы не знакомы с использованием команд Linux, вы можете лучше понять это, прочитав статью: « Введение в команды Linux. ”
Понимание разницы между группами и пользователями
Одна важная концепция, с которой вам нужно ознакомиться, прежде чем переходить к техническим вопросам, — это разница между пользователями или группами.
Это связано с тем, что и пользователи, и группы тесно связаны между собой и используются для определения разрешений.
Пользователь в основном представляет собой учетную запись, имеющую доступ к компьютерной системе, а также группу, которая помогает идентифицировать набор пользователей.
Это означает, что всякий раз, когда вам нужно передать свои файлы с помощью FTP-клиента, вам нужно будет войти в систему на своем основном сервере — используя свою учетную запись пользователя. И в зависимости от того, как ваш веб-хост настроил вашу учетную запись пользователя, вы можете быть частью одной или нескольких групп.
По сути, вы можете рассматривать «Пользователей» и «Группы» как роли пользователей WordPress. Обе эти концепции одинаковы в контексте, однако первая используется на сервере.
Что делает пользователей и группы важными, так это то, что они помогают распознавать права доступа к файлам и папкам.
Любой пользователь, являющийся владельцем определенного файла, обычно имеет полные права доступа к этому файлу; несколько других пользователей, принадлежащих к той же группе, что и владелец, будут иметь меньшие права доступа к файлу. Наконец, у всех остальных не будет никаких прав на файл.
Что именно означают права доступа к файлам?
Итак, теперь, когда вы узнали о нескольких основных аспектах прав доступа к файлам и владельцах, давайте теперь поговорим о том, что именно мы подразумеваем под разрешениями файлов WordPress.
Проще говоря, разрешение — это то, что дает пользователям право читать, писать, изменять и получать доступ к различным файлам и каталогам, принадлежащим веб-сайту.
В WordPress разрешение обычно обозначается набором различных чисел, например: 644 или 777. Эти числа также называются «режимом разрешения».
Если вы программист и раньше работали с файлами и плагинами WordPress, то вы, скорее всего, сталкивались с ситуацией, когда: определенная программа запрашивает изменение разрешений, связанных с некоторыми конкретными файлами и каталогами, поскольку они не могут быть настроены с помощью плагин.
Проще говоря, чтобы дать вашему веб-серверу возможность доступа к чему-либо из файла, вам необходимо изменить разрешение файла.
Часто режим разрешений в WordPress упоминается как утверждение: «кто может что делать», в котором каждое числовое значение (режима разрешения) представляет часть «кто» этого утверждения.
- Первое числовое значение соответствует тому, что может делать учетная запись пользователя, владеющая файлом.
- Второе число
значение соответствует тому, что могут делать все другие учетные записи пользователей, входящие в группу, владеющую файлом. - Третье числовое значение представляет
что могут делать оставшиеся учетные записи пользователей.
Далее, в режиме разрешений числа обозначают
«что» часть оператора программирования и в основном представляет собой «сумму комбинаций» следующих цифр:
- 4: Прочитайте файл или множество разных имен файлов, помещенных в определенную папку.
- 2: Запишите файл или измените его, или разрешите изменять содержимое определенной папки.
- 1: Исполняет файл или запускает его, или помогает предоставить доступ к файлам внутри определенной папки.
Вышеупомянутые цифры на самом деле являются привилегиями, которые связаны с частью «кто» режима разрешений.
Примечание. Разрешения могут различаться от одного хоста к другому.

Понимание того, как следует изменять режимы разрешений
FTP-клиент предоставляет интерфейс, который позволяет очень удобно изменять права доступа ко всем файлам и папкам. Интерфейс FTP-клиента выглядит примерно так:
Вы даже можете вносить изменения в режим разрешений файлов вашего веб-сайта WordPress с помощью терминала сервера, но у вас должен быть доступ к терминалу. Помимо доступа к терминалу, вы также можете использовать команду «chmod» для внесения желаемых изменений в режимы разрешений конкретного файла:
судо чмод 644
Теперь, чтобы внести изменения во все файлы (и папки) вашего сайта, вам нужно будет использовать команду chmod вместе с командой find следующим образом:
судо найти . -type f -exec chmod 644 {} +
Взгляд на конфигурации сервера WordPress
Прежде чем вы начнете вносить изменения в права доступа к файлам WordPress, вам очень важно сначала ознакомиться с процессом настройки сервера.
Вы можете найти множество различных конфигураций сервера, для которых требуется отдельный набор режимов разрешений, чтобы сайт WordPress работал правильно и безопасно.
Но я поделюсь только двумя наиболее важными и часто используемыми конфигурациями и тем, как вы можете установить правильные права доступа к файлам для этих конфигураций.
1. Стандартная конфигурация сервера. Эта конфигурация WordPress не имеет никакой связи между учетной записью пользователя и веб-сервером.
Это связано с тем, что конфигурация требует, чтобы веб-сервер работал как любая другая учетная запись пользователя.
Прежде чем мы начнем процесс настройки разрешений для файлов для стандартной конфигурации сервера, мы должны внести некоторые коррективы в права собственности на файлы и папки с учетом следующих соображений:
- ваша учетная запись пользователя должна владеть всеми файлами и папками установки WordPress.
- ваша учетная запись пользователя и другая учетная запись пользователя вашего веб-сервера должны быть частью одной и той же группы.
Вы можете узнать группу, с которой связаны ваши учетные записи пользователей, используя команду «groups» в терминале вашего сервера. И, чтобы выяснить группы, частью которых является ваш веб-сервер, используйте следующий PHP-скрипт:
эхо-исполнение('группы');
Если вы столкнулись с ситуацией, когда ваш пользователь и веб-сервер принадлежат к другой группе, вы можете добавить пользователя в любую группу вашего веб-сервера, используя приведенную ниже команду в терминале:
sudo usermod -a -G <a-имя-группы> моя группа
Чтобы убедиться, что ваша учетная запись пользователя имеет доступ ко всем вещам в вашей папке WordPress и принадлежит к недавно созданной общей группе, просто запустите указанную ниже команду в папке вашей установки WordPress:
судо найти . -exec chown mygroup:a-имя-группы {} +
Соблюдение всех вышеупомянутых команд гарантирует, что все файлы и папки вашего сайта WordPress имеют правильную собственность.
Наконец, все, что вам нужно сделать, это настроить режим доступа к файлам и папкам. Для этого необходимо помнить о следующих ключевых моментах:
- Все файлы должны иметь режим разрешений 664.
- Все папки должны иметь режим разрешений 775.
- Режим разрешений файла wp-config.php должен быть 660.
Используйте либо FTP-клиент для изменения режимов разрешений, либо просто используйте приведенные ниже команды в каталоге установки WordPress для удовлетворения таких потребностей:
судо найти . -type f -exec chmod 664 {} +
судо найти . -type d -exec chmod 775 {} +
судо chmod 660 wp-config.php
2. Конфигурация общего сервера (или SuEXEC): по сравнению со стандартной конфигурацией сервера WordPress разрешения для конфигурации общего сервера могут быть реализованы гораздо проще.
Это связано с тем, что нам не нужно акцентировать внимание на настройке владельца, поскольку файлы и папки принадлежат веб-серверу. Это означает, что и наша учетная запись пользователя, и веб-сервер являются владельцами и имеют одинаковые привилегии.
Итак, все, что нам нужно сделать, это изменить режимы разрешений, учитывая следующие ключевые моменты:
- все файлы должны быть 644.
- все ваши папки должны быть 755.
- И режим разрешения файла wp-config.php должен быть 600.
Чтобы изменить права доступа к файлам и папкам, просто используйте следующие команды в каталоге вашего сайта WordPress:
судо найти . -type f -exec chmod 644 {} +
судо найти . -type d -exec chmod 755 {} +
судо chmod 600 wp-config.php
Заключительные слова
Еще одна важная вещь, которую вы должны учитывать, — избегать использования режима разрешений «777», поскольку он позволяет любому получить доступ к списку файлов и позволяет вносить изменения в любой файл в папке.
Совершенно очевидно, что предоставление прав доступа к файлу всем плохо для безопасности вашего сайта, поскольку злоумышленники могут поместить в файл код, который может поставить под угрозу безопасность вашего сайта.
Надеюсь, что этот пост поможет вам лучше понять, как правильно настроить права доступа к файлам и владельцам вашего веб-сайта WordPress.
Биография автора:
Джек Колдер — мастер технологий веб-разработки. Он успешно завершил так много проектов в срок. В настоящее время он является поставщиком услуг преобразования PSD в WordPress для некоторых потенциальных клиентов тем SKT.