Права доступа к файлам WordPress: руководство по настройке разрешений безопасного веб-сайта и веб-сервера

Опубликовано: 2020-07-02

WordPress может работать практически на любой операционной системе, в которой работает PHP. Однако подавляющее большинство веб-сайтов WordPress работают на Linux. Поэтому важно, чтобы вы понимали права доступа к файлам в Linux.

Крайне важно правильно настроить права доступа к файлам. Установка неправильных прав доступа к файлам может открыть ваш сайт для атаки. Неверные права доступа к файлам могут позволить неавторизованным пользователям получить доступ к потенциально конфиденциальным файлам и данным. Затем такие данные можно использовать в качестве трамплина для более крупной атаки.

Администратору WordPress права доступа к файлам могут показаться немного сложными, особенно если вы новичок в Linux. Не бойся! В этом руководстве с самого начала объясняется, какие права доступа к файлам в Linux. В нем также объясняется, как права доступа к файлам Linux применяются к вашему веб-сайту WordPress.

Содержание

  • Что такое права доступа к файлам?
    • Группы разрешений
    • Типы разрешений
  • Представление разрешений
  • Рекомендуемые права доступа к файлам WordPress
  • Как исправить права доступа к файлам WordPress
    • На виртуальном хостинге
    • через FTP
    • через SSH
  • Дополнительный совет: безопасность помимо прав доступа к файлам

Что такое права доступа к файлам?

Группы разрешений

Все начинается с того , кто . Как и в любой другой операционной системе, в Linux есть понятие пользователей и групп . При определении того , кто получает доступ к файлу, каждый файл и каталог в системе Linux имеют три группы разрешений.

  • Владелец
    • У каждого файла или каталога есть владелец.
    • Разрешения владельца применяются только к владельцу файла или каталога. Они не повлияют на действия других пользователей.
  • Группа
    • Каждому файлу или каталогу может быть назначена группа пользователей, которым предоставлен доступ к ним.
    • Разрешения группы применяются только к группе, назначенной файлу или каталогу. Они не повлияют на действия других пользователей.
  • Другой
    • Каждый файл или каталог может определять, какие разрешения есть у «всех остальных». То есть, помимо владельца или группы , которую мы установили.
    • Остальные разрешения применяются ко всем другим пользователям в системе. Это группа разрешений, за которой вы хотите наблюдать больше всего, поскольку вы можете невольно разрешить доступ всем.

Типы разрешений

Теперь, когда мы знаем, как указать , кто имеет доступ к файлу или каталогу, нам нужно выбрать, какие разрешения мы даем каждому владельцу , группе и другим лицам для файлов или каталогов. Ниже приведены типы разрешений, которые мы можем предоставить группе разрешений ( owner , group , other ):

  • Читать
    • Тип разрешения на чтение относится к способности пользователя читать содержимое файла.
  • Писать
    • Разрешение на запись относится к возможности пользователя записывать и/или изменять содержимое файла.
    • Можно разрешить пользователю писать в файл, не имея возможности читать его содержимое.
  • Выполнять
    • Разрешение на выполнение влияет на возможность пользователя запускать файл, например скрипт.
    • Разрешение на выполнение также позволяет пользователю просматривать содержимое каталога.

Представление разрешений

Теперь, когда у нас есть понимание того, как работают разрешения, давайте посмотрим, как на самом деле будут представлены разрешения Linux. Права доступа к файлам хранятся в виде серии из 3 чисел. Тем не менее, они также могут быть представлены в виде букв, что делает их немного более удобными для чтения. Давайте сначала разберемся, что означают эти цифры.

  1. Первый номер
    • Разрешения, предоставленные владельцу
  2. Второй номер
    • Разрешения, предоставленные группе
  3. Третий номер
    • Разрешения, предоставленные другим (всем остальным, кроме владельца и группы )

