Руководство по установке правильных прав доступа к файлам и владельцам для 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.