امنیت عملیاتی وبسایت وردپرس ( ۱۰ گام مرحله به مرحله امن سازی وردپرس و cpanel )
ایمنسازی وبسایت وردپرس یک گام حیاتی در حفظ امنیت اطلاعات، جلوگیری از حملات و تهدیدات آنلاین است. در این مقاله، به طور کامل و مرحله به مرحله، راهکارهای مختلفی برای ایمنسازی وردپرس توضیح داده خواهد شد. این آموزش شامل تنظیمات در پنل سیپنل (cPanel) و کدهای امنیتی نیز می باشد. این توضیحات برای مدیران و طراحانی است که وبسایت مبتنی بر هاست ارایه می نمایند. در بخش های قبلی امنیت سرور بطور کامل ارایه شده است.
مرحله اول: بروزرسانی وردپرس، افزونهها و قالبها
یکی از مهمترین نکات در امنیت وردپرس، بروزرسانی مداوم نرمافزارها است. در وردپرس، افزونهها و قالبها باید همواره به آخرین نسخهها آپدیت شوند تا از آسیبپذیریهای شناخته شده محافظت شود.
کد برای بروزرسانی خودکار افزونهها:
define('WP_AUTO_UPDATE_CORE', true); // فعالسازی بروزرسانی خودکار هسته وردپرس
add_filter('auto_update_plugin', '__return_true'); // فعالسازی بروزرسانی خودکار افزونهها
add_filter('auto_update_theme', '__return_true'); // فعالسازی بروزرسانی خودکار قالبها
این موارد از طریق پیشخوان وردپرس نیز بعضاً قابل تنظیم هستند ولی استفاده از کد حرفه ای تر است.
مرحله دوم: انتخاب پسوردهای قوی
استفاده از پسوردهای ضعیف، درهای ورودی وبسایت شما را برای هکرها باز میکند. از پسوردهای ترکیبی شامل حروف بزرگ و کوچک، اعداد و نمادها استفاده کنید.
مثال پسورد قوی:
G7&kp9#T%f9Lo2$Q
مرحله سوم: فعالسازی احراز هویت دو عاملی (2FA)
برای جلوگیری از دسترسی غیرمجاز به اکانتهای مدیریتی، بهتر است از احراز هویت دو عاملی (2FA) استفاده کنید.
نصب و تنظیم افزونه 2FA:
- به پیشخوان وردپرس بروید.
- افزونه Google Authenticator یا Two Factor Authentication را نصب و فعال کنید.
- بعد از فعالسازی، دستورالعملها را دنبال کنید تا 2FA را پیکربندی کنید.
مرحله چهارم: محدود کردن دسترسی به wp-admin
یکی از روشهای موثر برای جلوگیری از حملات brute-force، محدود کردن دسترسی به قسمت مدیریت وردپرس است.
کد برای محدود کردن دسترسی به wp-admin:
<Files wp-login.php>
Order Deny,Allow
Deny from all
Allow from YOUR_IP_ADDRESS
</Files>
این کد فقط به آیپی خاصی اجازه دسترسی به wp-login.php میدهد.
مرحله پنجم: نصب افزونه امنیتی
افزونههای امنیتی به شما در شناسایی و جلوگیری از تهدیدات کمک میکنند. افزونههایی مانند Wordfence و iThemes Security ابزارهایی قدرتمند برای شناسایی و مقابله با حملات هستند.
مراحل نصب افزونه Wordfence:
- به پیشخوان وردپرس بروید.
- به بخش افزونهها بروید و افزونه Wordfence Security را جستجو کنید.
- پس از نصب و فعالسازی، افزونه را پیکربندی کنید.
مرحله ششم: تنظیمات سیپنل (cPanel)
- تنظیمات امنیتی cPanel:
- به cPanel وارد شوید.
- از قسمت Security، گزینههای SSL/TLS و SSH Access را فعال کنید.
- برای جلوگیری از دسترسیهای غیرمجاز، IP Blocker را تنظیم کنید.
- تنظیمات فایروال در cPanel: برای جلوگیری از حملات DDoS و دیگر تهدیدات، تنظیمات فایروال را فعال کنید.
- از قسمت Security در cPanel، گزینه ConfigServer Security & Firewall را نصب کنید.
- فعالسازی حفاظت از فایلها (File Permissions):
- در cPanel، به File Manager بروید.
- اطمینان حاصل کنید که فایلها و پوشهها دارای مجوزهای صحیح باشند (مثل 755 برای پوشهها و 644 برای فایلها).
مرحله هفتم: استفاده از SSL برای رمزنگاری
استفاده از SSL (Secure Sockets Layer) ارتباطات وبسایت شما را رمزنگاری میکند و از شنود اطلاعات جلوگیری میکند.
نصب SSL در cPanel:
- وارد cPanel شوید.
- به بخش SSL/TLS بروید و یک گواهی SSL نصب کنید.
- پس از نصب SSL، از پلاگینهایی مانند Really Simple SSL برای فعالسازی و تنظیم آن در وردپرس استفاده کنید.
مرحله هشتم: بررسی آسیبپذیریها و پشتیبانگیری منظم
- از ابزارهای نظارتی مثل Sucuri یا SiteLock برای اسکن آسیبپذیریهای وبسایت استفاده کنید.
- پشتیبانگیری منظم از دادههای سایت بسیار مهم است. میتوانید از افزونههایی مانند UpdraftPlus برای پشتیبانگیری منظم استفاده کنید.
مرحله نهم: جلوگیری از حملات SQL Injection
کد برای جلوگیری از حملات SQL Injection:
if ( isset($_GET['id']) ) {
$id = intval($_GET['id']); // تبدیل ورودی به عدد صحیح
$query = "SELECT * FROM table WHERE id = $id";
$result = mysqli_query($conn, $query);
}
مرحله دهم: فعالسازی حفاظت در برابر حملات Brute Force
برای جلوگیری از حملات brute-force به قسمت ورود وردپرس، میتوانید از افزونههایی مانند Limit Login Attempts استفاده کنید.
کد برای محدود کردن تلاشهای ورود:
define('LIMIT_LOGIN_ATTEMPTS', 5); // تعداد تلاشهای ناموفق
define('LOCKOUT_TIME', 15); // زمان قفل شدن حساب پس از تلاشهای ناموفق (دقیقه)
ایمنسازی وردپرس یک فرآیند چند مرحلهای است که نیاز به نظارت و بروزرسانی مداوم دارد. از روشهای مختلفی برای افزایش امنیت استفاده کنید: از بروزرسانی منظم، انتخاب پسوردهای قوی، افزونههای امنیتی، و تنظیمات دقیق در cPanel گرفته تا پشتیبانگیری منظم و استفاده از SSL. این اقدامات میتوانند خطرات را کاهش داده و وبسایت شما را از تهدیدات مختلف محافظت کنند.