با درود و عرض ادب،
نیازمند اجرا/نصب فایروال ضد DDoS حرفهای برای محافظت از پورت UDP 9987 (سرور TeamSpeak) هستیم. سیستمعامل سرور Debian 12 با مشخصات 4 هسته CPU و 8 گیگ RAM بوده و ترافیک بسیار بالایی (بیشتر آپلود) دارد. ترجیح بر استفاده از nftables است، چراکه تجربه قبلی با iptables در ترافیکهای بالا موجب لگ در سرور شده بود.
پورت 9987 مخصوص TeamSpeak بوده که بهصورت عمومی در دسترس است و کاربران زیادی با IPهای متفاوت بهطور همزمان, هر روز به آن متصل میشوند.
مشخصات ترافیک عادی کاربران:
میانگین نرخ ارسال پکت: معمولاً زیر 60 پکت بر ثانیه
نرخ انفجار لحظهای: حداکثر 450 پکت بر ثانیه
حداکثر طول مجاز پکت: 600 بایت
در مواردی مانند:
- ورود اولیه به سرور
- اتصال مجدد آنی
- تغییر اینترنت کاربر
- پخش یا شنیدن موزیک با کیفیت بالا
باعث میشه هر کاربر که آیپی جدا دارد گاها مشاهده شده تا 5 هزار بسته در ثانیه ارسال میکند اما این فقط لحظه ایست یعنی نهایتا تا 5 ثانیه این پکت عظیم را ارسال میکنند
بنابراین هر آیپی میتوانند تا نهایتا برای 5 ثانیه بسته هایی با نرخ بالا بفرستد ولی اگر بیشتر از 5 ثانیه شد برای مثال برای 15 ثانیه مداوم و همچنان ارسال بسته با نرخ های عجیب ادامه داشت باید بررسی شود و اگر تشخیص داده شد ترافیک مخرب بود آیپی مهاجم بلاک و بن شود
همچنین حملاتی وجود دارد که با طول صفر و نرخ کمتر از 50، ولی تعداد بسیار زیاد پکت، باعث ایجاد اختلال در سرور میشوند. حتی در صورت بن کامل IP در ipset یا iptables، باز هم مشکل packet loss در صداها مشاهده شده است. بنابراین باید اسکریپتی هوشمند و حرفهای طراحی شود که IPهای مهاجم را بهطور کامل شناسایی کرده و هیچ پکتی (بهخصوص UDP) از آنها در شبکه پذیرفته نشود و بهصورت کامل دراپ شود.
الزامات دیگر:
به هیچ عنوان کاربران و ترافیک مجاز را بن نکند و باتوجه به پارامتر های ارائه شده رفتار کاربران نسبت به شناسایی ترافیک غیر مجاز اقدام کند
امکان تعریف وایتلیست برای IPهای مورد اعتماد که هیچیک از قوانین فایروال روی آنها اعمال نشود و به تمام پورتها دسترسی داشته باشند
تعریف نرخ برای پورتهای TCP:
پورت 55555 (مثال – SSH): نرخ محدود و عادی (معمولی)
پورت 33333 (مثال – فایل): نرخ آزادتر با آستانه بالا و سختگیری کم (با کمترین محدودیت)
بلاک کامل پکتهای fragmented
اجازه کامل به ترافیک loopback:
INPUT -i lo -j ACCEPT
OUTPUT -o lo -j ACCEPT
تمام ترافیک OUTPUT مجاز باشد، ولی INPUT طبق موارد بالا محدود شود
محدودسازی ICMP بهگونهای که از خارج نتوان سرور را پینگ کرد:
INPUT -p icmp --icmp-type echo-request -j DROP
INPUT -p icmp -j ACCEPT
گزارشدهی:
ارسال گزارش بنها (شامل IP مهاجم، پورت مورد حمله، نوع حمله و مدت بن) به آدرس وبهوک زیر:
http://1.2.3.4:8081/broadcast
مدت زمان بن هر IP مهاجم: 20 دقیقه
لیست اولیه آیپیهای وایتلیست (نمونه):
*******
بهینهسازی منابع:
به دلیل بار بالای ترافیک و تعداد زیاد IP، سطح لاگگیری باید بهگونهای باشد که کمترین میزان مصرف رم، CPU و هارد را داشته باشد.
الزامات نهایی:
تعریف پارامتر برای اجرای خودکار پس از ریبوت (مانند systemctl)
ارائه فایل نهایی شامل:
اسکریپت کامل
آموزش نصب
کلیه دستورات مورد نیاز
پیشنیازهای نصب برای Debian 12
با تشکر فراوان
این آگهی از وبسایت کارلنسر پیدا شده، با زدن دکمهی تماس با کارفرما، به وبسایت کارلنسر برین و از اونجا برای این شغل اقدام کنین.
هشدار
توجه داشته باشید که دریافت هزینه از کارجو برای استخدام با هر عنوانی غیرقانونی است. در صورت مواجهه با موارد مشکوک، با کلیک بر روی «گزارش مشکل آگهی» به ما در پیگیری تخلفات کمک کنید.