Создание и защита сайта средствами CMS WordPress

Авторы учебного курса:
Перминов Павел Андреевич,
студент гр. ЗКТ-402С ФГАОУ ВО «РГППУ»
Власова Наталья Сергеевна,
доцент кафедры информационных систем и технологий РГППУ




Урок 5. Настройка безопасности

Цель:

Настроить безопасность сайта

Задачи:

• Научиться добавлять безопасную учетную запись
• Научиться редактировать код
• Научиться работать с файловой системой CMS WordPress

1. Использование нестандартных учетных данных для входа

Не стоит использовать admin, как имя администратора.
Стандартная учётная запись упрощаете процесс взлома админ-панели сайта WordPress. Необходимо изменить имя пользователя администратора или создать новую учетную запись администратора с другими данными. Для этого:

1) входим в админ-панель WordPress (рисунок 1);

Картинка

Рисунок 1 - Админ-панель WordPress

2) переходим в раздел Пользователи и нажмимаем кнопку Добавить нового (рисунок 2);

Картинка

Рисунок 2 - Добавить нового пользователя

3) создаём нового пользователя и назначаем ему права Администратора;

Картинка

Рисунок 3 - Ввод учётных данных нового пользователя

РЕКОМЕНДАЦИЯ: если Вы указываете Имя пользователя и пароль не единтичный данному пункту, то необходимо его запомнить/записать.
Восстановление через E-mail не возможно, так как сайт расположен на локальном сервере и соответственно не подключен к почтовому серверу.

4) Перезаходим в WordPress с новыми данными;
5) возращаемся в раздел Пользователи и удаляем стандартную (старую) учетную запись администратора locadm (рисунок 3).

Картинка

Рисунок 4 - Удаление учётной записи admin

2. Отключение отправки отчетов об ошибках PHP

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

Необходимо это исправить. Для этого редактируем код в файл wp-config.php. Данный файл в нашем случаи расположен на локальном хосте mysite.ru\www (рисунок 5).

Картинка

Рисунок 5 - Wp-config.php

Находим строчку:

define('WP_DEBUG', false);

Удаляем её и пишем две новые строчки:

error_reporting(0);
@ini_set(‘display_errors’, 0);

В результате должен получиться код, изображенный на рисунке 6. После чего сохраняем изменения.

Картинка

Рисунок 6 - Отключение отправки отчетов об ошибках PHP

3. Выключение редактирования файлов

WordPress имеет встроенный редактор, который позволяет редактировать PHP файлы. Эта функция настолько же полезна, насколько она может нанести вред. Если хакеры получат доступ к админ-панели, первая вещь, на которую они обратят внимание, это Редактор Файлов. Некоторые пользователи WordPress предпочитают полностью выключить эту функцию. Она может быть выключена редактированием вновь файла wp-config.php, путем добавления туда следующего кода:

define( 'DISALLOW_FILE_EDIT', true );

В результате должен получиться код, изображенный на рисунке 7. После чего сохраняем изменения.

Картинка

Рисунок 7 - Выключение редактирования файлов

Удаление readme.html и license.txt

Файлы readme.html и license.txt присутствуют в корневой папке любой установки WordPress. Эти файлы не имеют важности для сайта, а хакерам они могут облечить их злодеяния. Например, чтобы выяснить текущую версию вашего WordPress и много чего другого полезного для взлома веб-сайта. 

Переходим в каталог с файлами и удаляем файлы (рисунок 8)

Картинка

Рисунок 8 - Удаление readme.html и license.txt

5. Удаление неиспользуемых шаблонов и плагинов

Сделайте уборку вашего сайта на WordPress и удалите все неиспользуемые шаблоны и плагины. Хакеры часто используют отключенные и устаревшие шаблоны и плагины (даже официальные плагины WordPress) для получения доступа к вашей панели управления, или загрузки вредоносного содержимого на ваш сервер. Удаляя плагины и шаблоны, которые вы перестали использовать (и возможно забыли обновить) давным давно, вы снижаете риски и делаете ваш сайт на WordPress более безопасным.

Переходим в админ-панель и открываем раздел Внешний вид –Темы (Рисунок 9)

Картинка

Рисунок 9 - Установленные темы

Наведите курсор мыши на блок с темой, которую требуется удалить. В нашем случаи это все темы, кроме активной (текущей) GeekVillage.
При наведении появится кнопка Информация о теме, при нажатии на которую открывается тема и доступны дополнительные функции (Рисунок 10)

Картинка

Рисунок 10 - Удаление темы

В появившемся окне помимо кнопок Активировать и Просмотреть присутствует кнопка Удалить. При нажатии появляется запрос на подтверждение действия. Соглашаемся с удалением – выбранный шаблон больше не появится в окне админки с общим перечнем установленных тем, а ее папка удалится на сервере.

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

Для этого:
1) переходим на сервер, где хранится сайт, в нашем случаи это каталог: mysite.ru
2) В каталоге вашего сайта зайдите в папку wp-content и найдите в ней подпапку themes (рисунок 11)

Картинка

Рисунок 11 - Удаление темы по FTP

3) Внутри папки themes хранятся каталоги со всеми установленными темами. Выберите ненужные темы и удалите папки с их названиями.

Вопросы для самоконтроля.

1. Не рекомендуется использовать стандартную учетную запись ____
2. Отправку отчетов об ошибках PHP требуется ______
3. Добавление кода: "define( 'DISALLOW_FILE_EDIT', true )" выключит ______
4. Файл license.txt рекондуется ______
5. Если не актуальная/не используемая тема не удаляется через админ-панель, то необходимо _____