Iptables'i yeniden yükleme

22

Ubuntu'da /etc/iptables/filter iptables config dosyasında değişiklikler yaptım ve bunları yeniden yüklemek istiyorum. Adam sayfasını okudum ve ayrıca googled ama bilgileri bulamadım. Herhangi bir yardım takdir edilecektir.

    
sordu techraf 06.12.2010 19:11

5 cevap

22

En kolay yol, yeniden başlatmadır (eğer aşağıda çalışmazsa, yeniden başlatırsanız, değişikliği yapıp yapmadığınızı kontrol edin).

İkinci en kolay şey, iptables yapılandırmaları kullanarak (google: restart daemon ubuntu) daemonların yeniden başlatılmasıdır.

örnekler (yapılandırmanıza bağlıdır):

/etc/init.d/iptables restart  

/etc/init.d/networking restart  

/etc/init.d/firewall restart
    
verilen cevap Juha 06.12.2010 19:17
29

Normalde güvenlik duvarı kurallarınız yapılandırma dosyasında /etc/iptables.firewall.rules

Dosyanızda tanımlanan kuralları etkinleştirmek için bunları iptables-restore adresine göndermelisiniz (isterseniz başka bir dosyayı kullanabilirsiniz):

sudo iptables-restore < /etc/iptables.firewall.rules

Ayrıca, etkinleştirildiklerini kontrol edebilirsiniz:

sudo iptables -L

Aynı kuralları her açtığınızda, bilgisayarı bu dosyayı oluşturmayı isterseniz:

sudo nano /etc/network/if-pre-up.d/firewall

Bu içerikle:

#!/bin/sh
/sbin/iptables-restore < /etc/iptables.firewall.rules

Ve yürütme izni ver:

sudo chmod +x /etc/network/if-pre-up.d/firewall

Umarım yardımcı olur =)

/etc/iptables.firewall.rules için örnek dosya:

*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
    
verilen cevap Jorge Sampayo 14.01.2013 18:40
3

Kurallarınızı uyguladıysanız zaten çalışıyorlar ve yeniden yükleme gerekli değil. Bir konfigürasyon dosyanız var ama en iyi şekilde çalıştırılmadığı durumda iptables-apply (bir iptables eklentisi) kullanıyorum.

iptables-apply -t 60 your_rules_file

Bu, kuralları 60 saniye (varsayılan olarak 10) uygular ve onaylamazsanız geri döndürür. Bu, kurallar nedeniyle sistemden atılmanız durumunda sizi koruyacaktır (örn. Ssh ile çalışıyorsanız).

Aşağıdakileri yedek olarak kullanabilirsiniz:

iptables-restore < your_rules_file; sleep 60; iptables-restore < clean_rules
    
verilen cevap nyxz 06.07.2015 14:28
0

Biraz aramadan sonra, iptables'i yeniden başlattığım şey budur. . . sudo /etc/init.d/firewall restart

    
verilen cevap bmarti44 06.12.2010 19:15
0

Yaptığınız değişiklikleri doğrulamak için IPtables'leri yeniden yüklemek isterseniz; Apache'yi aşağıdaki komut satırlarıyla da tekrar başlatabilirsiniz:

/etc/init.d/apache2 stop

/etc/init.d/apache2 başlangıç ​​

Bu komut, Ubuntu'nun lezzetine ve daha önce yapılmış olabilecek değişikliklere bağlı olarak değişebilir.

Bunun yardımcı olacağını umuyorum.

Pierre

    
verilen cevap Pierre Alexis Malaval 01.10.2017 12:41

Etiketlerdeki diğer soruları oku