سرور ایران نسخه ۲.۱
(شنبه تا چهارشنبه ۹:۰۰ الی ۱۶:۰۰) ۶-۹۵۰۱۸۴۴۵-۰۳۱  
صفحه نخست     ناحیه کاربری     ثبت شکایات     وبلاگ
سرور ایران
  • دامنه
    • دامنه های ملی
    • دامنه های بین المللی
    • جستجو و ثبت دامنه
    • پنل مشتریان دامنه های ملی
    • پنل نمایندگان دامنه بین المللی
  • میزبانی وب
    • هاست لینوکس حرفه ای
    • هاست لینوکس اقتصادی
    • هاست لینوکس حرفه ای ایران
  • میزبانی فایل
    • هاست دانلود
  • نمایندگی هاست
    • نمایندگی هاست حجمی
    • نمایندگی هاست ایران
    • نمایندگی هاست نامحدود
    • نمایندگی مستر ریسلر نامحدود
  • گواهینامه SSL
  • قوانین و مقررات
  • درباره ما
  • ارتباط با ما
  • دامنه
    • دامنه های ملی
    • دامنه های بین المللی
    • جستجو و ثبت دامنه
    • پنل مشتریان دامنه های ملی
    • پنل نمایندگان دامنه بین المللی
  • میزبانی وب
    • هاست لینوکس حرفه ای
    • هاست لینوکس اقتصادی
    • هاست لینوکس حرفه ای ایران
  • میزبانی فایل
    • هاست دانلود
  • نمایندگی هاست
    • نمایندگی هاست حجمی
    • نمایندگی هاست ایران
    • نمایندگی هاست نامحدود
    • نمایندگی مستر ریسلر نامحدود
  • گواهینامه SSL
  • قوانین و مقررات
  • درباره ما
  • ارتباط با ما

جلوگیری از حملات bruteforce وردپرس در nginx

جلوگیری از حملات bruteforce وردپرس در nginx

در این مقاله جلوگیری از حملات bruteforce وردپرس در nginx به شما آموزش داده میشود تا بتوانید این حملات که فایل wp-login.php را هدف میگیرند متوقف کنید. تنظیمات زیر، از حملات bruteforce با استفاده از ماژول HttpLimitReqModule در nginx جلوگیری می کند. این از ماژول های پیش فرض nginx است و نیازی به نصب جداگانه آن ندارید.

 

تنظیمات Nginx برای مقابله با حملات bruteforce وردپرس

برای تنظیمات کلی در فایل etc/nginx/nginx.conf  در بلوک  http{..}  دستور زیر را قرار دهید:

1
limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;

۱۰m سایز ناحیه است. ۱MB میتواند ۱۶۰۰۰ وضعیت را نگهداری کند. اگر تعداد سایت های شما زیاد است و یا سایت هایی با بازدید سنگین دارید ممکن است بخواهید این مقدار را روی ۲۰MB یا ۱۰۰MB تنظیم کنید.

۱r/s به این معناست که یک درخواست در هر ثانیه مجاز است. شما نمیتوانید شکاف ها را مشخص کنید. اگر مایلید این مقدار را باز هم محدود کنید یعنی تعداد درخواست های در هر ثانیه کمتر شود میتوانید ۳۰r/m را امتحان کنید که به معنای ۳۰ درخواست در هر دقیقه یا یک درخواست در هر دو ثانیه است.

 

تنظیمات برای wp-login.php

کانفیگ بالا برای کل سرور و حتی سایت های غیر وردپرس اعمال میشود و علاوه بر جلوگیری از حملات brutrforce میتوان از آن برای مقابله با حملات ddos نیز استفاده کرد. اما اگر میخواهید فقط برای فایل wp-login.php محدودیت اعمال کنید میتوانید دستور زیر را در بلوک  server{. .}   اضافه کنید:

1
2
3
4
5
location = /wp-login.php {
    limit_req   zone=one  burst=1 nodelay;
    include fastcgi_params;
    fastcgi_pass 127.0.0.1:9000;
}

 

و یا

1
2
3
4
5
6
7
8
location ~ \.php$ {
    location ~* wp\-login\.php {
        limit_req   zone=one  burst=1 nodelay;
        include fastcgi_params;
        fastcgi_pass 127.0.0.1:9000;
    }
    #other rules
}

 

وقتی درخواست ها از محدوده تعیین شده تجاوز کند  nodelay ارور  HTTP status code 503 (Service Unavailable)  را برمیگرداند. اگر میخواهید کد خطای ۴۴۴ و یا کد دیگری نمایش داده شود از کد زیر در بلوک  http {..}  برای تاثیر سراسری و یا در بلوک location {..}  برای تاثیر محلی استفاده کنید:

