Закрыть доступ к файлу nginx
Хочу поделится комплексом мер по защите WordPress в Nginx. При все своей простоте, данные рекомендации помогут противостоять сбору информации о установленном движке и используемых плагинов, а также защитят от некоторых типов атак.
Используя стандартные архитектурные особенности движка WordPrees и популярных плагинов, злоумышленники путем специально сформированного запроса могут получить информацию о версии используемой СMS и используемых плагинов. Для того чтобы на основе этой информации использовать известные уязвимости в плагинах или устаревшей версии WordPress.
Защита WordPress в Nginx
Не стоит беспечно наедятся на качество кода WordPress и быстрый выпуск заплаток, которые устранят известные уязвимости движка. Что бы защитить WordPress от потенциальных методов взлома, нужно закрыть доступ к следующим служебным файлам и директориям WordPress:
- Каталог wp-includes . Содержит в себе все основные и необходимые файлы для работы фронтэнда WordPress. Папка содержит файлы PHP, CSS и JavaScript, которые обеспечивают основные функции WordPress.
- Каталоги uploads , themes и plugins , которые находятся в папке wp-content . Папки используются для загрузки изображений, шаблонов и плагинов WordPress.
Запретить доступ к php-файлам в wp-includes
Чтобы запретить доступ к php-файлам wp-includes , необходимо использовать следующие правила в настройках Nginx:
Этот каталог всегда расположен в корне WordPress, изменять название или расположение не рекомендуется.
Запретить доступ к php-файлам в wp-content
Чтобы запретить доступ к php-файлам wp-content , необходимо использовать следующие правила в настройках Nginx:
При желании вы можете изменить расположение каталога wp-content , для этого необходимо использовать параметры WP_CONTENT_DIR и WP_CONTENT_URL в файле wp-config.php
Запретить доступ к php-файлам в папке uploads
Чтобы запретить выполнение php-файлов в каталоге загрузок wp-content , следующие правила в настройках в настройках Nginx:
По умолчанию каталог с загружаемыми файлами расположен в wp-content , но при желании может быть изменен в настройка WordPress.
Запретить доступ к php-файлам в папках themes и plugins
Чтобы запретить доступ к php-файлам шаблона и плагинов, необходимо добавить соответствующие правила в настройках Nginx.
Для каталога шаблонов:
Для каталога плагинов:
Каталоги шаблонов и плагинов WordPress расположены в папке wp-content и имеют название themes и plugins соответственно. Вы можете самостоятельно задать расположение папки плагинов, задав параметры WP_PLUGIN_DIR и WP_PLUGIN_URL . Для того чтобы изменить расположение файлов темы, необходимо использовать функцию register_theme_directory() .
Запретить доступ к xmlrpc.php
Если вы не используете XML-RPC, можно закрыть все запросы к этому файлу в Nginx:
Читайте также: