Существует множество способов защитить ваш веб-сайт на базе WordPress от взлома. Оптимизация wp-config.php можно считать важной частью правильной стратегии безопасности. Конечно, сайт не превратится в Банк Англии, но вы немного усложнили задачу хакерам.
Для оптимизации wp-config.php используются так называемые константы. В WordPress есть много констант, которые можно использовать. Но что такое константа? PHP.net описывает константы следующим образом:
Константа — это идентификатор (имя) простого значения. Как следует из названия, это значение не может измениться во время выполнения скрипта (за исключением магических констант, которые на самом деле не являются константами). Константа по умолчанию чувствительна к регистру. По соглашению идентификаторы констант всегда пишутся в верхнем регистре.
Константы встроены в функцию define() и выглядят следующим образом: define('NAME_OF_THE_CONSTANT', value);
wp-config.php — это управляющий файл для WordPress. Он загружается перед всеми остальными файлами, потому что WordPress необходимо установить соединение с базой данных. Необходимая информация находится в config-файле. При изменении значения константы или добавлении константы вы также меняете поведение WordPress.
Перед работой: Пожалуйста, создайте резервную копию
Перед тем, как отредактировать wp-config.php, создайте резервная копия этого файла. Ваш сайт не будет работать с неправильными или отсутствующими данными.
Важно: всегда немедленно обновляйте WordPress и плагины
Вы, наверное, слышали это уже пару раз. Но этот аспект настолько важен, что я не могу повторять его достаточно часто. Тонны веб-сайтов были взломаны, потому что WordPress или плагины не были обновлены. Обновления — лучшая страховка от взлома!
Текущая ситуация с безопасностью:
Специалисты по безопасности Sucuri в настоящее время предупреждают об уязвимости в популярном плагине Jetpack для WordPress. Вредоносный код может быть реализован с помощью функции встраивания шорткода. Automattic действительно скоро отреагирует и выпустит новую версию.
Как закрыть брешь в безопасности на данный момент:
Если вы используете мой «оптимальный файл .htaccess», вам ничего не угрожает. Там отличный брандмауэр 6G, который может отразить атаки такого типа.
Подготовка:
Для всей последующей работы вам понадобится FTP-программа, а также HTML-редактор. Файл wp-config.php загружается на рабочий стол, редактируется в редакторе HTML, а затем загружается обратно на сервер.
1 — Используйте ключи безопасности
Ключи безопасности в WordPress имеют решающее значение, поскольку они шифруют такие вещи, как, например, данные для входа в файлы cookie. Даже когда ваш wp-config.php уже есть ключи безопасности, сменить их не помешает. Когда ключи изменены, все еще незавершенные входы в систему ваших пользователей выходят из системы. Впоследствии вы сможете регулярно входить в систему, используя свое имя пользователя и пароль.
Однако, если вас уже взломали, вам следует сначала удалить вредоносный код со своего веб-сайта. Руководство по этому вопросу можно найти в дополнительной информации по этому аспекту. После этого посетите генератор ключей безопасности WordPress и скопируйте новый набор. Замените старые детали на новые — см. скриншот:
Если вы еще не внедрили ключи безопасности, самое время это сделать.
Дополнительная информация:
2 — Принудительно использовать HTTPS
SSL-сертификат шифрует соединение между вашим сайтом и браузерами посетителей. HTTPS делает невозможным перехват и кражу личных данных хакерами. Если у вас уже есть SSL-сертификат для вашего веб-сайта, вы можете принудительно использовать HTTPS вместо HTTP. Это значительно повышает безопасность вашего сайта. Если у вас еще нет SSL-сертификата, настоятельно рекомендуем его использовать.
Вам не нужно бояться больших затрат, так как SSL также доступен бесплатно.
Следующие записи следует использовать, если ваш веб-сайт уже использует SSL. Самая верхняя запись предназначена для защищенного входа в систему, а самая нижняя заставляет браузер сделать область администрирования WordPress доступной только для SSL.
https://gist.github.com/anonymous/712f774fc40c460a7aedc45a6dead338
3 — Изменить префикс базы данных
Префикс базы данных также известен под меткой «префикс таблицы». Этот префикс используется как расширение каждой таблицы базы данных, созданной WordPress. Здесь стандарт такой wp_. Этот стандарт следует изменить на что-то другое. Чем загадочнее, тем лучше. Не волнуйся; вам не нужно помнить, что вы вводите здесь. Это значение размещается только один раз.
Если подумать, вероятность SQL-инъекции маловероятна. Но это возможно. Таким образом, измените значение перед установкой WordPress. Используйте что-то вроде hdr7rf_например.
Внимание: если вы измените значение уже существующей установки WordPress, веб-сайт больше не будет доступен!
Если вы хотите изменить префикс таблицы существующего веб-сайта WordPress, вам может помочь плагин Acunetix WP Security. Это позволяет легко изменить значение, и все, что вам нужно сделать после этого, — это снова войти в систему. Тем не менее, вам все равно следует заранее создать резервную копию в.
4 — Отключить редактор плагинов и тем
В каждой установке WordPress можно редактировать файлы тем и плагинов непосредственно в области администрирования. В пунктах меню «Дизайн» и «Плагин» вы найдете соответствующий редактор для каждого файла. Этот редактор очень опасен, если попадет в руки хакеру. Данные могут быть уничтожены, а к ним могут добавиться вирусы, трояны, спам и другие вредоносные программы. Но редактор также важен для администратора веб-сайта. Одна ошибка, одна пропущенная точка с запятой — все, что нужно, чтобы появились печально известные белые страницы, и ничего больше не будет работать.
Изменения в файлы тем или плагинов обычно вносятся через (S)FTP, так как это намного безопаснее. Таким образом, редакторы должны быть деактивированы. Одной строчки в wp-config.php достаточно, чтобы безопасно отключить оба редактора:
https://gist.github.com/anonymous/0ba02504a6a6c771058b34053ec10066
5 — Переместите файл wp-config.php
wp-config.php — это сердце вашего сайта. Все соответствующие данные, включая пароли базы данных, вводятся туда. Вот почему крайне важно сохранить этот файл как можно более безопасным. Для этого есть два подхода. Первый — блокировка доступа через .htaccess-файл. Второй подход перемещает файл в другое место, где хакер его не ожидает.
- Переместить его может быть проблематично, если сайт находится в субиндексе, а вы используете дешевый виртуальный хостинг.
- Это также может стать трудным, если у вас много веб-сайтов в пользовательских каталогах. Если ни одно из созвездий к вам не относится, вы можете переместить файл.
https://gist.github.com/anonymous/faec409f9e620c55f01ce7356b311fec
Если вы правильно указали путь к файлу wp-config.php, после этого ваш сайт должен работать.
6 — Принудительное использование FTPS
Если ваш веб-хост активировал безопасный протокол передачи файлов (FTPS), вы можете принудительно использовать FTPS для передачи файлов. Это зашифрует соединение между посетителем и вашим сервером. Теперь невозможно получить доступ к данным на сервере с небезопасным FTP-протоколом. FTP небезопасен, так как информация о доступе передается на ваш сервер в незашифрованном виде. Поэтому по возможности используйте только безопасное соединение через FTPS. Ваш веб-хост может сообщить вам, возможно ли FTPS-соединение.
Принудительно использовать FTPS очень просто:
https://gist.github.com/anonymous/dee35fd75287505b9301e069d9eac832
7 — Принудительное использование SFTP
Вместо протокола FTPS некоторые хостеры активировали для передачи данных протокол SFTP. Здесь соединение между FTP-программой пользователя и сервером также шифруется. Следующая строка кода позволяет принудительно использовать SFTP:
https://gist.github.com/anonymous/3bc66a7c7c3abedeccb3805827be5e45
8 — Деактивация режима отладки
Если вы активировали режим отладки WordPress для целей разработки, очень важно отключить его. В некоторых случаях активированный режим отладки может передавать конфиденциальные данные, которые могут помочь хакерам выполнить свою работу. Вот почему активированный режим отладки чрезвычайно опасен в работающей системе. Я уже сделал эту маленькую глупую ошибку; люди быстро забывают вещи. Вот почему вы должны бросить быстрый взгляд, просто чтобы проверить. Вот как деактивировать режим отладки:
https://gist.github.com/anonymous/521df173573afc7da42cf73a94cba38e
9 — Отключить отображение ошибок PHP
Если по какой-то причине вам нужно активировать режим отладки, рекомендую отключить публичное отображение сообщений об ошибках. Соответствующие сообщения об ошибках также могут быть записаны в журнал, недоступный для публики. Это гораздо более безопасный и элегантный вариант. Эта константа необходима, чтобы оставить режим ошибок WordPress включенным и подавить общедоступное отображение ошибок:
https://gist.github.com/anonymous/5b56f92bd64285d5e1d304e2ec864d19
10 — Включите автоматические обновления
Как я уже упоминал ранее, немедленное обновление ядра WordPress и всех плагинов имеет решающее значение для безопасности системы. С каждым выпуском новой версии WordPress обнародуются пробелы в безопасности ее предшественников. Это дает хакеру прочную основу для взлома вашего сайта. Таким образом, эти недостатки должны быть устранены как можно быстрее.
Начиная с версии WordPress 3.7, небольшие обновления безопасности выполняются автоматически. Однако это не относится к основным версиям обновлений ядра. Основные версии по-прежнему необходимо обновлять вручную. Однако активировать автоматические обновления для всех версий WP очень просто:
https://gist.github.com/anonymous/a40a17173a2f2ac1f28b12862f0f8ad5
Кстати, также можно сделать так, чтобы плагины обновлялись автоматически. Однако это связано с небольшой работой. Требуется создание плагина:
https://gist.github.com/anonymous/2c5829ebdacdb86935c5e056b56ea552
Этот плагин нужно переместить в папку /wp-контент/мю-плагины/. Если папки не существует, просто создайте ее. Папка /mu-plugins/ содержит «обязательные» плагины. Его содержимое загружается всеми другими плагинами.
Таким же образом можно сделать автоматическое обновление темы. Для этого плагин необходимо расширить следующей строкой:
https://gist.github.com/anonymous/59e2fcf9aa5a73ea4188d4c7c110c57b
Пожалуйста, заранее узнайте об этих автоматических плагинах и используйте код, только если вы точно знаете, что он делает. Конечно, два фильтра могут обновлять только те плагины и темы, которые взяты из официального индекса WordPress. Темы и плагины из другого источника не будут обновляться.
Дополнительная информация:
Кодекс WordPress: необходимо использовать плагины
Заключение
Все эти аспекты вместе уже значительно повысят безопасность вашего WordPress и должны стать частью хорошей стратегии безопасности. Тот факт, что WordPress является самой популярной в мире системой управления контентом, привлекает многих хакеров. Ситуацию можно сравнить с компьютерной ОС Windows. В Windows вы устанавливаете антивирусное программное обеспечение, а WordPress требует ручной работы. Но выигрыш в безопасности определенно компенсирует небольшие усилия.
(дпе)