افزایش امنیت سایت وردپرس یکی از مهمترین مسائلی است که نباید هیچوقت نادیده گرفته شود. حتی اگر بهترین هاست، قالب وردپرس و افزونهها را داشته باشید، باز هم اگر امنیت را جدی نگیرید، ممکن است سایتتان در معرض نفوذ و حملات مختلف قرار گیرد. یکی از بخشهایی که معمولاً مورد غفلت قرار میگیرد، قابلیت XML-RPC در وردپرس است. در حالی که این قابلیت برای اتصال سرویسهای بیرونی طراحی شده، اما در سالهای اخیر تبدیل به یکی از درگاههای اصلی برای حملات هکری شده است.
XML-RPC چیست و چه کاری انجام میدهد؟
اگر بخواهیم که ساده توضیح دهیم، XML-RPC در وردپرس یک پروتکل ارتباطی قدیمی است که به سرویسهای خارجی (مثل اپلیکیشن وردپرس موبایل یا سرویسهایی مثل Jetpack) اجازه میدهد با سایت شما ارتباط برقرار کنند. این ویژگی از طریق فایل xmlrpc.php در ریشهی وردپرس فعال میشود. در گذشته XML-RPC کاربردهای مفیدی داشت، مثلاً برای انتشار پست از طریق نرمافزارهای بیرونی، اما امروز که REST API جایگزین آن شده، کمتر کسی واقعاً به آن نیاز دارد.
چرا باید XML-RPC را غیرفعال کنیم؟
فعال بودن XML-RPC میتواند در ظاهر بیضرر به نظر برسد، اما در واقع یکی از نقاط ضعف امنیتی شناختهشده در وردپرس است و توصیه میشود که اگر به آن نیاز ندارید، حتما غیرفعال کنید.
دلایل اصلی غیرفعال کردن آن عبارتند از:
- جلوگیری از حملات Brute Force: هکرها با استفاده از XML-RPC میتوانند در هر درخواست صدها تلاش برای ورود انجام دهند. در نتیجه، حتی اگر افزونههای امنیتی نصب کرده باشید، ممکن است سرور شما به دلیل حجم زیاد درخواستها دچار فشار و کندی شود.
- کاهش مصرف منابع سرور: هر بار که XML-RPC درخواست دریافت میکند، منابعی از سرور مصرف میشود. با غیرفعال کردن آن، میتوانید مصرف CPU و RAM را کاهش دهید و سرعت سایت را بهبود ببخشید.
- مسدود کردن راه نفوذ افزونههای آلوده و رباتها: برخی بدافزارها و رباتها از طریق XML-RPC به سایت نفوذ میکنند یا داده ارسال مینمایند. غیرفعال کردن این قابلیت جلوی این نوع ارتباطات را میگیرد.
آموزش غیرفعال کردن xml-rpc وردپرس با کد
در روشی که ما توصیه میکنیم، شما میتوانید از طریق افزودن کد به فایل functions.php این قابلیت را غیرفعال کنید. استفاده از افزونه برای سایت شما باعث اضافه شدن بار جدید خواهد بود و باعث کندی سرعت سایت شما خواهد شد.
پیشنهاد مطالعه: آموزش افزودن کد php سفارشی در وردپرس
درصورتی که در نحوه افزودن کد php به فایل functions.php نیاز به کمک داشتید، میتوانید از مقالهای که در بالا لینک کردیم استفاده کنید. در این مقاله بطور کامل نحوه افزودن کد php سفارشی را آموزش دادیم.
در این روش مطابق با آموزش فوق میتوانید کد زیر را به فایل functions.php اضافه کنید تا غیرفعال شود:
add_filter('xmlrpc_enabled', '__return_false');همچنین جهت غیرفعال کردن xml-rpc وردپرس میتوانید کد زیر را به فایل .htaccess اضافه کنید:
<Files xmlrpc.php>
Order Allow,Deny
Deny from all
</Files>این کد را در ریشهی سایت (پوشه public_html در ابزار File Manager هاست) اضافه کنید تا دسترسی کامل به XML-RPC مسدود شود.
آموزش غیرفعال کردن xml-rpc وردپرس با افزونه
اگر با ویرایش فایلها راحت نیستید، میتوانید از افزونههایی مثل Wordfence یا Disable XML-RPC استفاده کنید. در افزونه Disable XML-RPC فقط کافی است نصب و فعالش کنید، خودش بهصورت خودکار این قابلیت را غیرفعال میکند. در افزونه وردفنس نیز در بخش تنظیمات این افزونه میتوانید این قابلیت را غیرفعال کنید.
XML-RPC در گذشته جزو ابزارهای کاربردی بود، اما امروز بیشتر به یک نقطه ضعف امنیتی تبدیل شده است. اگر از قابلیتهایی مثل اپلیکیشن موبایل وردپرس یا Jetpack استفاده نمیکنید، بهتر است همین حالا آن را غیرفعال کنید. این کار نهتنها امنیت سایت شما را افزایش میدهد، بلکه باعث بهبود عملکرد کلی و کاهش مصرف منابع سرور هم میشود.
امیدواریم که این سری از مقالات آموزش وردپرس و آموزش افزایش امنیت وردپرس هم مورد توجه و پسند شما قرار گرفته باشد. در صورتی که در رابطه با این آموزش و نحوه ساخت child theme در وردپرس سوال یا مشکلی داشتید در بخش دیدگاهها اعلام کنید تا در کوتاهترین زمان ممکن پاسخگوی شما باشیم.