پروتکل XML-RPC چیست و چطوری باید مسدودش کنیم؟

مقدمه

قدیما یک امکانی در وردپرس بود که کاربر می تونست با نرم افزارهای وبلاگ نویسی مثل Windows Live Writer از راه دور در وردپرس مطلب منتشر کنه . همون موقع این موضوع محل اختلاف کارشناسان بود و مخاطرات امنیتی برای سایت ایجاد میکرد . به همین دلیل این امکان بصورت پیش فرض غیر فعال شد. اما جدیداً به دلیل استفاده رو به رشد مردم از تلفن همراه ، دوباره این امکان در وردپرس بصورت پیش فرض فعال شده و همچنان از نظر امنیتی دردسرهایی رو برای کاربران بوجود میاره. در این مقاله در خصوص XML-RPC توضیحات کافی بهتون ارائه میکنیم تا بدونید چی هست ، به چه کار میاد و چطور باید دسترسی به اون رو مسدود کنیم ؟
راهنمای مطالعه

همه چیز در مورد XML-RPC

چرا و چطور باید XML-RPC رو غیر فعال کنیم ؟

اگر شما از نرم افزارهای جانبی برای درج مطالب در سایتتون استفاده نمی کنید (مثل خیلی از کاربران دیگه) بهتره این امکان رو غیر فعال کنید ، چون علاوه بر اینکه حملات DDOS زیادی از طریق این فایل به سایت های وردپرسی انجام میشه استفاده از نرم افزارهای جانبی خطر سرقت اطلاعات کاربری سایتتون رو افزایش میده !

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

مسدود سازی XML-RPC در سرور

بهترین روش اینه که اگر سرور اختصاصی یا مجازی دارید دسترسی به  XML-RPC رو از طریق فایل کانفیگ مسدود کنید . برای این کار کافیه به مسیر زیر برید و کدهای زیر رو در فایل کانفیگ آپاچی قرار بدید :

../etc/httpd/conf/httpd.conf


< FilesMatch " ^ (xmlrpc\.php|wp-trackback\.php) ">
Order Deny,Allow
Deny from all
< /FilesMatch>
 

 

مسدود سازی از طریق فایل htaccess

فایل htaccess در روت سایت و جایی که وردپرس رو نصب کردید قرار داره . بهتره از طریق نرم افزار های FTP به هاست متصل بشید و این فایل رو در فولدر Public-html پیدا کنید و کدهای زیر رو در انتهای اون قرار بدید .

یادتون باشه قبل از هرگونه تغییر در این فایل نسخه ابتدایی اون رو در یک جای مطمئن ذخیره کنید .


< Files xmlrpc.php>
Order Deny,Allow
Deny from all
< /Files>
 


 

مسدود سازی از طریق فایل function.php

فایل function.php رو باید در فولدر قالب پیدا کنید . بهتره از طریق نرم افزار های FTP به هاست متصل بشید و این فایل رو در مسیر زیر پیدا کنید و کدهای ارائه شده رو اضافه کنید: (یادتون باشه بجای your theme باید وارد فولدر مربوط به پوسته سایتتون بشید)

wp-content > themes > your theme > function.php


function remove_x_pingback($headers) {
unset($headers['X-Pingback']);
return $headers;
}
add_filter('wp_headers', 'remove_x_pingback');
add_filter('xmlrpc_enabled', '__return_false');
 

 

مسدود سازی از طریق افزونه

آخه چرا وقتی میشه براحتی با یک سری کدهای دستوری ، کاری رو انجام داد متوسل به افزونه میشید ؟ همونطور که در مقاله “معرفی افزونه هایی سرعت لود سایت رو کاهش میدن” گفتیم تا جایی که امکانش هست سعی کنید افزونه های مختلف رو نصب نکنید . افزونه هر چی کمتر بهتر !

اگر به هر دلیلی مجبور هستید از افزونه برای غیر فعال سازی XMLRPC استفاده کنید به شما افزونه Disable XML-RPC رو معرفی می کنیم . با نصب و فعال سازی این افزونه XMLRPC غیر فعال میشه .

  1. افزونه Disable XML-RPC
اگر از این مطلب خوشتون اومده برای دوستاتونم ارسالش کنید!

دانلود کتاب الکترونیکی

لطفا برای دریافت لینک دانلود اطلاعات خواسته شده را وارد نمایید