Каждое число соответствует комбинации одного или нескольких типов разрешений, которые мы обсуждали ранее. Понять это намного легче, когда визуализируешь. Каждый тип разрешений имеет вес , который суммируется для каждой группы разрешений .

Разрешения для файлов и каталогов Linux

Смущенный? Может потребоваться некоторое время и некоторая практика, чтобы понять это. А пока вот таблица всех возможных прав доступа к файлам, которые вы можете назначить каждой группе разрешений .

Число Буквы Описание
0 (0+0+0) --- Нет доступа
1 (0+0+1) --Икс Выполнять
2 (0+2+0) -ш- Писать
3 (0+2+1) -wx Написать и выполнить
4 (4+0+0) р-- Читать
5 (4+0+1) прием Читать и выполнять
6 (4+2+0) RW- Прочти и напиши
7 (4+2+1) RWX Читать, писать и выполнять

Чтобы увидеть конкретный пример, разрешение файла 644 означает

  • разрешение владельца на чтение и запись файла или каталога
  • группа имеет разрешение на чтение файла или каталога
  • другой имеет разрешение на чтение файла или каталога

Разрешения файла 644 объяснил

Обычно вы видите эти значения, представленные без пробелов между ними и с дополнительным - или d в начале. - обозначает обычный файл. d обозначает каталог. Ниже приведен пример использования команды Linux ls -la для отображения списка файлов в каталоге.

 $ лс -ла
всего 0
drwxr-xr-x 4 группа пользователей 128 25 мая 23:25 .
drwxrwxrwt 8 корневое колесо 256 25 мая 23:25 ..
drwxr-xr-x 2 группа пользователей 64 25 мая 23:25 каталог
-rw-r--r-- 1 группа пользователей 0 25 мая 23:25 файл.txt

Рекомендуемые права доступа к файлам WordPress

Установка неверных прав доступа к файлам WordPress может привести к случайному предоставлению доступа другим пользователям, чем вы хотели. В худшем случае это может позволить злоумышленнику изменить содержимое важного файла, к которому у него не должно быть доступа. Это также может позволить любому пользователю в Интернете читать конфиденциальные файлы в вашей установке WordPress.

Вот почему вы никогда не должны устанавливать права доступа к файлам WordPress на 777 (-rwxrwxrwx). Это дало бы полный доступ для чтения, записи и выполнения любому, кто имеет возможность контролировать этот файл. Это может быть третье лицо, вносящее изменения через FTP или SSH, или злоумышленник через форму загрузки.

С другой стороны, вам нужно позаботиться о том, чтобы не делать вещи слишком ограничительными для того, чтобы WordPress мог выполнять свою работу. Так как самому WordPress, а также темам и плагинам часто потребуется безопасно вносить изменения в несколько файлов. Например, когда WordPress автоматически обновляется, чтобы защитить ваш сайт от уязвимостей безопасности.

Итак, ради аргумента, разрешение 444 (-r–r–r–) может привести к сбоям в работе вашего сайта WordPress. С 444 WordPress будет разрешено только чтение , поэтому автоматическое обновление не удастся . При этом можно запускать WordPress с правами только на чтение ( 444 , или r–r–r–). Это будет очень уверенная установка. Тем не менее, вам нужно будет принять во внимание вышеупомянутые ограничения.

Некоторые провайдеры управляемого хостинга WordPress поддерживают это из коробки. Хотя, если вы хотите запустить WordPress с такими разрешениями, сначала попробуйте его в тестовой среде.

Разрешения для файлов, рекомендуемые WordPress, следующие.

Тип Числа Буквы Описание
Каталоги 755 drwx-wx-wx Каталоги установки WordPress
Файлы 644 -rwxr--r-- Ядро WordPress, темы и плагины WordPress (для некоторых тем и плагинов могут применяться исключения)
wp-config.php 600 -rw------- Файл конфигурации WordPress
.htaccess 644 или
600
-rw-r--r--
-rw-------
Файл конфигурации HTTP-сервера Apache (может не применяться, если вы используете Nginx или веб-сервер, отличный от HTTP-сервера Apache)

