লিনাক্স কমান্ড নেটস্যাট এবং iptables ব্যবহার করে ডস আক্রমণ প্রতিরোধ করতে


11

ডিডোস আক্রমণ প্রতিরোধ করতে আমি প্রতি আইপি 200 এরও বেশি অনুরোধ ড্রপ করতে চাই। এই কমান্ডটি আমি প্রতি আইপি প্রতি অনুরোধের গণনা সনাক্ত করতে ব্যবহার করেছি:

netstat -alpn | grep :80 | awk '{print $5}' |awk -F: '{print $(NF-1)}' |sort | uniq -c | sort -nr

এখন আমি সমস্ত আইপি ঠিকানাগুলি যুক্ত করতে চাই যা আইপিটিবেলে 200 টিরও বেশি অনুরোধ করে DROP ইনপুট এবং আউট পুটে।


@ দাউদ হিসাবে উল্লিখিত হিসাবে আপনি নিশ্চিত হয়ে গেছেন যে আপনি কেবলমাত্র "প্রশমিত" করতে পারবেন এবং আপনার সার্ভারে ডিডিওএস আক্রমণকে পুরোপুরি আটকাতে পারবেন না।
কাপ্তান

উত্তর:


12

আপনি আগত সংযোগগুলির হার সীমাবদ্ধ করতে iptables ব্যবহার করতে পারেন। উদাহরণস্বরূপ, যদি আপনি কোনও উত্স থেকে প্রতি মিনিটে 200 এর বেশি সংযোগ না চান:

iptables -I INPUT -p tcp --dport 80 -m state --state NEW -m recent --set

iptables -I INPUT -p tcp --dport 80 -m state --state NEW -m recent --update --seconds 60 --hitcount 200 -j DROP


1
এটিরও একটি ব্যাখ্যা থাকা ভাল হবে।
09

18

আপনি একটি তৈরি করতে পারেন ipset। এই পদ্ধতিতে আপনি iptablesনিয়মটি পরিবর্তন না করে আপনার প্রয়োজন মতো সেটগুলিতে যতগুলি আইপি যুক্ত করতে পারেন ।

ipset -N myset iphash
ipset -A myset 1.1.1.1
ipset -A myset 2.2.2.2

অথবা, আপনার ক্ষেত্রে, আপনার স্ক্রিপ্টের আউটপুট ব্যবহার করুন এবং এ জাতীয় কিছু দিয়ে এটি পড়ুন:

while read a; do ipset -A myset "$a"; done < <(your script here)

এবং এটি আপনার iptablesনিয়মে রেফারেন্স :

iptables -A INPUT -m set --set myset src -j DROP

আরও বিশদ এবং বিকল্পগুলির জন্য ম্যানপেজটি পড়ুন ।

সরাসরি ব্যবহার করে ডিডিওএস আক্রমণ প্রশমিত করার অন্যান্য উপায়ও রয়েছে iptables। পড়ুন iptablesসম্পর্কে র manpage অধ্যায় connlimitএবং recentমডিউল।


এটি উজ্জ্বল কারণ আইপসেটগুলি হ্যাশ টেবিলের মতো বিকল্পের চেয়ে অনেক দ্রুত।
isuldor
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.