تنظیمات امنیتی وردپرس - تنظیمات امنیتی ضروری وردپرس

تنظیمات امنیتی ضروری وردپرس

امنیت سایت وردپرسی معمولاً زمانی جدی گرفته می‌شود که یک‌بار ورود غیرمجاز، تغییر صفحه اصلی یا از دست رفتن اطلاعات اتفاق افتاده باشد. نکته مهم این است که بسیاری از حمله‌ها نه به دلیل ضعف عجیب‌وغریب، بلکه به خاطر رمز...

Picture of هانیه مجللی
هانیه مجللی

امنیت سایت وردپرسی معمولاً زمانی جدی گرفته می‌شود که یک‌بار ورود غیرمجاز، تغییر صفحه اصلی یا از دست رفتن اطلاعات اتفاق افتاده باشد. نکته مهم این است که بسیاری از حمله‌ها نه به دلیل ضعف عجیب‌وغریب، بلکه به خاطر رمز عبور ساده، افزونه قدیمی، دسترسی‌های اضافی یا تنظیمات پیش‌فرض انجام می‌شوند. در این راهنما، مهم‌ترین کارهایی را بررسی می‌کنیم که می‌توانند سطح ایمنی وردپرس را بدون پیچیده کردن مدیریت سایت افزایش دهند.

تنظیمات امنیتی وردپرس فقط نصب یک افزونه امنیتی نیست. باید از حساب‌های کاربری و ورود مدیر شروع کنید، نسخه پشتیبان و به‌روزرسانی‌ها را جدی بگیرید، دسترسی فایل‌ها را کنترل کنید و برای خطاهای احتمالی برنامه داشته باشید. اگر سایت شما فروشگاهی، شرکتی یا محتوایی است، همین اقدامات ساده می‌توانند جلوی بخش زیادی از آسیب‌های رایج مانند حملات بروت‌فورس، تزریق کد، بدافزار و سوءاستفاده از افزونه‌های آسیب‌پذیر را بگیرند.

در ادامه، چک‌لیستی عملی در اختیارتان قرار می‌گیرد؛ چک‌لیستی که می‌توانید همین امروز اجرا کنید و بعد از هر تغییر، نتیجه آن را بررسی کنید. همچنین توضیح می‌دهیم کدام تنظیمات برای همه سایت‌ها ضروری هستند، کدام اقدامات ممکن است ریسک یا عیب جانبی داشته باشند و چه زمانی بهتر است از متخصص کمک بگیرید.

تنظیمات امنیتی وردپرس

فهرست مطالب

چرا امنیت وردپرس باید از تنظیمات پایه شروع شود؟

وردپرس به خودی خود یک نرم‌افزار ناامن نیست؛ مشکل معمولاً از ترکیب نسخه‌های قدیمی، افزونه‌های نامعتبر، دسترسی‌های کنترل‌نشده و تنظیمات اشتباه ایجاد می‌شود. طبق گزارش‌های سالانه شرکت‌های امنیتی مانند Wordfence، بخش قابل‌توجهی از تهدیدهای وردپرسی به آسیب‌پذیری افزونه‌ها و قالب‌های شخص ثالث مربوط است، نه هسته اصلی وردپرس. این موضوع یک پیام روشن دارد: امنیت سایت زنجیره‌ای است و ضعیف‌ترین بخش آن می‌تواند کل مجموعه را تهدید کند.

امنیت واقعی با حذف ریسک‌های ساده شروع می‌شود

اولین اقدام، شناسایی چیزهایی است که دیگر به آن‌ها نیاز ندارید. قالب‌های غیرفعال، افزونه‌های بدون استفاده، کاربران قدیمی، فایل‌های پشتیبان باقی‌مانده روی هاست و حساب‌های مدیر اضافی، همگی سطح حمله را افزایش می‌دهند. حذف موارد غیرضروری، معمولاً از نصب ده‌ها ابزار امنیتی مؤثرتر است.

