1404/05/13 00:39:04
تنظیمات امنیتی وردپرس که هر مدیر سایتی باید بداند

در دنیای امروز که حملات سایبری به‌صورت فزاینده‌ای در حال افزایش است، تأمین امنیت وب‌سایت‌های وردپرسی اهمیت فوق‌العاده‌ای دارد. وردپرس یکی از محبوب‌ترین سیستم‌های مدیریت محتوا (CMS) در دنیاست، اما همین محبوبیت باعث شده که هدف اول بسیاری از هکرها قرار بگیرد. در این مقاله به بررسی کامل و دقیق تنظیمات امنیتی وردپرس می‌پردازیم که هر مدیر سایتی باید از آن‌ها اطلاع داشته باشد.

فعال‌سازی گواهینامه SSL برای رمزنگاری ارتباطات

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

برای شروع این فرآیند، ابتدا باید یک گواهینامه SSL معتبر تهیه شود. دو روش اصلی برای دریافت SSL وجود دارد: استفاده از گواهینامه‌های رایگان مانند Let’s Encrypt یا خریداری گواهینامه‌های پیشرفته از شرکت‌های معتبر مانند Comodo، DigiCert، یا GeoTrust. Let’s Encrypt برای بسیاری از وب‌سایت‌ها کافی است و با توجه به رایگان بودن و قابلیت تمدید خودکار، انتخاب مناسبی برای سایت‌های کوچک و متوسط محسوب می‌شود.

پس از تهیه گواهینامه، باید آن را از طریق کنترل‌پنل هاست خود نصب کنید. اکثر شرکت‌های هاستینگ این قابلیت را در پنل‌هایی مانند cPanel یا DirectAdmin فراهم کرده‌اند. در بخش SSL/TLS یا SSL Certificates، می‌توانید فایل‌های مربوط به گواهینامه را بارگذاری و نصب کنید. در بسیاری از هاست‌ها حتی امکان نصب خودکار Let’s Encrypt تنها با یک کلیک وجود دارد.

مرحله‌ی پایانی، ویرایش فایل .htaccess برای ریدایرکت تمام ترافیک سایت از HTTP به HTTPS است. این کار باعث می‌شود کاربران حتی اگر به‌صورت دستی آدرس HTTP را وارد کنند، به‌طور خودکار به نسخه امن سایت هدایت شوند. قطعه کدی که باید به فایل .htaccess در ریشه هاست وردپرس اضافه شود به شکل زیر است:

apache

<IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] </IfModule>

با این تنظیمات، سایت شما از نظر امنیتی تقویت شده و به کاربران نیز اعتماد بیشتری القا می‌شود.

تغییر پیش‌فرض آدرس ورود (wp-login.php)

آدرس ورود پیش‌فرض وردپرس (yourdomain.com/wp-login.php) یکی از نقاط آسیب‌پذیر است. هکرها با ابزارهایی به این آدرس حمله می‌کنند تا با استفاده از Brute Force وارد داشبورد شوند.

راهکار:

  • استفاده از افزونه‌هایی مانند WPS Hide Login

  • انتخاب آدرس دلخواه مانند /secure-login یا ترکیب تصادفی

محدودسازی تلاش‌های ورود ناموفق

برای جلوگیری از حملات Brute Force، باید تعداد دفعات ورود ناموفق محدود شود. این کار با افزونه‌هایی مانند Limit Login Attempts Reloaded یا Wordfence امکان‌پذیر است.

مزایا:

  • مسدودسازی خودکار IPهای مشکوک

  • اعلان هشدار هنگام تلاش‌های ورود متعدد

  • امکان تعیین بازه زمانی برای ورود مجدد

استفاده از احراز هویت دو مرحله‌ای (2FA)

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

افزونه‌های پیشنهادی:

  • Google Authenticator

  • Two Factor Authentication by WP White Security

  • iThemes Security

به‌روزرسانی منظم وردپرس، قالب و افزونه‌ها

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

توصیه‌ها:

  • فعال‌سازی به‌روزرسانی خودکار برای افزونه‌ها و قالب‌ها

  • بررسی منظم افزونه‌های غیرفعال و حذف آن‌ها

  • استفاده از قالب‌ها و پلاگین‌های معتبر و دارای پشتیبانی

تغییر پیش‌فرض نام کاربری "admin"

بسیاری از مدیران سایت از نام کاربری پیش‌فرض "admin" استفاده می‌کنند. این کار باعث می‌شود که هکرها نصف مسیر را طی کرده باشند.

راهکار:

  • ایجاد کاربر جدید با نقش مدیر

  • خروج از حساب "admin"

  • حذف حساب کاربری "admin" پس از انتقال تمام محتوا به کاربر جدید

تنظیم مجوزهای فایل و پوشه‌ها

دسترسی فایل‌ها و پوشه‌ها باید با دقت تنظیم شود. مجوزهای نادرست می‌توانند راه نفوذ را برای هکرها باز کنند.

تنظیمات پیشنهادی:

  • مجوز فایل‌ها: 644

  • مجوز پوشه‌ها: 755

  • مجوز فایل wp-config.php: 400 یا 440

