मैं अपने ubuntu सर्वर पर, Iptables में केवल एक विशिष्ट पोर्ट पर एक आईपी एड्रेस की अनुमति कैसे दे सकता हूं?
धन्यवाद
मैं अपने ubuntu सर्वर पर, Iptables में केवल एक विशिष्ट पोर्ट पर एक आईपी एड्रेस की अनुमति कैसे दे सकता हूं?
धन्यवाद
जवाबों:
एक लाइन:
iptables -I INPUT \! --src 1.2.3.4 -m tcp -p tcp --dport 777 -j DROP # if it's not 1.2.3.4, drop it
एक और अधिक सुंदर समाधान:
iptables -N xxx # create a new chain
iptables -A xxx --src 1.2.3.4 -j ACCEPT # allow 1.2.3.4
iptables -A xxx --src 1.2.3.5 -j ACCEPT # allow 1.2.3.5
iptables -A xxx --src 1.2.3.6 -j ACCEPT # allow 1.2.3.6
iptables -A xxx -j DROP # drop everyone else
iptables -I INPUT -m tcp -p tcp --dport 777 -j xxx # use chain xxx for packets coming to TCP port 777
INPUT
साथ प्रतिस्थापित करते OUTPUT
हैं तो सर्वर के कुछ पतों का उपयोग करके भेजे गए कुछ पैकेटों को ब्लॉक कर देंगे (और रूट किए / फॉरवर्ड नहीं किए गए)। मुझे संदेह है कि यह समझ में आता है, जब तक कि आप उन कार्यक्रमों को अवरुद्ध करना चाहते हैं जो कुछ विशिष्ट इंटरफेस से बंधते हैं।
--src 1.2.3.4/30
iptables -I xxx --src 7.8.9.10 -j ACCEPT
मेरे CentOS सिस्टम में से एक का उदाहरण दिया गया है (पते को मान लिया गया है):
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp -s 1.2.3.4 -d 5.6.7.8 --dport 22 -j ACCEPT
service iptables save
।