اگر ساختار قالب سایت قدیمی است یا کدهای سفارشی بدون بررسی امنیتی در آن وجود دارد، طراحی قالب وردپرس می‌تواند فرصت مناسبی برای بازبینی معماری، حذف کدهای اضافه و اصلاح نقاط ضعف باشد. قالب باید از منبع معتبر تهیه شود و با استانداردهای جدید وردپرس، PHP و دسترس‌پذیری سازگار باشد.

یک تجربه عملی از خطایی که زیاد تکرار می‌شود

در بررسی بسیاری از سایت‌ها، مدیر سایت تصور می‌کند چون افزونه امنیتی نصب شده، همه‌چیز ایمن است؛ اما همان سایت با نام کاربری «admin»، رمز کوتاه و صفحه ورود بدون محدودیت تلاش فعالیت می‌کند. در چنین شرایطی، افزونه امنیتی فقط بخشی از مشکل را پوشش می‌دهد. تغییر نام کاربری، استفاده از رمز قوی، فعال‌سازی احراز هویت دومرحله‌ای و محدود کردن تلاش‌های ورود باید هم‌زمان انجام شوند.

ایمن‌سازی حساب‌های کاربری و ورود

حساب مدیر را بازبینی کنید

در بخش کاربران وردپرس، فهرست حساب‌ها را بررسی کنید و هر حساب ناشناس یا بدون استفاده را حذف یا غیرفعال کنید. برای نویسندگان و ویراستاران، نقش کاربری متناسب تعیین کنید و دسترسی مدیرکل را فقط به افرادی بدهید که واقعاً به آن نیاز دارند. اصل مهم این است: هر کاربر باید کمترین سطح دسترسی لازم برای انجام وظیفه خود را داشته باشد.

    • از نام کاربری قابل حدس مانند admin، administrator یا نام برند استفاده نکنید.
    • برای هر حساب، رمز عبور منحصربه‌فرد و طولانی بسازید.
    • حساب‌های قدیمی کارکنان یا پیمانکاران را پس از پایان همکاری حذف کنید.
    • برای نویسندگان، ویراستاران و مدیران، نقش‌های جداگانه تعریف کنید.
    • رمز عبور را در پیام‌رسان یا فایل متنی بدون رمزگذاری ذخیره نکنید.

احراز هویت دومرحله‌ای را فعال کنید

احراز هویت دومرحله‌ای باعث می‌شود داشتن رمز عبور به‌تنهایی برای ورود کافی نباشد. این قابلیت معمولاً با کد یک‌بارمصرف، برنامه‌های تولید رمز مانند Google Authenticator یا کلید امنیتی اجرا می‌شود. برای حساب‌های مدیر، فعال‌سازی 2FA از مهم‌ترین تنظیمات امنیتی وردپرس است؛ زیرا حتی اگر رمز عبور افشا شود، مهاجم به عامل دوم نیز نیاز خواهد داشت.

قبل از فعال‌سازی برای همه کاربران، یک حساب آزمایشی یا روش بازیابی مطمئن داشته باشید. گاهی مدیر سایت تلفن خود را از دست می‌دهد و چون کدهای پشتیبان را ذخیره نکرده است، خودش هم از پنل خارج می‌شود.

صفحه ورود را در برابر حملات بروت‌فورس محدود کنید

حمله بروت‌فورس یعنی مهاجم با آزمودن ترکیب‌های متعدد نام کاربری و رمز عبور تلاش می‌کند وارد سایت شود. محدود کردن تعداد تلاش‌ها، فعال‌سازی کپچا، استفاده از 2FA و در صورت نیاز محدود کردن ورود بر اساس IP، دفاع مناسبی ایجاد می‌کند. البته محدودیت بیش از حد می‌تواند کاربران واقعی را نیز مسدود کند؛ بنابراین مدت زمان قفل شدن و روش بازیابی را منطقی انتخاب کنید.

  آیا در وردپرس به HTTPS نیاز داریم؟

