وقتی در حال توسعه یک سایت وردپرسی هستیم، معمولاً برای راحتی کار، تنظیمات امنیتی رو نادیده میگیریم تا سرعت کار بالا بره. دسترسیها رو باز میذاریم، دیباگرها رو روشن میذاریم و کلی افزونه تست میکنیم. اما وقتی پروژه به پایان میرسه و قراره تحویل (Handoff) داده بشه، باید محیط رو از حالت «توسعه» (Development) به حالت «تولید» (Production) تغییر بدیم. این مقاله به تو کمک میکنه تا با یک چکلیست ۵ مرحلهای ساده، امنیت سایت مشتری رو تضمین کنی.
۱. پاکسازی حسابها و دسترسیهای توسعهدهنده
اولین کاری که باید انجام بدی اینه که تمام اکانتهای تستی و موقتی که در طول توسعه ایجاد کردی رو پاک کنی. یوزرهایی مثل "test" یا "admin2" نباید روی سایت لایو باقی بمونن. همچنین اگر از رمزهای عبور ساده برای خودت استفاده میکردی، الان وقتشه که اونها رو به رمزهای بسیار پیچیده تغییر بدی. دسترسیهای FTP، دیتابیس (مثل اکانتهای موقت تو سیپنل) و هرگونه دسترسی که به طراحان و برنامهنویسان تیمت دادی رو با دقت بررسی کن و موارد غیرضروری رو حذف یا محدود کن.
۲. بررسی افزونههای نصبشده و حذف اضافیها
خیلی وقتها موقع طراحی، ما پلاگینهای مختلفی رو نصب میکنیم تا امکاناتشون رو تست کنیم (مثلاً ۳ تا افزونه اسلایدر مختلف) و بعد یکی رو انتخاب میکنیم. افزونههایی که انتخاب نشدن، معمولاً غیرفعال میشن ولی پاک نمیشن! این یک ریسک امنیتی بزرگه. به لیست پلاگینها برو و هر چیزی که استفاده نمیشه رو کاملاً حذف (Delete) کن. سایت نهایی باید فقط و فقط شامل افزونههایی باشه که واقعاً برای کارکرد سایت ضروری هستن.
۳. تنظیمات تولید: غیرفعالسازی دیباگ و خطایابی
در طول توسعه، روشن بودن WP_DEBUG خیلی مفیده چون به تو کمک میکنه ارورهای کد رو ببینی. اما روی سایت لایو (Live)، این ارورها میتونن اطلاعات حیاتی سرور (مثل مسیر فایلها) رو به هکرها نشون بدن. فایل wp-config.php رو باز کن و مطمئن شو که خطوط مربوط به دیباگ به این شکل تنظیم شدن:
define( 'WP_DEBUG', false );
همچنین اگر فایلهای تستی یا نصب مثل readme.html یا license.txt در روت وردپرس وجود دارن، بهتره پاکشون کنی تا نسخه دقیق وردپرس به راحتی مشخص نشه.
۴. مستندسازی رمزها، لایسنسها و تنظیمات
یک کار حرفهای که تو رو از بقیه طراحان متمایز میکنه، ارائه یک فایل مستندات (Documentation) امنیتی به مشتریه. تمام رمزهای عبور (هاست، وردپرس، ایمیلها)، لایسنسهای خریداری شده برای افزونهها و قالبها، و لیست افزونههای نصب شده رو به صورت رمزنگاری شده یا در یک فایل امن به مشتری تحویل بده. به مشتری توضیح بده که چرا حفظ این اطلاعات مهمه و ازش بخواه که رمزها رو بعد از تحویل تغییر بده.
۵. تنظیم بکاپ خودکار و هشدارهای امنیتی
هیچوقت سایت رو بدون سیستم بکاپگیری به مشتری تحویل نده! یک افزونه بکاپگیری معتبر (مثل UpdraftPlus یا Solid Backups) نصب کن و تنظیمش کن تا به صورت منظم (مثلاً هفتگی یا روزانه بسته به نوع سایت) به یک فضای ابری مثل گوگل درایو بکاپ بفرسته. همچنین، یک سیستم هشدار اولیه (مثل Wordfence) تنظیم کن تا در صورت آپدیتهای ناموفق یا لاگینهای مشکوک، هم به تو (به عنوان پشتیبان) و هم به ایمیل مدیر سایت مشتری اطلاعرسانی بشه.