मैं Amazon EC2 उदाहरण के साथ कई आईपी पते कैसे ब्लॉक कर सकता हूं?


27

मुझे पता है कि आईपी पते की एक निश्चित श्रृंखला मेरे सर्वर के साथ समस्या पैदा कर रही है, 172.64.*.*मेरे अमेज़ॅन ईसी 2 उदाहरण तक पहुंच को अवरुद्ध करने का सबसे अच्छा तरीका क्या है? क्या सुरक्षा समूहों का उपयोग करने का एक तरीका है या क्या सर्वर पर फ़ायरवॉल के साथ ऐसा करना बेहतर है?


1
यदि उदाहरण VPC के भीतर है, तो आप किसी विशिष्ट श्रेणी को अस्वीकार करने के लिए Network ACL को संपादित कर सकते हैं।

जवाबों:


17

यदि संभव हो तो, सर्वर और फ़ायरवॉल दोनों पर ट्रैफ़िक को रोकें।

सुरक्षा समूह अच्छे हैं क्योंकि वे आपके मेजबान के लिए बाहरी हैं इसलिए डेटा कभी भी आप तक नहीं पहुंचता है। वे हालांकि अधिकांश सर्वर आधारित फ़ायरवॉल के रूप में कॉन्फ़िगर करने योग्य नहीं हैं।

दुर्भाग्य से, EC2 सुरक्षा समूह केवल डिफ़ॉल्ट अस्वीकृत नीति के माध्यम से "अनुमति" सेवाएं दे सकते हैं। इसलिए यदि आप एक छोटी सी आईपी श्रेणी के लिए सार्वजनिक रूप से "अनुमत" सेवा तक पहुंच को अवरुद्ध करने की कोशिश कर रहे हैं, तो "बाकी इंटरनेट" के लिए अनुमति नियम का निर्माण करना सिर्फ एक आईपी सीमा को अवरुद्ध करने की तुलना में थोड़ा अधिक जटिल है। जैसा कि आपने एक अच्छा बड़ा हिस्सा निर्दिष्ट किया है, नेटवर्क रेंज की सूची जिसमें 172.64.0.0/16 शामिल नहीं है, बहुत लंबी नहीं है:

0.0.0.0/1
128.0.0.0/3
160.0.0.0/5
168.0.0.0/6
172.0.0.0/10
173.0.0.0/8
174.0.0.0/7
176.0.0.0/4
192.0.0.0/3
224.0.0.0/3

इस सूची को आपके पोर्ट के लिए जोड़ा जाना चाहिए। फिर आप उस पोर्ट के लिए अपना 'allow all' नियम हटा सकते हैं। यदि आपके पास ऐसे कई पोर्ट हैं, जिनके लिए आप ऐसा करना चाहते हैं, तो वे सन्निहित नहीं हैं, तो उन्हें कई बार जाने की आवश्यकता होगी। यदि आपके पास कई सुरक्षा समूह हैं, तो यह जल्दी से असहनीय हो सकता है।

स्थानीय रूप से फ़ायरवॉलिंग भी काम करेगी। iptablesडिफ़ॉल्ट अमेज़न AMI पर उपलब्ध है, और सभी लिनक्स डिस्ट्रो के

sudo iptables -I INPUT -s 172.64.0.0/16 -j DROP

अपने नियमों को जोड़ने के बाद आपको उन्हें सहेजना होगा, और यह सुनिश्चित करना होगा कि iptablesसेवा बूट पर शुरू हो।

# For Amazon Linux
sudo service iptables save

# Other distributions might use one of these:
#sudo iptables-save > /etc/sysconfig/iptables-config
#sudo iptables-save > /etc/iptables/rules.4

वितरण के साथ सहेजने के लिए कॉन्फ़िगर की गई फ़ाइल भिन्न होगी।

एक वीपीसी का उपयोग करना

यदि आप अपने उदाहरणों के लिए VPC का उपयोग करते हैं तो आप "नेटवर्क ACLS" को निर्दिष्ट कर सकते हैं जो आपके सबनेट पर काम करता है। नेटवर्क ACLs आपको अनुमति और नियम दोनों को लिखने की अनुमति देते हैं इसलिए मैं इसे इस तरह से करने की सलाह दूंगा।


यह अब काम नहीं करता है
किम जोंग वू

@KimJongWoo क्या काम नहीं करता है? मैं देख iptablesनहीं सकता काम कर रहे हैं तो क्या आप सुरक्षा समूह में बड़े सबनेट की अनुमति देते हैं?
मैट

12

ट्रैफ़िक को रोकने का सबसे सरल तरीका है (VPC का उपयोग किया जा रहा है) को उस उदाहरण के VPC नेटवर्क ACL में जोड़कर और उस IP पते से सभी ट्रैफ़िक को अस्वीकार कर दिया जाता है।

याद रखने वाली एक बात यह है कि इंकार नियम संख्या पहली अनुमति नियम संख्या से कम होनी चाहिए।


4
आपका मतलब है कि इनकार नियम संख्या कम होनी चाहिए फिर पहली अनुमति नियम संख्या?
दान तेनबाम

हाँ, यह सही है।
2:22 बजे pg2286

1
ध्यान रखें कि 20 ACL नियमों की एक सीमा है। और यह बेकार है, अमेज़ॅन।
एलेक्स

3

: मैं एक मुद्दा में दो बार चलाने के लिए और एहसास हो गया मेरी EC2 स्थिति थोड़ा अलग है iptablesकाम नहीं करता है तो अपने सर्वर (रों) एक लोचदार लोड संतुलन (ईएलबी) के पीछे एक क्लस्टर में कर रहे हैं - आईपी पते उदाहरण के बारे में जानता है की है कि ELB।

यदि आप अपने ELB को अधिक आधुनिक कॉन्फ़िगरेशन में कॉन्फ़िगर करते हैं, तो यह SO उत्तर देखें: /programming/20123308/how-to-configure-aws-elb-to-block-earch-ip-addeses- परिचित -spammers

हमारे मामले में, हमारे पास चीजें अच्छी तरह से सेट नहीं थीं, इसलिए मुझे अपाचे का उपयोग करना पड़ा, जो X-FORWARDED-FORहेडर के लिए देख सकता है और उस से आईपी पते को ब्लॉक कर सकता है।

इसे अपने अपाचे कॉन्फ़िगरेशन (शायद VirtualHost ब्लॉक में) में जोड़ें:

RewriteEngine On
RewriteCond %{HTTP:X-FORWARDED-FOR] ^46\.242\.69\.216
RewriteRule .* - [F]

यह उस हेडर की जांच करेगा जो ELB द्वारा सेट किया गया है

कॉन्फ़िगरेशन को सहेजें, apache2ctl -tडेबियन / ubuntu (या apachectl -tआरएचईएल के लिए) के साथ परीक्षण करें , फिर अपाचे को पुनरारंभ करें।

यह सिर्फ एक 403 Forbiddenप्रतिक्रिया भेजता है


2

AWS में एकल IP / IP श्रेणियों से यातायात अवरुद्ध करना

  1. अपना VPC डैशबोर्ड खोलें
  2. "नेटवर्क ACLs" दृश्य खोलें
  3. ACL संपादक खोलें
  4. यातायात अवरुद्ध करने के लिए एक नियम जोड़ें

यहाँ एक त्वरित ट्यूटोरियल है: http://chopmo.dk/posts/2015/06/13/blocking-traffic-in-aws.html

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.