تغییر آدرس ورود وردپرس می‌تواند تعداد درخواست‌های خودکار را کاهش دهد، اما راه‌حل اصلی نیست. مهاجم حرفه‌ای می‌تواند آدرس جدید را پیدا کند؛ پس این اقدام باید در کنار رمز قوی، محدودسازی تلاش و پایش لاگ‌ها انجام شود.

به‌روزرسانی هسته، قالب و افزونه‌ها

چرا نسخه‌های قدیمی خطرناک هستند؟

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

قبل از به‌روزرسانی‌های مهم، از سایت نسخه پشتیبان بگیرید و ابتدا تغییرات را در زمان کم‌ترافیک انجام دهید. در سایت‌های حساس، بهتر است به‌روزرسانی در محیط آزمایشی بررسی شود. اگر پس از آپدیت ظاهر سایت به‌هم می‌ریزد، مشکل معمولاً از ناسازگاری قالب و افزونه‌ها یا نسخه PHP است، نه از خود فرایند به‌روزرسانی.

افزونه و قالب را از منبع معتبر تهیه کنید

افزونه‌های نال‌شده یا قالب‌های دستکاری‌شده ممکن است حاوی کد مخرب، درِ پشتی یا لینک‌های پنهان باشند. قیمت پایین چنین فایل‌هایی، هزینه واقعی پاک‌سازی سایت را توجیه نمی‌کند. قبل از نصب، سابقه توسعه‌دهنده، تاریخ آخرین به‌روزرسانی، سازگاری با نسخه فعلی وردپرس و کیفیت پشتیبانی را بررسی کنید.

اگر قابلیت اختصاصی مانند درگاه، فیلتر محصولات یا اتصال به سرویس دیگری نیاز دارید، استفاده از طراحی پلاگین وردپرس اختصاصی، در بسیاری از پروژه‌ها از نصب چند افزونه ناشناخته بهتر است. افزونه اختصاصی باید کدنویسی استاندارد، اعتبارسنجی ورودی‌ها و کنترل دسترسی مناسب داشته باشد.

افزونه‌های بلااستفاده را فقط غیرفعال نکنید

افزونه غیرفعال معمولاً کدی را اجرا نمی‌کند، اما فایل‌های آن همچنان روی سرور وجود دارند و در صورت وجود آسیب‌پذیری ممکن است هدف قرار بگیرند. افزونه‌ای را که واقعاً استفاده نمی‌کنید حذف کنید و پیش از حذف، مطمئن شوید به قابلیت دیگری وابسته نیست.

پشتیبان‌گیری و آمادگی برای بازیابی

پشتیبان‌گیری با ذخیره‌سازی روی همان هاست کافی نیست

یکی از اشتباه‌های رایج این است که نسخه پشتیبان در همان فضای هاست نگهداری شود. اگر هاست آلوده یا حذف شود، نسخه پشتیبان نیز ممکن است از بین برود. حداقل یک نسخه را در فضای جداگانه مانند فضای ابری یا سرور دیگر نگهداری کنید.

نوع پشتیبانکاربردپیشنهاد اجرایی
روزانهسایت‌های فروشگاهی و پرتغییرذخیره فایل‌ها و پایگاه داده در فضای جداگانه
هفتگیسایت‌های شرکتی و محتوایینگهداری چند نسخه متوالی و بررسی سلامت فایل
قبل از تغییراتآپدیت هسته، قالب یا افزونهایجاد نسخه کامل و ثبت زمان پشتیبان‌گیری

پشتیبان‌گیری بدون تست بازیابی ناقص است

وجود فایل پشتیبان به معنای قابل‌استفاده بودن آن نیست. هر چند وقت یک‌بار، نسخه را روی یک محیط آزمایشی بازیابی کنید و مطمئن شوید فایل‌ها، تصاویر، پایگاه داده و تنظیمات به‌درستی برمی‌گردند. این کار ممکن است زمان‌بر باشد، اما در زمان بحران، تفاوت میان بازیابی سریع و تعطیلی چندروزه سایت را مشخص می‌کند.