1
limit_req_status 444;

 

 

 

 

 

مطالب مرتبط

حملات DDOSجلوگیری از حملات DDOS توسط CloudFlare ngnixوب سرور Nginx چیست؟ ngnixکانفیگ وب سرور Nginx – بخش اول ngnixکانفیگ وب سرور Nginx – بخش دوم
Tags: bruteforce,  nginx,  وردپرس
Related Posts
  • بهینه سازی وب سرور nginx

  • کانفیگ وب سرور Nginx – بخش دوم

  • کانفیگ وب سرور Nginx – بخش اول

  • کاهش حجم و بهینه سازی دیتابیس وردپرس

← کانفیگ وب سرور Nginx – بخش دوم
بهینه سازی وب سرور nginx →

دسته‌ها

  • آموزش cPanel
  • آموزش امنیت
  • آموزش دایرکت ادمین
  • آموزش سئو و بهینه سازی
  • آموزش کانفیگ سرور
  • آموزش میزبانی وب
  • آموزش های دامنه
  • آموزش های وب سایت
  • آموزش وردپرس

نوشته های اخیر

  • نحوه اضافه کردن دامنه جدید به هاست سی پنل
    نحوه اضافه کردن دامنه جدید به هاست سی پنل

    نحوه اضافه کردن دامنه به هاست سی پنل (cPanel) در این مقاله ر...

  • تحریم ها و سیاست‌های جدید محدودیت Resello
    تحریم ها و سیاست‌های جدید محدودیت Resello

    اخیرا ریسلو ( Resello ) –  یک مرکز ثبت دامنه یا Registrar –...

  • بهینه سازی وب سرور nginx
    بهینه سازی وب سرور nginx

    Nginx در قیاس با PHP و MySQL نیاز به بهینه سازی کمتری دارد و...

  • جلوگیری از حملات bruteforce وردپرس در nginx
    جلوگیری از حملات bruteforce وردپرس در nginx

    در این مقاله جلوگیری از حملات bruteforce وردپرس در nginx به...

  • کانفیگ وب سرور Nginx – بخش دوم
    کانفیگ وب سرور Nginx – بخش دوم

    بهینه سازی های فایل سیستم در ادامه کانفیگ وب سرور Nginx – بخ...

نوشته های تصادفی

  • ارتقا نسخه php در سرور لینوکس و دایرکت ادمینارتقا نسخه php در سرور لینوکس و دایرکت ادمین
  • سرویس ابری SaaS چیست؟سرویس ابری SaaS چیست؟
  • نحوه انتخاب یک سرور مجازی مناسبنحوه انتخاب یک سرور مجازی مناسب
  • ۷ نکته مهم در مورد میزبانی وب سایت۷ نکته مهم در مورد میزبانی وب سایت
  • رفع خطای Leverage browser caching در Gtmetrix با ویرایش htaccessرفع خطای Leverage browser caching در Gtmetrix با ویرایش htaccess
  • فعال کردن gzip در وردپرس و سرورفعال کردن gzip در وردپرس و سرور
  • نحوه آپدیت دایرکت ادمین به آخرین نسخهنحوه آپدیت دایرکت ادمین به آخرین نسخه
  • فیشینگ چیست و راه های مقابله با آنفیشینگ چیست و راه های مقابله با آن
  • نحوه افزایش حجم آپلود دایرکت ادمین افزایش Max Filesizeنحوه افزایش حجم آپلود دایرکت ادمین افزایش Max Filesize
  • مقایسه‌ هاست اشتراکی و VPSمقایسه‌ هاست اشتراکی و VPS

آخرین مطالب وبلاگ

  • نحوه اضافه کردن دامنه جدید به هاست سی پنل
    نحوه اضافه کردن دامنه جدید به هاست سی پنل

    نحوه اضافه کردن دامنه به هاست...

  • تحریم ها و سیاست‌های جدید محدودیت Resello
    تحریم ها و سیاست‌های جدید محدودیت Resello

    اخیرا ریسلو ( Resello ) –  یک...

  • بهینه سازی وب سرور nginx
    بهینه سازی وب سرور nginx

    Nginx در قیاس با PHP و MySQL ن...

مطالب تصادفی وبلاگ

  • Gzip چیست و چگونه کار می کندGzip چیست و چگونه کار می کند
  • کانفیگ وب سرور Nginx – بخش اولکانفیگ وب سرور Nginx – بخش اول
  • رفع خطای Failed To retrieve directory listing در Filezillaرفع خطای Failed To retrieve directory listing در Filezilla
Copyright © 2011-2025 ServerIran - All Rights Reserved