Как исправить права доступа к файлам WordPress

Хотя одна среда хостинга отличается от другой, у вас всегда будет возможность контролировать права доступа к файлам WordPress.

Исправление прав доступа к файлам WordPress через панель управления общим хостингом

Если вы используете виртуальный хостинг, у вас, вероятно, будет доступ к какой-либо панели управления, такой как cPanel или Plesk. В этом случае узнайте у своего хостинг-провайдера, какие шаги необходимо предпринять для изменения прав доступа к файлам на вашем сайте WordPress.

Исправление прав доступа к файлам WordPress через FTP

Исправить права доступа к файлам WordPress можно легко с помощью FTP-клиента, такого как FileZilla или Cyberduck. Следующий скриншот из Cyberduck. Просто щелкните правой кнопкой мыши файл или каталог, для которого вы хотите изменить разрешения, нажмите « Информация » и перейдите на вкладку « Разрешения ».

Процесс аналогичен Filezilla. Щелкните файл правой кнопкой мыши, выберите «Права доступа к файлу », и вам будет представлено похожее диалоговое окно.

Изменение прав доступа к файлам с помощью FTP-клиента

Исправление разрешений WordPress через SSH

Если вы уже используете SSH-клиент, вы можете выполнить команду Linux chmod, чтобы изменить права доступа к файлам. Взяв тот же пример, что и выше, чтобы изменить разрешения wp-config.php с 644 на 600 , мы будем использовать следующие команды:

 # измените каталог на местоположение вашей установки WordPress
$ компакт-диск /var/www/html
# список сведений о файле wp-config.php
$ ls -la wp-config.php
-rw-r--r-- 1 www-data www-data 7368 2 сентября 2019 г. wp-config.php
# изменить разрешения wp-config.php с текущих 644 на 600
$ chmod 600 wp-config.php
# подтвердите свое изменение
$ ls -la wp-config.php
-rw------- 1 www-data www-data 7368 2 сентября 2019 г. wp-config.php

Правильно настроенные права доступа к файлам WordPress обеспечивают более безопасный веб-сайт.

Давайте подытожим то, что было рассмотрено. Мы увидели, что права доступа к файлам позволяют нам указать, кто и как может получить доступ к файлу или каталогу и/или изменить их в системе Linux. Мы также обсудили, как изменить разрешения как с помощью SFTP-клиента, так и через SSH. Тем не менее, самая важная вещь, которую мы обсудили, — это то, почему вы должны позаботиться о том, чтобы правильно установить права доступа к файлам на вашем веб-сайте WordPress.

Несмотря на то, что поначалу это может показаться утомительным процессом, неправильные права доступа к файлам могут привести к раскрытию конфиденциальных файлов на вашем веб-сайте WordPress. Кроме того, они могут позволить злоумышленнику превратить уязвимость с низким уровнем серьезности в более опасную при определенных обстоятельствах.

Теперь, когда вы лучше понимаете, как права доступа к файлам работают в Linux и как они влияют на безопасность вашего сайта WordPress, используйте эту информацию, чтобы усилить любые слишком либеральные права доступа к файлам WordPress.

Дополнительные советы по безопасности: помимо прав доступа к файлам WordPress

Правильные права доступа к файлам WordPress — отличное место для начала работы в отношении безопасности WordPress. Однако это далеко не единственное, о чем следует беспокоиться. Другие вещи, которые вы должны сделать, чтобы улучшить состояние безопасности вашего сайта WordPress:

  • Ведите учет всего, что происходит на вашем сайте, в журнале активности WordPress,
  • Используйте плагин мониторинга целостности файлов WordPress,
  • Применять надежные политики паролей WordPress,
  • Добавьте двухфакторную аутентификацию на свой сайт WordPress,
  • Установите брандмауэр WordPress / используйте онлайн-сервис брандмауэра WordPress.