در تجربه عملی، بسیاری از مدیران فقط از پایگاه داده نسخه می‌گیرند و بعد متوجه می‌شوند تصاویر، فایل‌های قالب یا فایل‌های آپلودی وجود ندارند. پشتیبان کامل باید حداقل شامل پایگاه داده، پوشه wp-content و فایل‌های تنظیمات ضروری باشد.

تنظیم دسترسی فایل‌ها و محافظت از اطلاعات حساس

سطح دسترسی فایل‌ها را بی‌دلیل باز نگذارید

دسترسی‌های فایل باید به اندازه‌ای باشد که وردپرس و سرویس میزبانی بتوانند وظایف خود را انجام دهند، نه بیشتر. در بسیاری از سرورها، دسترسی 644 برای فایل‌ها و 755 برای پوشه‌ها مقدار رایج و مناسبی است؛ اما تنظیم دقیق به ساختار هاست و کاربر اجرای PHP بستگی دارد. دسترسی 777 معمولاً انتخاب ناامنی است و باید از آن پرهیز شود.

فایل wp-config.php اطلاعات حساسی مانند مشخصات اتصال پایگاه داده دارد. دسترسی آن را محدود کنید و مطمئن شوید سرور، محتوای این فایل را به شکل متن خام نمایش نمی‌دهد. همچنین فایل‌های پشتیبان، خروجی‌های آزمایشی و فایل‌های لاگ را در مسیر عمومی سایت باقی نگذارید.

ویرایشگر داخلی وردپرس را غیرفعال کنید

ویرایشگر فایل قالب و افزونه در پنل مدیریت، در صورت دسترسی غیرمجاز، می‌تواند برای تزریق کد مخرب استفاده شود. با افزودن کد زیر به فایل wp-config.php می‌توان این قابلیت را غیرفعال کرد:

define('DISALLOW_FILE_EDIT', true);

این کد امکان ویرایش مستقیم فایل از داخل پیشخوان را می‌بندد، اما جلوی آپلود یا نصب افزونه را نمی‌گیرد. بنابراین باید همراه با کنترل حساب‌های مدیر و محدودسازی دسترسی هاست استفاده شود.

از نمایش اطلاعات اضافی جلوگیری کنید

نمایش نسخه وردپرس، پیام‌های خطای PHP، فهرست فایل‌های پوشه‌ها و اطلاعات مسیر سرور می‌تواند به مهاجم برای شناسایی محیط کمک کند. حالت خطایابی را در سایت زنده فعال نگذارید و اگر به لاگ نیاز دارید، نمایش خطا برای بازدیدکننده را خاموش و ثبت خطا را در فایل امن نگهداری کنید.

انتخاب و پیکربندی افزونه امنیتی

افزونه امنیتی چه کارهایی انجام می‌دهد؟

یک افزونه امنیتی مناسب می‌تواند اسکن بدافزار، ثبت رویدادهای ورود، محدودسازی تلاش‌های ورود، تشخیص تغییر فایل‌ها، فایروال برنامه وب و احراز هویت دومرحله‌ای را ارائه دهد. با این حال، افزونه امنیتی جایگزین به‌روزرسانی، پشتیبان‌گیری و مدیریت صحیح دسترسی‌ها نیست.

هم‌زمان نصب چند افزونه با قابلیت‌های مشابه معمولاً تصمیم خوبی نیست. این کار ممکن است مصرف منابع را بالا ببرد، قوانین فایروال را با هم تداخل دهد و خطاهای دشوار ایجاد کند. یک ابزار معتبر انتخاب کنید و تنظیمات آن را مطابق نیاز سایت تغییر دهید.

  خطای صفحه سفید در وردپرس

فایروال افزونه‌ای در برابر فایروال هاست

