मैं सभी नए आउटबाउंड tcp कनेक्शनों को एक ही नेटवर्क में लोकलहोस्ट और IP पर हो रहे कनेक्शन को छोड़कर लॉग इन करना चाहता हूं।
यह है कि मैं इसे कैसे स्थापित कर रहा हूं, लेकिन मैं आउटबाउंड कनेक्शन 127.0.0.1 और 192.168.1.122 को देख रहा हूं जो कि मेरा आईपी है। मैं 192.168.1.121 को आउटबाउंड कनेक्शन भी देखता हूं जो उसी सबनेट में है।
sudo iptables -I OUTPUT -m state -p tcp --state NEW ! -s 127.0.0.1 ! -d 127.0.0.1 -m limit --limit 1/m --limit-burst 1 -j LOG --log-uid --log-prefix "Outbound Connection: "
for i in $(hostname -I)
do
echo $i
sudo iptables -I OUTPUT -m state -p tcp --state NEW -s 127.0.0.1 ! -d $i/24 -m limit --limit 1/m --limit-burst 1 -j LOG --log-uid --log-prefix "Outbound Connection: "
done
यहाँ इस स्क्रिप्ट के बाद iptables- सेव का आउटपुट है, मैंने इस नियम को पकड़ने के लिए आउटपुट को छीन लिया है।
-A INPUT -p tcp -m multiport --dports 0:65535 -j f2b-outbound
-A OUTPUT -s 127.0.0.1/32 ! -d 172.17.0.0/24 -p tcp -m state --state NEW -m limit --limit 5/min -j LOG --log-prefix "Outbound Connection: " --log-uid
-A OUTPUT -s 127.0.0.1/32 ! -d 10.97.11.0/24 -p tcp -m state --state NEW -m limit --limit 5/min -j LOG --log-prefix "Outbound Connection: " --log-uid
-A OUTPUT ! -s 127.0.0.1/32 ! -d 127.0.0.1/32 -p tcp -m state --state NEW -m limit --limit 5/min -j LOG --log-prefix "Outbound Connection: " --log-uid
-A OUTPUT -s 127.0.0.1/32 ! -d 172.17.0.0/24 -p tcp -m state --state NEW -m limit --limit 5/min -j LOG --log-prefix "Outbound Connection: " --log-uid
-A OUTPUT -s 127.0.0.1/32 ! -d 10.97.11.0/24 -p tcp -m state --state NEW -m limit --limit 5/min -j LOG --log-prefix "Outbound Connection: " --log-uid
-A OUTPUT ! -s 127.0.0.1/32 ! -d 127.0.0.1/32 -p tcp -m state --state NEW -m limit --limit 5/min -j LOG --log-prefix "Outbound Connection: " --log-uid
-A DOCKER -d 172.17.0.2/32 ! -i docker0 -o docker0 -p tcp -m tcp --dport 5432 -j ACCEPT
उत्तर:
जवाब के लिए 0 № 1कनेक्शन आपके पहले लॉग इन हो रहे हैं iptables
लाइन। यह सभी गैर-लोकलहोस्टरों के पैकेट से मेल खाएगा, क्योंकि मिलान का मानदंड स्रोत नहीं है-लोकलहोस्ट और गंतव्य नहीं-लोकलहोस्ट। इसके अलावा आपके अतिरिक्त नियम कभी भी मेल नहीं खाएंगे क्योंकि आउटबाउंड पैकेट में कभी भी 127.0.0.1/8 (लोकलहोस्ट सबनेट) का स्रोत पता नहीं होगा।
आपको अपने में लाइन बदलने की आवश्यकता है for
से पाश
sudo iptables -I OUTPUT -m state -p tcp --state NEW -s 127.0.0.1 ! -d $i/24 -m limit --limit 1/m --limit-burst 1 -j LOG --log-uid --log-prefix "Outbound Connection: "
सेवा मेरे
sudo iptables -I OUTPUT -m state -p tcp --state NEW ! -d $i/24 -m limit --limit 1/m --limit-burst 1 -j LOG --log-uid --log-prefix "Outbound Connection: "