In the name of God
سلامممممممممممممممم می ارزم خدمت تمامی دوستان و همراهان گرامی
امیدوارم حالتون خوب, و حال دلتون بهتر باشه
بعد از مدت ها با یه مطلب آموزشی دیگه در خدمت شما ها هستیم!
توی این مبحث, میخوایم به بررسی Load Balancer, Cloudflare, Captcha و یک سری موارد دیگه بپردازیم, مباحثی که شاید اگه نبودن, تا همین الانش خیلی از زیرساخت ها پوکیده بودن!
خب, اول از همه اصلا باید ببینیم اینا چی هستن؟
خب ببینید, شما فرض کنید یه وب سایتی رو دارید
اوایلش همه چیز خوب پیش میره, شما ماهیانه در بهترین حالت ممکن, ۱۰۰ کاربر فعال دارید, و مداوم به دلیل Viral Marketing (یعنی کاربرا معتاد اون چیز میشن و شروع میکنن به تبلیغ راجبش) به تعداد این نفرات زیاد میشه
تا جایی زیاد میشه که سرور شما کم کم زیر فشار میره, مداوم لاگ ها پر میشن, شما باید ۲۴ ای پشت سیستم باشید و...
خب, برای مقابله با همچین چیزی, مبحثی به وجود میاد تحت عنوان Load Balancer
حالا Load Balancer هم گذاشتید, یهو گروهی از کاربرا شیطونی میکنن یه DDoS هم میزنن
این وسط, ما بدیها نیاز به یه سیستم امنیتی داریم
و مبحث Cloudflare میاد وسط
اوکی حالا Cloudflare هم اومد, ولی یک سری نفراتی که میان توی سایت, در اصل ربات هستن و کاربر واقعی نیستن, پس برای مقابله با این مورد, مبحثی میاد وسط به اسم Captcha
که در ادامه بهشون میپردازیم
۱- Load Balancer چیه؟
به صورت کلی بخوایم بگیم, Load Balancer کاری که انجام میده توضیع بار بین چندین سرور هستش
فرض کنید شما ۴۳۴۳۵ سرور دارید, از بین اینها فقط یکیشون به عنوان درگاه هستش و کاربران باهاش در ارتباط هستن, اینجا اتفاقی که میوفته چیه؟
اما وقتی Load Balancer بیاد وسط (نه که قر بده ها) این رو بین ۴۳۴۳۴ سرور دیگه هم پخش میکنه تا اون اتفاق پوکیدنه نیوفته
Load Balancer میتونه هرچیزی باشه
نمونه ها:
دستگاه سخت افزاری: Load Balancer میتونه یک دستگاه سخت افزاری و به خصوصی برای توضیع بار باشه (این دستگاه میتونه از تراشه های تخصصی FPGA/ASIC تشکیل شده باشه), معمولا گرون ترین روش هستش اما واقعا قدرتمند هستش و برای توضیع بار در ارقام بسیار بسیار بالا استفاده میشه
این نوع دستگاه ها مستقیما بین شبکه خارجی و سرورها نصب میشن و بار رو توضیع میکنن
نرم افزار روی سرور: بله! یک سرور (از بین اون ۴۳۴۳۵ تا سرور) میتونه یک لود بالانسر باشه! اما تقریبا پر معایب ترین روش همینه, چرا؟ چون خود اون سروره که شده Load Balancer میتونه گلوگاه بشه
نمونه هایی از نرم افزار ها میشه به NGINX و HAProxy اشاره کردش
سرویس ابری (البته طبق معمول توی ایران Locked): بله! شما به سادگی میتونید بدون پیچیدگی های کانفیگ و مدیریت لود بالانسر, اون رو بسپارید به Google Cloud, Azure, AWS و... و اونا این بارها رو به دوش بکشن و شما پاتو بزاری روی اون یکی پا, جلو باد کولر دراز بکشی رو کاناپه و یه خواب گرم و نرم کنی
۲- Cloudflare چیه؟
خب, الان ما با لود بالانسر آشنا شدیم و فهمیدیم چیه
اما فرض کنید, یک گروهی از کاربرا شیطنت کنن و بخوان عملیات دیداس (یا دی دی او اس) بزنن به سرور(های) شما
اینجا حتی لود بالانسر هم داشته باشید راه فراری نیست
چون لود بالانسر وظیفش پخش بار بین سرور ها هستش
نه مقابله با تهدید ها
یعنی هر درخواستی, حتی مخرب هارو هم به دست سرورها میرسونه
پس, مبحث کلادفلر میاد وسط! وظیفه ی کلادفلر در اصل برقراری امنیت در برابر تهدید های سمت شبکه (درخواست) هستش
!!!! کلادفلر در برابر حملات سایبری که مربوط به شبکه نمیشن دخالتی نداره !!!!
یعنی کلادفلر میتونه در برابر DoS, DDoS و... تا حدی از شما دفاع کنه, اما مابقی حملات مثل Brute Force (هرچند, با یه Rate Limit ساده قابل حل شدنه, توی کلادفلر هم میشه, ولی اغلب ترجیح بر اینه که خودشون بسازن سیستم مقابله با برات فورس رو), SQL Injection, No SQL Injection, SSRF, CSRF, XSS, و... باید خودتون خودتون رو مقاوم کنید
توی اینجا, شاید برای شما ۳ میلیون درخواست بیادش روزی, اگر این ۳ میلیون درخواست جلوشون کلادفلر بیادش قبل از رسیدن درخواست ها به لود بالانسر, این درخواست ها شاید نصف بشن, مثلا ۱.۵ میلیون درخواست واقعی میادش و مابقی تهدید محسوب میشن
اما مورد اصلی اینه که کلادفلر به صورت پیشفرض شما رو راجبه کاربرای فیک (یا بات ها) مقاوم نمیکنه
و اینجاست که مبحث جدیدی میاد وسط...
۳- کپچا چیه؟
قطعا اگر کاربر اینترنت باشید, حداقل یک بار اسم کپچا رو شنیدید
مثلا Google Captcha, Cloudflare Capcha, و... مابقی پلتفرم ها
کپچا در اصل روشی برای مقابله با ربات ها هستن که مبادا ورود کنن به سایت شما
به صورت کلی, رویه ی پاسخ دادن/درخواست دادن به از/به یک سرور به این صورته:
کلاینت -> عمو درخواستمو قبول میتنی؟ -> کلادفلر: جججججون چه پسری -> کپچا: ربات کی نیستی؟؟؟ -> لود بالانسر: کدوم لیاقت سرور تورو داره؟ -> سرور شماره ۴۵۵۳۳ (ای ژان) -> سایت: بفرما کوکی کوفت کن
و اینم شد کل ماجرای ما
امیدوارم لذت برده باشید,
تا درودی دیگر, شما رو به خدای بزرگ میسپارم
خدا یار و نگهدارتون باشه!