فایروال افزونه‌ای داخل وردپرس یا در لایه نزدیک به آن فعالیت می‌کند؛ در نتیجه بخشی از درخواست‌ها پیش از رسیدن به برنامه بررسی می‌شوند. فایروال سمت سرور یا سرویس‌هایی مانند WAF می‌توانند درخواست‌های مخرب را زودتر متوقف کنند و فشار کمتری به وردپرس وارد شود. برای سایت‌های پرترافیک، ترکیب این لایه‌ها نتیجه بهتری دارد.

اگر افزونه سفارشی سایت نیاز به توسعه یا اصلاح دارد، طراحی افزونه وردپرس باید با رعایت nonce، اعتبارسنجی ورودی، پاک‌سازی داده‌ها، بررسی سطح دسترسی و استفاده از کوئری‌های امن انجام شود. ظاهر خوب افزونه بدون این موارد، نشانه امنیت نیست.

امنیت هاست، SSL و لایه‌های تکمیلی

SSL را فقط برای صفحه ورود فعال نکنید

گواهی SSL باید روی تمام سایت فعال باشد و همه آدرس‌های HTTP به HTTPS منتقل شوند. این کار ارتباط میان مرورگر کاربر و سرور را رمزگذاری می‌کند و برای ورود، فرم‌های تماس و پرداخت ضروری است. پس از فعال‌سازی، mixed content، ریدایرکت‌ها و آدرس‌های قدیمی تصاویر را بررسی کنید.

هاست مناسب چه ویژگی‌هایی دارد؟

هاست امن باید از نسخه‌های پشتیبانی‌شده PHP، پشتیبان‌گیری منظم، جداسازی حساب‌ها، پایش بدافزار و امکان کنترل دسترسی برخوردار باشد. هاست ارزان با منابع بیش از حد مشترک، ممکن است هم عملکرد و هم امنیت سایت را تحت تأثیر قرار دهد.

کاهش سرعت سایت همیشه مسئله‌ای ظاهری نیست؛ درخواست‌های زیاد، افزونه‌های سنگین و منابع سرور ضعیف می‌توانند فرصت بیشتری برای حملات ایجاد کنند. اجرای اصولی افزایش سرعت وردپرس با حذف افزونه‌های اضافی، کش مناسب و بهینه‌سازی تصاویر، فشار روی سرور را نیز کمتر می‌کند.

چه زمانی باید از متخصص کمک گرفت؟

اگر سایت تغییرات ناشناس دارد، کاربران جدید بدون اجازه ساخته شده‌اند، ترافیک خروجی غیرعادی است، ایمیل‌های اسپم از دامنه شما ارسال می‌شود یا گوگل هشدار بدافزار نشان می‌دهد، نصب افزونه‌های بیشتر راه‌حل مناسبی نیست. ابتدا سایت را از نظر آلودگی بررسی کنید، دسترسی‌های مشکوک را تغییر دهید و از یک نسخه سالم پشتیبان بگیرید. در چنین شرایطی، استفاده از خدمات پشتیبانی وردپرس می‌تواند از پاک‌سازی ناقص و بازگشت آلودگی جلوگیری کند.

چک‌لیست نهایی تنظیمات امنیتی وردپرس

این فهرست را می‌توانید ماهانه یا پس از هر تغییر مهم در سایت بررسی کنید:

    • حساب‌های کاربری ناشناس و مدیران اضافی حذف شده‌اند.
    • برای همه کاربران مهم، رمز منحصربه‌فرد و احراز هویت دومرحله‌ای فعال است.
    • هسته وردپرس، قالب و افزونه‌ها به‌روز هستند.
    • افزونه‌ها و قالب‌های بلااستفاده حذف شده‌اند.
    • نسخه پشتیبان خارج از هاست اصلی ذخیره می‌شود.
    • بازیابی پشتیبان در یک محیط آزمایشی تست شده است.
    • SSL روی تمام صفحات فعال است و ریدایرکت HTTPS درست کار می‌کند.
    • ویرایشگر فایل داخلی وردپرس غیرفعال شده است.
    • سطح دسترسی فایل‌ها و پوشه‌ها بررسی شده است.
    • لاگ ورود و تغییر فایل‌ها به‌صورت دوره‌ای بررسی می‌شود.
    • افزونه امنیتی معتبر نصب و بدون تداخل با ابزارهای دیگر پیکربندی شده است.