غیرفعال‌سازی ویرایشگر فایل در وردپرس

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

دستور برای فایل wp-config.php:

php

define('DISALLOW_FILE_EDIT', true);

استفاده از فایروال برنامه وب (WAF)

WAF یا Web Application Firewall مانند سدی در برابر تهدیدات امنیتی عمل می‌کند. این فایروال‌ها می‌توانند حملات رایج مانند XSS، SQL Injection و... را شناسایی و خنثی کنند.

ابزارهای پیشنهادی:

  • Sucuri Firewall

  • Cloudflare

  • Astra Web Security

پشتیبان‌گیری منظم از سایت

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

افزونه‌های بک‌آپ‌گیری:

  • UpdraftPlus

  • BackWPup

  • BlogVault

استفاده از افزونه‌های امنیتی جامع

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

افزونه‌های برتر:

  • Wordfence Security – شامل اسکن بدافزار، فایروال، مانیتورینگ و بیشتر

  • iThemes Security – پیشنهادهای خودکار امنیتی برای کاربران تازه‌کار

  • All In One WP Security & Firewall – رایگان و با امکانات زیاد

غیرفعال‌سازی XML-RPC

پروتکل XML-RPC یکی از مسیرهای نفوذ برای حملات Brute Force و DDoS است. اگر از این قابلیت استفاده نمی‌کنید، بهتر است آن را غیرفعال کنید.

روش غیرفعالسازی:

  • افزودن کد به فایل .htaccess:

apache

<Files xmlrpc.php> Order Deny,Allow Deny from all </Files>

مانیتورینگ فعالیت‌های کاربران و تغییرات فایل‌ها

نصب افزونه‌هایی برای نظارت بر تغییرات فایل‌ها و فعالیت کاربران باعث شناسایی سریع اقدامات مشکوک می‌شود.

افزونه‌های پیشنهادی:

  • WP Activity Log

  • Simple History

  • Stream

خرید انواع هاست از اویس هاست

در پایان باید تأکید کنیم که امنیت وردپرس یک وظیفه مستمر است. هیچ راهکار امنیتی دائمی و ۱۰۰٪ کامل وجود ندارد. تنها با اجرای هم‌زمان مجموعه‌ای از اقدامات پیشگیرانه و مانیتورینگ مداوم می‌توان از بروز تهدیدات جلوگیری کرد.

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

سوالات متداول

آیا فعال‌سازی SSL برای همه وب‌سایت‌ها ضروری است؟
بله، در حال حاضر استفاده از SSL نه‌تنها برای سایت‌هایی که اطلاعات حساس کاربران را جمع‌آوری می‌کنند ضروری است، بلکه برای تمامی وب‌سایت‌ها نیز توصیه می‌شود. مرورگرها مانند Chrome به کاربران درباره سایت‌های بدون SSL هشدار امنیتی می‌دهند و موتورهای جست‌وجو نیز به سایت‌های امن رتبه بهتری می‌دهند.

تفاوت SSL رایگان و پولی در چیست؟
گواهی‌نامه‌های رایگان مانند Let’s Encrypt معمولاً فقط برای احراز هویت پایه (Domain Validation) صادر می‌شوند و مناسب وب‌سایت‌های عمومی هستند. در مقابل، SSLهای پولی می‌توانند شامل اعتبارسنجی‌های قوی‌تر (Organizational یا Extended Validation) و همچنین ضمانت‌نامه مالی باشند که برای کسب‌وکارهای بزرگ و فروشگاه‌های اینترنتی توصیه می‌شود.

در ادامه بخوانید: چگونه امنیت وردپرس را به صورت رایگان افزایش دهیم؟

آیا نصب SSL باعث کاهش سرعت سایت می‌شود؟
خیر، امروزه پروتکل HTTPS با استفاده از تکنولوژی‌های پیشرفته مانند HTTP/2 باعث افزایش سرعت بارگذاری صفحات می‌شود. در واقع، بسیاری از وب‌سایت‌های مدرن با فعال‌سازی SSL، عملکرد بهتری نیز تجربه می‌کنند.

بعد از نصب SSL چه تغییراتی باید در وردپرس انجام شود؟
پس از نصب گواهینامه، باید آدرس سایت را در تنظیمات وردپرس (Settings > General) به نسخه HTTPS تغییر دهید. همچنین استفاده از افزونه‌هایی مانند Really Simple SSL کمک می‌کند تا تغییر آدرس‌ها و بارگذاری منابع به‌صورت خودکار انجام شود.

اگر SSL نصب نشود چه اتفاقی می‌افتد؟
عدم نصب SSL ممکن است باعث شود مرورگرها سایت شما را به‌عنوان "ناامن" نمایش دهند، کاربران به سایت اعتماد نکنند، و در رتبه‌بندی سئو نیز افت قابل‌توجهی داشته باشید. همچنین در صورت انتقال اطلاعات حساس بدون رمزنگاری، امکان سرقت داده‌ها وجود دارد.