آموزش غیر فعال کردن پروتکل XML-RPC در وردپرس

صفحه اصلی / سیستم های مدیریت محتوا / آموزش وردپرس / آموزش غیر فعال کردن پروتکل XML-RPC در وردپرس

پرتوکل XML-RPC برای مدت زیادی به دلایل امنیتی مختلف در وردپرس به طور پیشفرض غیر فعال بود تا اینکه از نسخه ۳.۵ وردپرس به بعد وضعیت تغییر کرد و XML-RPC به طور پیشفرض در وردپرس فعال شد و قابلیت غیر فعال کردن آن توسط داشبورد وردپرس حذف شد. در این مطلب ما به شما نشان خواهیم داد که چگونه پرتوکل XML-RPC را در وردپرس غیر فعال کنید و در مورد دلیل فعال کردن این قابلیت به صورت پیشفرض بیشتر صحبت خواهیم کرد.

stop-xml-rps-bfa

XML-RPC چیست؟
XML-RPC یک پروتکل فراخوانی دستور از راه دور است که اطلاعات را از طریق XML با استفاده از پروتکل http منتقل می کند. به بیانی دیگر XML-RPC سیستمی است که امکان ایجاد پست در وبلاگ وردپرس با استفاده از نرم افزار های وبلاگ نویسی مانند Windows Live Writer را علاوه بر استفاده از تلفن همراه و دستگاه های مشابه جهت دسترسی به وبلاگ و انتشار مطالب از راه دور را فراهم می کند.درگذشته نگرانی های امنیتی زیادی در ارتباط با XML-RPC وجود داشت که منجر به حذف این قابلیت به طور پیشفرض شد اما امروزه با توجه به استفاده روز افزون از تلفن های هوشمند، مجددا فعال گردیده است.
متاسفانه اخیرا گزارش های نا امید کننده ای در خصوص سیستم مدیریت محتوا WordPress دریافت شده است که یکی از آن ها ایجاد حملات DDOS به سمت فایل xmlrpc.php می باشد.

روش های غیر فعال کردن XML-RPC:

1- حذف فایل xmlrpc.php
با حذف این فایل تمامی مراجعات با شکست مواجه می شود اما اجرای این روش توصیه نمی شود!
2- غیرفعال کردن XML-RPC و Pingback با استفاده از functions.php
به مسیر بارگذاری قالب وبسایت مراجعه نموده و کد زیر را به انتهای فایل functions.php اضافه کنید.
(فایل مذکور معمولا در مسیر زیر wp-content/themes/yourtheme/functions.php از هاست شما بارگذاری شده است.)

 

3- نصب افزونه های Disable XML-RPC و XML-RPC Pinkback
با استفاده از این افزونه ها نیز می توانید بدون نیاز به وارد کردن کد های بالا XML-RPC را غیرفعال کنید.

دریافت افزونه Disable XML-RPC
دریافت XML-RPC Pinkback

 

4- محدود کردن دسترسی به XML-RPC در فایل htaccess.
فایل htaccess. موجود در public_html یا مسیر اصلی هاست را باز نموده و کد زیر را در ابتدای آن قرار دهید.

با این روش که یکی از بهترین موارد است دسترسی به فایل xmlrpc.php که مورد حمله قرار گرفته قطع خواهد شد.

 

5- محدود کردن دسترسی در Apache
ممکن است شما از یک سرور مجازی یا اختصاصی که حاوی تعداد زیادی اکانت WordPress می باشد، استفاده می فرمایید در این صورت انجام روش قبل بسیار زمانبر و طولانی خواهد بود.
در این شرایط می توانید با استفاده از دسترسی root و SSH کد زیر را در ابتدای فایل کانفیگ Apache قرار دهید.
(در سرور های cPanel این فایل در مسیر usr/local/apache/conf/httpd.conf/ می باشد.)

با استفاده از این روش که بسیار توصیه شده است تمامی حملات همانند روش قبل اینبار نه تنها برای یک اکانت بلکه برای تمامی اکانت هاخنثی می شوند.

 

6- محدود کردن دسترسی در nginx
چنانچه از وب سرور nginx در سرور شما استفاده می شود می توانید با استفاده از دسترسی root و SSH کد زیر را در فایل کانفیگ nginxقرار دهید.

با استفاده از این روش نیز تمامی حملات همانند روش قبل خنثی می شوند.

ارسال پاسخ

آدرس ایمیل شما منتشر نخواهد شد.