فایل wp-config.php یکی از اصلی ترین و حساس ترین فایل ها در ساختار وردپرس است. که تنظیمات پایه ای سایت را در خود جای می دهد. به همین دلیل، اعمال برخی تنظیمات امنیتی روی این فایل میتواند نقش مهمی در محافظت از سایت شما ایفا کند. در ادامه تیم متخصص الماس هاست به چند اقدام مؤثر برای ایمن سازی فایل wp-config.php میپردازند.
راهکارهای افزایش امنیت فایل wp-config.php در وردپرس
- تغییر پیش وند جداول پایگاه داده
- جلوگیری از ویرایش مستقیم قالب و افزونه
- محدود کردن نصب و به روزرسانی افزونه ها
- فعال سازی احراز هویت FTP هنگام نصب افزونه
- انتقال فایل wp-config.php به مسیر امن تر
- محدود کردن دسترسی به فایل wp-config.php
تغییر پیشوند جداول پایگاه داده
به طور پیش فرض، وردپرس از پیشوند wp_ برای جداول دیتابیس استفاده می کند. هکرها معمولاً این موضوع را می دانند و در حملات SQL Injection از آن بهره می برند. برای مقابله با این مسئله، بهتر است این پیش وند را به عبارتی منحصر به فرد (مثلاً mwh_) تغییر دهید. برای این کار، فایل wp-config.php را باز کرده و خط زیر را پیدا کنید.
$table_prefix = 'wp_';
و آن را به شکل زیر تغییر دهید:
$table_prefix = 'mwh_';
توجه داشته باشید که باید جداول دیتابیس را نیز مطابق این پیشوند جدید تغییر نام دهید.
جلوگیری از ویرایش مستقیم قالب و افزونه
برای جلوگیری از سوءاستفاده هکرها در هنگام دسترسی به پیشخوان وردپرس، میتوانید قابلیت ویرایش افزونه ها و قالب ها را غیرفعال کنید. کافی است خط زیر را به فایل wp-config.php اضافه نمایید:
define( 'DISALLOW_FILE_EDIT', true );
محدود کردن نصب و بهروزرسانی افزونه ها
با غیرفعال سازی امکان نصب و بروزرسانی افزونه ها از طریق وردپرس، میتوانید ریسک ورود کد های مخرب به سایت را کاهش دهید. برای انجام این کار، از کد زیر استفاده کنید:
define('DISALLOW_FILE_MODS', true);
با فعال کردن این گزینه، نصب افزونه فقط به صورت دستی از طریق هاست قابل انجام خواهد بود.
فعالسازی احراز هویت FTP هنگام نصب افزونه
اگر نمیخواهید نصب افزونه را بهطور کامل غیرفعال کنید، میتوانید آن را به وارد کردن اطلاعات FTP محدود نمایید. با افزودن کد زیر به wp-config.php، این قابلیت فعال میشود:
define('FS_METHOD', 'ftpext');
انتقال فایل wp-config.php به مسیر امن تر
از آنجایی که فایل wp-config.php معمولاً در پوشهی اصلی سایت (public_html) قرار دارد، بهتر است آن را به یک مسیر سطح بالاتر منتقل کرده و از دسترسی مستقیم به آن جلوگیری کنید:
فایل را از پوشهی public_html به دایرکتوریای دیگر (مثلاً یک پوشه خارج از روت اصلی سایت) انتقال دهید. در مسیر قبلی، یک فایل جدید با نام wp-config.php بسازید و کد زیر را در آن قرار دهید:
define('ABSPATH', dirname(__FILE__) . '/');
require_once(ABSPATH . '../path/to/wp-config.php');
بهجای ../path/to/wp-config.php مسیر واقعی فایل اصلی را وارد کنید.
محدود کردن دسترسی به فایل wp-config.php
برای جلوگیری از دسترسی غیرمجاز به این فایل از طریق مرورگر، سطح دسترسی آن را به 600 تنظیم کنید تا فقط مدیر سایت به آن دسترسی داشته باشد. سپس، برای اطمینان بیشتر، کد زیر را به فایل .htaccess در ریشه سایت اضافه کنید:
<files wp-config.php>
order allow,deny
deny from all
</files>
فعال سازی حالت دیباگ برای شناسایی خطاها
برای شناسایی خطاهای موجود در افزونه ها یا قالب سایت، میتوانید قابلیت خطایابی (Debug) وردپرس را فعال کنید. کافی است کد زیر را در فایل wp-config.php به حالت فعال تغییر دهید:
define('WP_DEBUG_DISPLAY', true);
بعد از بررسی و رفع مشکلات، حتماً این مقدار را به false برگردانید:
define('WP_DEBUG_DISPLAY', false);
با انجام این اقدامات، امنیت فایل wp-config.php و به تبع آن کل سایت وردپرسی شما به طرز قابل توجهی افزایش خواهد یافت. پیشنهاد می شود به صورت دوره ای این تنظیمات را بررسی و در صورت نیاز به روزرسانی کنید.