मैंने /etc/iptables/filter
उबंटू में iptables config फाइल में बदलाव किए और उन्हें फिर से लोड करना चाहता हूं। मैंने मैन पेज पढ़ा और गुगली भी की लेकिन जानकारी नहीं मिल सकी। किसी भी तरह की सहायता को आभार समझेंगे।
मैंने /etc/iptables/filter
उबंटू में iptables config फाइल में बदलाव किए और उन्हें फिर से लोड करना चाहता हूं। मैंने मैन पेज पढ़ा और गुगली भी की लेकिन जानकारी नहीं मिल सकी। किसी भी तरह की सहायता को आभार समझेंगे।
जवाबों:
सबसे आसान तरीका रिबूट है (यदि नीचे काम नहीं करता है, तो रिबूट करें, जांचें कि क्या यह परिवर्तन किया गया है)।
दूसरा सबसे आसान iptables कॉन्फ़िगरेशन (google: पुनरारंभ डेमन ubuntu) का उपयोग करके डेमॉन को पुनरारंभ करना है।
उदाहरण (आपके कॉन्फ़िगरेशन पर निर्भर करता है):
/etc/init.d/iptables restart
/etc/init.d/networking restart
/etc/init.d/firewall restart
आम तौर पर आपके फ़ायरवॉल नियम विन्यास फाइल में होते हैं /etc/iptables.firewall.rules
अपनी फ़ाइल में परिभाषित नियमों को सक्रिय करने के लिए आपको उन्हें भेजना होगा iptables-restore
(यदि आप चाहें तो दूसरी फ़ाइल का उपयोग कर सकते हैं):
sudo iptables-restore < /etc/iptables.firewall.rules
और आप देख सकते हैं कि वे इसके साथ सक्रिय हैं:
sudo iptables -L
यदि आप कंप्यूटर को बूट करने के लिए हर बार समान नियमों को सक्रिय करना चाहते हैं
sudo nano /etc/network/if-pre-up.d/firewall
इस सामग्री के साथ:
#!/bin/sh
/sbin/iptables-restore < /etc/iptables.firewall.rules
और इसे निष्पादन की अनुमति दें:
sudo chmod +x /etc/network/if-pre-up.d/firewall
आशा है कि यह आपकी मदद करता है =)
इसके लिए उदाहरण फ़ाइल /etc/iptables.firewall.rules
:
*filter
# Allow all loopback (lo0) traffic and drop all traffic to 127/8 that doesn't use lo0
-A INPUT -i lo -j ACCEPT
-A INPUT -d 127.0.0.0/8 -j REJECT
# Accept all established inbound connections
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# Allow all outbound traffic - you can modify this to only allow certain traffic
-A OUTPUT -j ACCEPT
# Allow HTTP and HTTPS connections from anywhere (the normal ports for websites and SSL).
-A INPUT -p tcp --dport 80 -j ACCEPT
-A INPUT -p tcp --dport 443 -j ACCEPT
# Allow SSH connections
#
# The -dport number should be the same port number you set in sshd_config
#
-A INPUT -p tcp -m state --state NEW --dport 22 -j ACCEPT
# Allow ping
-A INPUT -p icmp -j ACCEPT
# Log iptables denied calls
-A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied: " --log-level 7
# Drop all other inbound - default deny unless explicitly allowed policy
-A INPUT -j DROP
-A FORWARD -j DROP
COMMIT
/etc/iptables.firewall.rules
, लेकिन sudo iptables-restore < /etc/iptables/rules.v4
मेरे लिए काम किया।
यदि आपने अपने नियमों को निष्पादित किया है तो वे पहले से ही चल रहे हैं और कोई भी पुनः लोड करना आवश्यक नहीं है। उस स्थिति में जहां आपके पास एक कॉन्फ़िगरेशन फ़ाइल है, लेकिन इसे सबसे अच्छे तरीके से निष्पादित नहीं किया गया है, जिसे मैंने अब तक उपयोग किया है iptables-apply
(एक iptables एक्सटेंशन)।
iptables-apply -t 60 your_rules_file
यह 60 सेकंड (डिफ़ॉल्ट रूप से 10) के लिए नियम लागू करेगा और यदि आप उन्हें पुष्टि नहीं करते हैं तो उन्हें वापस कर दें। यदि आप नियमों के कारण सिस्टम से बाहर कर दिए जाते हैं (उदाहरण के लिए यदि आप ssh के माध्यम से काम कर रहे हैं) तो यह आपको बचाएगा।
आप प्रतिस्थापन के रूप में निम्नलिखित का उपयोग कर सकते हैं:
iptables-restore < your_rules_file; sleep 60; iptables-restore < clean_rules
यदि आप अपने द्वारा किए गए परिवर्तनों को मान्य करने के लिए IPtables को फिर से लोड करना चाहते हैं; आप नीचे दिए गए कमांड लाइनों के साथ अपाचे को भी पुनः आरंभ कर सकते हैं:
/etc/init.d/apache2 रोकें
/etc/init.d/apache2 प्रारंभ
ये आदेश उबंटू के आपके स्वाद और पहले किए गए अंतिम संशोधनों के आधार पर भिन्न हो सकते हैं।
उम्मीद है की यह मदद करेगा।
पियरे