مقدمه
وردپرس همچنان محبوبترین سیستم مدیریت محتوا در جهان است و بیش از ۴۰٪ سایتها از آن استفاده میکنند. اما همین محبوبیت باعث میشود که هدف حملات سایبری باشد. در سال ۲۰۲۵، تهدیدها پیچیدهتر شدهاند: رباتهای هوشمند، بهرهبرداری از آسیبپذیریهای جدید در افزونهها و قالبها، و حملات نسل جدید مثل XSS، SQL Injection یا backdoor افزونهها.
اگر سایت وردپرس شما آسیبپذیر باشد، ممکن است اطلاعات کاربران لو برود، رتبه SEO شما سقوط کند یا سایت شما کاملاً از دسترس خارج شود.
در این مقاله، بهترین روشهای افزایش امنیت وردپرس در ۲۰۲۵ را با زبانی ساده، عملی و قدمبهقدم بررسی میکنیم. در پایان، قسمت «سؤالات متداول» به شما کمک میکند هر شک و سؤال دیگر را برطرف کنید.
فهرست پیشنهادی مقاله
۱. اصول پایه امنیت
۲. امنیت ورود و احراز هویت
۳. محافظت از فایلها و پوشهها
۴. استفاده از افزونهها و فایروالها
۵. اسکن، نظارت و رسیدگی به حملات
۶. پشتیبانگیری و بازگردانی
۷. بررسی امنیت دورهای (Audit)
۸. اشتباهات رایج و بایدها/نبایدها
۹. سوالات متداول
۱. اصول پایه امنیت وردپرس
• انتخاب میزبان امن
- میزبانی خوب باید شامل فایروال سطح سرور، جداسازی حسابها (isolation)، پشتیبانگیری خودکار، بهروزرسانیهای امنیتی سرور و نظارت باشد.
- میزبان دارای امکاناتی مانند SSL خودکار، محافظت DDoS و مانیتورینگ ۲۴ ساعته، اولویت بالاتری دارد.
• بهروزرسانی مداوم
- هسته وردپرس، قالبها و افزونهها هر کدام ممکن است مشکل امنیتی داشته باشند. با بهروزرسانی مرتب این موارد، آسیبپذیریهای شناختهشده رفع میشوند. (این یکی از پایهایترین توصیهها در منابع متنوع است) Bluehost+2nordlayer.com+2
- قبل از بهروزرسانی، حتماً نسخهی پشتیبان داشته باشید تا اگر خطایی پیش آمد، بتوانید بازگردانید.
• استفاده از قالبها و افزونههای معتبر
- قالب یا افزونههای رایگان یا نالشده (pirated) ممکن است حاوی کد مخرب باشند یا بهروزرسانی نشوند.
- افزونههایی را انتخاب کنید که دارای سابقه قوی، بهروزرسانی منظم و نقد و بررسی مثبت باشند.
- افزونههایی که استفاده نمیکنید را غیرفعال و حذف کنید — حتی غیرفعال هم ممکن است خطر داشته باشد.
۲. امنیت ورود و احراز هویت
• نام کاربری و رمز عبور قوی
- از نام کاربری «admin» یا چیزی پیشفرض استفاده نکنید.
- رمز عبور باید ترکیبی از حروف بزرگ و کوچک، اعداد و کاراکترهای ویژه باشد.
- هر کاربر دسترسی لازم را داشته باشد (نقشها را محدود کنید). WPBeginner+2nordlayer.com+2
• فعالسازی احراز هویت دو مرحلهای (2FA)
- با فعالسازی 2FA، حتی اگر رمز عبور لو رود، دسترسی آسان نیست چون مرحله دوم (مثلاً کد پیامکی یا اپلیکیشن Google Authenticator) نیاز است.
- افزونههای معتبر زیادی برای 2FA وجود دارند.
• محدود کردن تعداد تلاشهای ورود
- اگر کسی چند بار رمز عبور را اشتباه بزند، دسترسی موقت مسدود شود.
- این کار جلوی حملات brute-force را میگیرد. Bluehost+2nordlayer.com+2
• تغییر آدرس ورود (wp-login.php / wp-admin)
- با افزونههایی مثل “WPS Hide Login”، آدرس ورود پیشفرض را تغییر دهید تا رباتها نتوانند آن را بهراحتی پیدا کنند. WP Rocket+2Bluehost+2
• استفاده از CAPTCHA / reCAPTCHA
- در فرم ورود، ثبت نام و فرمهای تماس افزودن CAPTCHA باعث میشود رباتها نتوانند به راحتی حمله کنند. WP Rocket+1
۳. محافظت از فایلها و پوشهها
• غیرفعال کردن ویرایش فایل داخل داشبورد
- در
wp-config.phpکد زیر را اضافه کنید:define('DISALLOW_FILE_EDIT', true); - این کار جلوی ویرایش مستقیم قالب یا افزونه از داخل داشبورد را میگیرد.
• محدود کردن دسترسی به فایلهای حساس
- فایلهایی مانند
wp-config.php،.htaccessرا طوری تنظیم کنید که فقط دسترسی خواندن داشته باشند و دیگران نتوانند آن را بخوانند یا تغییر دهند. - از قوانین
.htaccessبرای جلوگیری از دسترسی مستقیم به پوشههایی مانندwp-includesیاwp-content/uploads.
• غیرفعال کردن اجرای PHP در پوشههای رسانهای
- اگر پوشهای صرفاً برای ذخیره تصاویر یا فایلهای استاتیک است، اجرای کد PHP در آن پوشه را غیرفعال کنید (برای مثال از طریق
.htaccess).
• نظارت بر تغییرات فایل (File Integrity Monitoring)
- برخی افزونهها امکان بررسی فایلها برای تغییرات مشکوک را دارند. اگر فایل جدید یا تغییر ناگهانی دیدید، زنگ هشدار داشته باشید.
۴. استفاده از افزونههای امنیتی و فایروال
- افزونه امنیتیِ معتبر مانند Wordfence، Sucuri، iThemes Security، MalCare را نصب کنید. این افزونهها امکاناتی مانند اسکن بدافزار، فایروال، ورود امن و گزارش فعالیت را ارائه میدهند. WPBeginner+3knowndesign.co+3Bluehost+3
- فایروال برنامه وب (WAF) را فعال کنید تا ترافیک مشکوک قبل از ورود به سرور شما فیلتر شود.
- افزونه باید توانایی شناسایی تهدیدهای جدید، دفاع در برابر حملات جدید و بهروزرسانی مداوم داشته باشد.
- لاگها و گزارشهای افزونه را مرتب بررسی کنید تا فعالیتهای مشکوک را سریع تشخیص دهید.
۵. اسکن، نظارت و رسیدگی به حملات
• اسکن دورهای بدافزار
- هفتهای یا ماهانه سایت را با افزونه امنیتی یا سرویس خارجی برای بدافزار، کد مخرب و اسکریپتهای مخفی اسکن کنید.
- برخی افزونهها گزینه اسکن در زمان واقعی دارند (real-time monitoring).
• نظارت بر لاگها و فعالیت کاربران
- ثبت ورودها، تغییر رمز عبور، نصب افزونهها، حذف و ویرایش فایلها باید در لاگها ذخیره شود.
- اگر فعالیت غیرمعمولی دیدید (مثلاً کاربری که همزمان از چند دستگاه وارد شده)، سریع بررسی کنید.
• بررسی نقاط ضعف امنیتی با Audit
- دورهای بررسی کلی امنیت سایت انجام دهید: بررسی پلاگینها، بررسی دسترسیها، بررسی نسخههای قدیمی یا افزونههای متروک.
- این کار به شما کمک میکند نقاط ضعف را پیش از وقوع حمله شناسایی کنید. SentinelOne
- اگر توان فنی ندارید، میتوانید از سرویسهای امنیتی حرفهای کمک بگیرید.
۶. پشتیبانگیری و بازگردانی
- منظم و خودکار از پایگاه داده و فایلها پشتیبان بگیرید (روزانه یا هفتگی، بسته به حساسیت سایت).
- پشتیبان را بیرون از سرور اصلی نگه دارید (مثلاً در فضای ابری یا سرور دیگر).
- گاهی «آزمون بازگردانی» انجام دهید تا مطمئن شوید نسخه پشتیبان سالم است و بازگردانی به درستی انجام میشود.
- اگر سایت هک شود، سریعاً از پشتیبان پاک شروع کنید، رمزها را عوض کنید و مجدداً بررسی امنیتی انجام دهید.
۷. بررسی اشتباهات رایج و بایدها/نبایدها
⚠️ اشتباهات رایج
- استفاده از افزونهها یا قالب نالشده (pirated).
- غیرفعال کردن افزونهها ولی حذف نکردن آنها (آنها ممکن است همچنان تهدید باشند).
- استفاده از رمزهای ساده یا استفاده یکسان رمز در چند سایت.
- نادیده گرفتن بهروزرسانیهای وردپرس و افزونهها.
- اعتماد کردن صرف به افزونه امنیتی بدون لایههای محافظتی دیگر.
- ذخیره پشتیبان در همان سرور (اگر سرور آسیب ببیند، پشتیبان هم از بین میرود).
✅ بایدها
- چند لایه امنیتی داشته باشید (defense in depth).
- همیشه بر لبه امنیت باشید؛ تهدیدات جدید را دنبال کنید.
- کاربران و دسترسیها را محدود کنید: افراد فقط تا اندازهی لازم دسترسی داشته باشند.
- مستندات و گزارشهای امنیتی داشته باشید و تغییرات را ثبت کنید.
۸. سوالات متداول (FAQ)
سوال: آیا بدون افزونه هم میتوان امنیت وردپرس را تأمین کرد؟
پاسخ: بله، با انجام موارد دستی مانند محدود کردن دسترسی فایلها، غیرفعال کردن ویرایش از داشبورد، تنظیم قوانین .htaccess و غیره میتوان بخشی از امنیت را تأمین کرد؛ اما افزونهها کار را سادهتر، خودکارتر و جامعتر میکنند.
سوال: هر چند وقت باید سایت را اسکن کرد؟
پاسخ: بسته به حساسیت سایت، پیشنهاد میشود حداقل یک بار در هفته اسکن شود. برای سایتهای فروشگاهی یا حساس، اسکن روزانه یا real-time بهترین گزینه است.
سوال: آیا میزبانی مشترک (shared hosting) امن است؟
پاسخ: میتواند باشد اگر میزبان تدابیر امنیتی سطح سرور را جدی بگیرد. اما میزبان تخصصی وردپرس یا مدیریتشده امنیت بیشتری فراهم میکنند.
سوال: اگر سایت من هک شود، چه کنم؟
پاسخ:
- سایت را آفلاین (در حالت تعمیر) ببرید.
- پشتیبان سالم را بازگردانید.
- تمام رمزها را (وردپرس، FTP، دیتابیس، هاست) تغییر دهید.
- افزونه امنیتی نصب و اسکن کامل انجام دهید.
- لاگها را بررسی کنید تا منشاء حمله را بیابید.
سوال: آیا فعال کردن SSL کافی است؟
پاسخ: SSL فقط ارتباط بین مرورگر و سرور را رمزنگاری میکند، اما لایههای دیگر امنیتی مانند بهروزرسانی، فایروال، 2FA و اسکن نیز لازم است.