هیچ تنظیمی امنیت صددرصدی ایجاد نمی‌کند. هدف، کاهش احتمال نفوذ، محدود کردن خسارت و فراهم کردن امکان بازیابی سریع است. به‌روزرسانی منظم، کم کردن دسترسی‌ها و داشتن نسخه پشتیبان سالم، سه پایه اصلی یک برنامه امنیتی قابل‌اعتماد هستند.

سؤالات متداول درباره تنظیمات امنیتی وردپرس

آیا نصب یک افزونه امنیتی برای ایمن شدن سایت کافی است؟

خیر. افزونه امنیتی فقط یکی از لایه‌های دفاعی است. رمز عبور قوی، احراز هویت دومرحله‌ای، به‌روزرسانی منظم، پشتیبان‌گیری، هاست مناسب و کنترل دسترسی‌ها نیز باید اجرا شوند.

آیا تغییر آدرس ورود وردپرس ضروری است؟

ضروری نیست، اما می‌تواند تعداد درخواست‌های خودکار و حملات سطحی به صفحه ورود را کم کند. این روش نباید جایگزین محدودسازی تلاش ورود، 2FA و استفاده از رمز قوی شود.

هر چند وقت یک‌بار باید از وردپرس پشتیبان بگیریم؟

برای سایت‌های فروشگاهی یا پرتغییر، پشتیبان‌گیری روزانه مناسب است. سایت‌های محتوایی و شرکتی معمولاً می‌توانند به پشتیبان هفتگی اکتفا کنند؛ البته قبل از هر به‌روزرسانی مهم باید یک نسخه کامل تهیه شود.

آیا افزونه‌های غیرفعال هم خطر امنیتی دارند؟

بله. فایل افزونه همچنان روی سرور باقی می‌ماند و اگر آسیب‌پذیری داشته باشد، ممکن است هدف قرار بگیرد. افزونه‌ای را که استفاده نمی‌کنید حذف کنید، نه اینکه فقط غیرفعال نگه دارید.

اگر سایت هک شد، اولین اقدام چیست؟

ابتدا دسترسی‌های مشکوک را محدود کنید، از وضعیت موجود یک نسخه برای بررسی نگه دارید، رمزهای پنل، هاست، پایگاه داده و کاربران مدیر را تغییر دهید و سایت را از نظر فایل‌های آلوده بررسی کنید. حذف تصادفی فایل‌ها بدون شناخت مشکل، ممکن است بازیابی را سخت‌تر کند.

آیا استفاده از کدهای امنیتی بدون دانش فنی خطرناک است؟

بله. تغییر اشتباه در فایل‌هایی مانند htaccess یا wp-config.php می‌تواند باعث خطای داخلی، قطع ورود یا از کار افتادن سایت شود. قبل از هر تغییر، نسخه پشتیبان بگیرید و در صورت ناآشنایی با ساختار سرور، از متخصص کمک بگیرید.

جمع‌بندی

تنظیمات امنیتی وردپرس زمانی نتیجه می‌دهد که به‌صورت مجموعه‌ای اجرا شود، نه با تکیه بر یک افزونه یا یک تغییر کوچک. حساب‌های کاربری را محدود کنید، ورود دومرحله‌ای را فعال کنید، نرم‌افزارها را به‌روز نگه دارید، پشتیبان خارج از هاست داشته باشید و دسترسی فایل‌ها را بی‌دلیل باز نگذارید. با اجرای همین مراحل و بررسی دوره‌ای لاگ‌ها، احتمال بسیاری از حملات رایج کم می‌شود و در صورت بروز مشکل، امکان بازگردانی سریع سایت را خواهید داشت.

امتیاز دادن

نظرات با ارزش کاربران

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

فهرست مطالب