محدود کردن ورود ناموفق وردپرس

محدود کردن ورود ناموفق وردپرس

در این آموزش وردپرس, قصد داریم به شما نحوه محدود کردن ورود ناموفق وردپرس را به دو روش نشان بدیم.با ایجاد محدودیت دفعات تلاش برای ورود در وردپرس wordpress , می توانید از سایت در برابر حملات brute force محافظت کنید.

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

 

پلاگین های وردپرس زیادی برای ایجاد محدودیت تلاش ناموفق لاگین در وردپرس وجود دارند.برای مثال, WP Limit Login Attempts, Cerber Security, Antispam & Malware Scan و غیره.

در این مقاله آموزشی, قصد داریم نحوه محدود کردن ورود ناموفق وردپرس را به دو روش زیر انجام بدیم.

  • با استفاده از پلاگین WP Limit Login Attempts
  • با افزودن کد php سفارشی بدون استفاده از افزونه

 

استفاده از پلاگین WP Limit Login Attempts

این پلاگین برای محدود کردن ورود ناموفق وردپرس استفاده می شود که رتبه بندی خوبی را دارد و دارای ۴۰k+ نصب فعال است. این پلاگین شامل چند قابلیت مانند محدودیت لاگین, اعتبارسنجی کپچا و غیره است.

افزونه WP Limit Login Attempts را از ریپازیتوری پلاگین wordpress.org دانلود و روی وبسایت وردپرسی خود نصب کنید.

بعد از نصب و فعال سازی, به پلاگین منوی پنل مدیریت شما اضافه می شود. این پلاگین دارای تنظیمات پیش فرضی بصورت زیر است:

  • تعداد تلاش برای لاگین
  • مدت زمان قفل کردن (دقیقه)
  • تعداد لاگین ناموفق برای نمایش کپچا (نمایش کپچا در لاگین ناموفق php)
  • چک باکس غیر/فعال سازی اعتبارسنچی کپچا

نکته: این پلاگین یک نسخه محدود از WP Limit Login Attempts Pro است. اگر قصد دارید که به تمام قابلیت ها و بیشتر دسترسی پیدا کنید می توانید نسخه خود را آپگرید یا از مارکت های ایرانی بخرید که خب آپدیت و لایسنس را شاید نداشته باشند.

همینکه پلاگین محدود کردن ورود ناموفق وردپرس فعال شد, کاربران مخرب و ربات ها در مقابل حملات brute force محدود می شوند.

 

کد php محدود کردن ورود ناموفق وردپرس

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

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

 

کد زیر را به فایل function.php واقع در فولدر قالب فعلی خود که فعال است اضافه کنید (اگر وجود نداشت ایجاد کنید) (wp-content/themes/[mytheme]/functions.php)

تابع بازگشتی شامل کد محدود کردن ورود ناموفق وردپرس است.

در کد بالا, ما از اکشن wp_login_failed و فیلتر authenticate برای قلاب کردن (hook) توابع و ست کردن ترنیست attempted_login بهره بردیم. (transiet برای کش کردن و ذخیره داده در حافظه موقت استفاده می شود.)

این شماره تلاش های ناموفق بصورت موفق ذخیره و برای نمایش اخطار به کاربر استفاده می شود.

فیلتر authenticate برای قلاب کردن تابع بررسی تلاش ناموفق

با استفاده از این فیلتر هوک , تابع بازگشتی check_attempted_login فراخوانی می شود.در این تابع, ما از متد get_transient برای دریافت تعداد لاگین ناموفق بهره می بریم.

اگر کاربر بیشتر از ۲ بار اطلاعات ورود را اشتباه وارد کند, پس یک ارور وردپرس در باره بلاک کردن کاربر برای یک مدت مشخص شده را برگشت می دهیم.

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

این اکشن هوک برای فراخوانی متد login_failed زمانی که کاربر تلاش ناموفقی برای لاگین انجام داد, استفاده شده است. هر دفعه با تلاش ناموفق, به تعداد تلاش برای لاگین اضافه می شود.

بعد این تعداد به عنوان ترنسیت attempted_login ست می شود که بعدا برای بلاک کردن کاربر برای مدت خاصی استفاده شود.

در کد php بالا, ما از تابع time_to_go برای محاسبه زمان باقیمانده برای اجازه به کاربر برای شروع دوباره بعد از بلاک کردن استفاده کردیم. همچنین, این تابع, timestamp را به یک فرمت قابل خواندن زمان تبدیل می کند.

 

اسکرین شات – متن خطای محدود کردن ورود ناموفق وردپرس

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

محدود کردن ورود ناموفق وردپرس

جمع بندی

خب, دید که به چه صورت می توانیم بخش لاگین وردپرس را بعد از ادامه تلاش ناموفق قفل کنیم.

با محدود کردن تعداد تلاش ناموفق وردپرس می توانیم وبسایت خود را در برار حملات اسکریپت های خودکار محافظت کنیم. همچنین با افزایش مدت زمان بلاک لاگین می توانید امنیت بیشتری را هم داشته باشید که البته نباید هم زیاده روی کنیم (نهایت ۱۰-۱۵ دقیقه )

این مقاله محدود کردن ورود ناموفق وردپرس بطور خاص وبسایت شما را از حملات brute force محافظت می کند برای افزایش امنیت وردپرس خود و حفاظت کل لایه های آسیب پذیر می توانید دوره آموزش افزایش امنیت وردپرس را مشاهده کنید.

 

امیدوارم از آموزش محدود کردن ورود ناموفق وردپرس استفاده مفید را برده باشید.

برای دانلود کدهای استفاده شده از باکس دانلود زیر استفاده کنید.

هر سوالی داشتید ، از قسمت نظرات ارسال کنید . سریعا ، پاسخگوی سوالات شما هستیم .

موفق و پیروز باشید.

حسن شفیعی توسعه دهنده وب و موبایل مدیر سایت علاقه خاصی به برنامه نویسی وب و موبایل دارم و هر روز تلاش می کنم به این حوزه مسلط تر شوم و اطلاعاتم را به شکل کاربردی برای علاقه مندان در وب به اشتراک بگذارم. اگر نیاز به برنامه نویس برای انجام پروژه و نوشتن اسکریپت های سمت وب, اپلیکیشن های اندروید و ios, پیدا کردن راه حل توسعه و غیره داشتید حتما از طریق تماس با ما/ واتساپ/ تلگرام بهم پیام بدید. برایتهیه هاست مطمین و پرسرعت کلیک کنید
مطالب زیر را حتما بخوانید
دیدگاه کاربران

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

دوره های آموزشی