Як і навіщо вмикати та вимикати 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 в 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” > “Брандмауер”.
- Знайдіть розділ 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, зберігаючи при цьому необхідну вам функціональність.