Как и зачем включать и отключать XMLRPC.PHP в WordPress
xmlrpc.php – это файл в WordPress, который обеспечивает удаленный доступ к вашему сайту. Он позволяет внешним приложениям, таким как мобильные приложения, сторонние инструменты и пингбэки, взаимодействовать с вашим сайтом WordPress. Хотя эта функциональность может быть полезной, она также связана с рисками безопасности, поэтому многие владельцы сайтов WordPress предпочитают отключать xmlrpc.php, когда он им не нужен.
В этом руководстве вы узнаете, что такое xmlrpc.php, почему вы можете захотеть включить или отключить его, и как это сделать безопасно.
Что такое xmlrpc.php в WordPress?
- xmlrpc.php – это основной файл WordPress, который позволяет получить удаленный доступ к вашему сайту по протоколу XML-RPC.
- Он используется для выполнения таких действий, как:
- Публикация постов из удаленных приложений.
- Удаленное управление комментариями.
- Включение пингбэков и трекбэков.
- Подключение приложений WordPress на мобильных устройствах к вашему сайту.
- Примеры использования:
- Публикация постов из мобильных приложений WordPress.
- Плагин Jetpack использует xmlrpc.php для некоторых своих функций.
- Интеграция сторонних сервисов, использующих XML-RPC для передачи данных.
Почему следует отключить xmlrpc.php?
xmlrpc.php может представлять угрозу безопасности, поэтому многие владельцы сайтов предпочитают отключать его, особенно если они не используют функции, которые зависят от него.
Общие риски безопасности, связанные с xmlrpc.php:
- Атаки грубой силы:
- Злоумышленники могут использовать xmlrpc.php для проведения атак методом грубой силы, пробуя несколько имен пользователей и паролей через XML-RPC-запросы.
- Это может быть сделано более эффективно с помощью xmlrpc.php, поскольку один запрос может попробовать несколько попыток входа.
- DDoS-атаки:
- xmlrpc.php может быть использован в распределенных атаках типа “отказ в обслуживании” (DDoS) для переполнения сайта запросами pingback, что приводит к истощению ресурсов и простоям.
- Эксплуатация Pingbacks:
- Злоумышленники могут использовать функцию pingback в xmlrpc.php для усиления DDoS-атак или генерации большого количества спама.
Когда следует включать xmlrpc.php?
- Вам следует держать xmlrpc.php включенным, если:
- Вам нужно публиковать посты из мобильного приложения WordPress.
- Вы используете плагины или инструменты, которые полагаются на XML-RPC, например Jetpack.
- Вам нужны возможности удаленной публикации через внешние сервисы.
Если вам не нужны эти функции, лучше отключить xmlrpc.php, чтобы минимизировать риски безопасности.
Как отключить xmlrpc.php в WordPress
Способ 1: Отключить xmlrpc.php с помощью плагина (рекомендуется)
Использование плагина – самый простой способ отключить xmlrpc.php, не затрагивая никакого кода.
Шаг 1: Установите плагин
- Установите плагин безопасности, например Disable XML-RPC-API или All In One WP Security & Firewall.
- Вы можете сделать это, перейдя в раздел Плагины > Добавить новый в вашей приборной панели WordPress, найти плагин и нажать кнопку Установить сейчас, а затем Активировать.
Шаг 2: Настройте плагин
- При использовании отключите XML-RPC-API:
- После активации плагина, xmlrpc.php будет автоматически отключен.
- При использовании All In One WP Security & Firewall:
- Перейдите в раздел WP Security > Firewall.
- Найдите раздел XML-RPC и отключите опции XML-RPC.
Метод 2: Отключение xmlrpc.php с помощью .htaccess (расширенный)
Если вам удобно редактировать файл .htaccess, вы можете заблокировать доступ к xmlrpc.php непосредственно на уровне сервера.
Шаг 1: Редактирование файла .htaccess
- Зайдите в корневую директорию WordPress по FTP или через файловый менеджер хостера (часто он называется public_html).
- Откройте файл .htaccess для редактирования.
- Добавьте следующий код в конец файла .htaccess:# Заблокировать весь доступ к xmlrpc.php <Файлы xmlrpc.php> Порядок Разрешить,Запретить Запретить от всех </Файлы>.
- Сохраните изменения и загрузите обновленный файл .htaccess на свой сервер.
Результат:
- Этот код предотвращает любой внешний доступ к xmlrpc.php, эффективно отключая его.
Метод 3: Отключение xmlrpc.php с помощью Functions.php (пользовательский код)
Вы также можете отключить XML-RPC через файл functions.php вашей темы.
Шаг 1: Отредактируйте файл functions.php
- Перейдите в раздел Внешний вид > Редактор темы на панели инструментов WordPress.
- Выберите файл functions.php на правой боковой панели.
- Добавьте следующий код:// Отключите XML-RPC add_filter(‘xmlrpc_enabled’, ‘__return_false’);
- Нажмите кнопку Обновить файл, чтобы сохранить изменения.
Результат:
- Этот код отключит функциональность XML-RPC в WordPress.
Метод 4: Использование настроек безопасности вашего хостера
Некоторые хостеры предоставляют возможность отключить XML-RPC через панель управления:
- Войдите в свою учетную запись хостинга.
- Найдите опции, связанные с безопасностью WordPress или настройками приложений.
- Если есть, отключите доступ к XML-RPC через панель безопасности.
Как включить xmlrpc.php в WordPress
Если вы ранее отключили xmlrpc.php и хотите включить его снова, просто проделайте обратные шаги, чтобы отключить его:
- Если вы использовали плагин типа Disable XML-RPC-API, деактивируйте или удалите плагин.
- Если вы добавили код в .htaccess или functions.php, удалите его и сохраните изменения.
- Если вы отключили XML-RPC через веб-хост, воспользуйтесь панелью управления хостингом, чтобы снова включить доступ к XML-RPC.
Резюме
xmlrpc.php в WordPress предоставляет возможности удаленного доступа, позволяя приложениям и сервисам взаимодействовать с вашим сайтом. Хотя эта функциональность может быть полезной, она также представляет риски для безопасности, такие как атаки грубой силы и DDoS-атаки. Поэтому многие владельцы сайтов предпочитают отключать xmlrpc.php, если его функции им не нужны.
Чтобы отключить xmlrpc.php, вы можете использовать плагины, добавить пользовательский код в .htaccess или functions.php или воспользоваться настройками вашего хостера. Если вам нужно снова включить xmlrpc.php, просто повторите шаги, предпринятые для его отключения. Понимание того, когда и как включать или отключать эту функцию, поможет вам обеспечить безопасность вашего сайта WordPress, сохранив при этом необходимую функциональность.