آیا قصد محدودکردن ورود به پنل مدیریت وردپرس خود را دارید؟ ایجاد محدودیت ورود به پیشخوان وردپرس یکی از روش های امنیتی بسیار پرکاربرد است که با استفاده از آن می توانید دسترسی به سایت را برای افرادی که قصد نفوذ و یا وارد شدن غیرقانونی به سایت شما را دارند را محدود کنید. به طورکلی؛ هکرها ممکن است از یک حمله brute force برای حدس زدن رمز عبور مدیریت شما استفاده کنند. اگرشما تعداد دفعاتی که آنها می توانند وارد سیستم شوند را محدود کنید، شانس موفقیت آنها را به میزان قابل توجهی کاهش می دهید. به همین منظور ما در این مطلب قصد داریم آموزش ایجاد محدودیت در ورود به پنل مدیریت وردپرس را در اختیار شما قرار دهیم. با ما همراه باشید.
چرا باید ورود به پنل مدیریت وردپرس را محدود کنیم؟
روش های مختلفی برای هک و نفوذ به وب سایت وردپرسی جود دارد که یکی از رایج ترین آنها، حدس زدن رمزعبور پیشخوان مدیریت می باشد. بسیاری از هکرها هستند که با استفاده از نرم افزارهای خودکار برای حدس زدن اطلاعات ورود شما استفاده می کنند تا بتوانند به وب سایت شما دسترسی پیدا نمایند. بنابراین برای اینکه بتوانید جلوی بسیاری از حملات را به ویژه حمله brute force را بگیرید، بهترین روش محدودیت تعداد ورود به پنل مدیریت وردپرس می باشد. به عنوان مثال، شما میتوانید تعیین کنید که پس از 5 بار تلاش ناموفق برای ورود به سیستم، سیستم به صورت خودکار قفل شود.
آموزش ایجاد محدودیت در ورود به پیشخوان وردپرس
روش های مختلفی برای شمارش و اعمال محدودیت تعداد ورود اشتباه به پنل مدیریت وردپرس وجود دارد که در ادامه مطلب بهترین آنها را به شما معرفی می کنیم.
1- ایجاد محدودیت ورود به پیشخوان وردپرس با افزونه
یکی از ساده ترین روش های ایجاد محدودیت تعداد ورود به پنل مدیریت وردپرس، استفاده از یک افزونه محدودیت در ورود به پنل مدیریتی وردپرس می باشد. افزونه های زیادی در این خصوص ارائه شده است که بی تردید افزونه Limit Login Attempts Reloaded یکی از بهترین گزینه ها می باشد. برای انجام اینکار، ابتدا این افزونه را روی وردپرس خود نصب و فعال کنید. این افزونه دارای یک نسخه رایگان می باشد که هر آنچیزی که شما نیاز دارید را در اختیارتان قرار می دهد.
پس از فعالسازی افزونه، از بخش “تنظیمات” روی گزینه “Limit Login Attempts” کلیک کنید. بعد از آن از بالای صفحه وارد تب “تنظیمات” شوید.
برای انطباق با قوانین GDPR، میتوانید تیک گزینه “یکی بودن با GDPR” را بزنید تا یک پیام در صفحه ورود به شما نمایش داده شود. در مرحله بعد، انتخاب می کنید که وقتی شخصی قفل شده است به شما اطلاع داده شود. در صورت تمایل می توانید آدرس ایمیلی که اعلان به آن ارسال می شود را تغییر دهید. به طور پیش فرض، این افزونه روی عدد 3 قرار داده شده، یعنی برای سومین بار که کاربر قفل شده است، به شما اطلاع داده می شود.
بعد از آن صفحه را به سمت پایین اسکرول کنید تا وارد بخش “تنظیمات برنامه” شوید. در این قسمت می توانید تعیین کنید که چند بار تلاش برای ورود به سیستم انجام شود و کاربر چقدر باید منتظر بماند تا بتواند دوباره امتحان کند.
ابتدا باید مشخص کنید که کاربر تا چه تعداد مجاز است که برای ورود به سایت تلاش کند. پس از آن، انتخاب کنید اگر کاربر از تعداد تلاش های ناموفق بیشتر شود، چند دقیقه باید منتظر بماند. مقدار پیش فرض روش 20 دقیقه می باشد. شما همچنین می توانید زمان انتظار را پس از اینکه کاربر چندین بار قفل شد افزایش دهید. به عنوان مثال، تنظیمات پیش فرض به کاربر اجازه نمیدهد تا 24 ساعت پس از 4 بار قفل شدن به سیستم وارد شود.
به دلایل امنیتی به شما توصیه می شود که با قسمت Trusted IP Origins کاری نداشته باشید و آن را تغییر ندهید. در نهایت روی دکمه ذخیره تغییرات کلیک کنید.
2- ایجاد محدودیت ورود به پیشخوان وردپرس بدون افزونه
اگر نمی خواهید از افزونه برای اعمال محدودیت برای ورود به پنل مدیریت وردپرس خود استفاده کنید، نگران نباشید، زیرا شما می توایند اینکار را بدون هیچ گونه افزونه ای هم انجام دهید. شما می توانید اینکار را از طریق هاست انجام دهید.
قبل از هرگونه اقدامی حتماً یک نسخه پشتیبان از تمامی بخش های سایت خود تهیه کنید تا در صورت از بین رفتن اطلاعات بتوانید آنها را بازیابی نمائید. حال وارد کنترل پنل هاست خود شوید و سپس از صفحه اصلی روی گزینه فایل منیجر کلیک نمائید. بعد از آن باید به پوشه دایرکتوری اصلی سایت یعنی همان پوشه public_html مراجعه کنید. پس از آن وارد پوشه wp-content شوید. سپس پوشه تم خود را باز کنید و فایل function.php را پیدا کنید. حال باید روی فایل کلیک راست کرده و گزینه edit را انتخاب نمائید. وقتی وارد ویرایشگر فایل شدید باید کدزیر را وارد نمائید:
function check_attempted_login( $user, $username, $password ) {
if ( get_transient( ‘attempted_login’ ) ) {
$datas = get_transient( ‘attempted_login’ );
if ( $datas[‘tried’] >= 3 ) {
$until = get_option( ‘_transient_timeout_’ . ‘attempted_login’ );
$time = time_to_go( $until );
return new WP_Error( ‘too_many_tried’, sprintf( __( ‘<strong>ERROR</strong>: You have reached authentication limit, you will be able to try again in %1$s.’ ) , $time ) );
}
}
return $user;
}
add_filter( ‘authenticate’, ‘check_attempted_login’, 30, 3 );
function login_failed( $username ) {
if ( get_transient( ‘attempted_login’ ) ) {
$datas = get_transient( ‘attempted_login’ );
$datas[‘tried’]++;
if ( $datas[‘tried’] <= 3 )
set_transient( ‘attempted_login’, $datas , 300 );
} else {
$datas = array(
‘tried’ => 1
);
set_transient( ‘attempted_login’, $datas , 300 );
}
}
add_action( ‘wp_login_failed’, ‘login_failed’, 10, 1 );
function time_to_go($timestamp)
{
// converting the mysql timestamp to php time
$periods = array(
“second”,
“minute”,
“hour”,
“day”,
“week”,
“month”,
“year”
);
$lengths = array(
“60”,
“60”,
“24”,
“7”,
“4.35”,
“12”
);
$current_timestamp = time();
$difference = abs($current_timestamp – $timestamp);
for ($i = 0; $difference >= $lengths[$i] && $i < count($lengths) – 1; $i ++) {
$difference /= $lengths[$i];
}
$difference = round($difference);
if (isset($difference)) {
if ($difference != 1)
$periods[$i] .= “s”; $output = “$difference $periods[$i]”;
در نهایت تغییرات خود را ذخیره کنید. با اینکار ورود کاربرانی که 3 بار تلاش ناموفق داشته باشند، قفل خواهند شد.
جمع بندی: محدودیت تعداد ورود به پنل مدیریت وردپرس
وردپرس به عنوان محبوب ترین سیستم مدیریت محتوای جهان بیشتر از سایر مورد حمله هکرها قرار می گیرد. یکی از رایج ترین حملات معمولا در بخش ورود به پیشخوان وردپرس اتفاق می افتد. بنابراین شما برای افزایش امنیت سایت خود باید حتماً برای ورود به پنل مدیریت وردپرس خود محدودیت هایی اعمال کنید. ما در این مطلب محدودیت ورود به پیشخوان وردپرس را با استفاده از دو روش به شما عزیزان آموزش دادیم. امیدوارم این مطلب مورد رضایت شما قرار گرفته باشد.
منابع: wpbeginner، fixrunner