Ricaricare iptables


29

Ho apportato modifiche al file di configurazione di iptables /etc/iptables/filterin Ubuntu e voglio ricaricarle. Ho letto la pagina man e ho anche cercato su Google ma non sono riuscito a trovare le informazioni. Qualsiasi aiuto sarà apprezzato.


Non hai fornito alcuna informazione sulla versione di Ubuntu che stai utilizzando, né hai cercato bene il Web prima di pubblicare questa domanda.

Risposte:


28

Il modo più semplice è riavviare (anche se di seguito non funziona, riavviare, verificare se ciò ha apportato la modifica).

Il secondo modo più semplice è riavviare i demoni usando le configurazioni iptables (google: restart daemon ubuntu).

esempi (dipende dalla configurazione):

/etc/init.d/iptables restart  

/etc/init.d/networking restart  

/etc/init.d/firewall restart

5
Non ci sono file per nome /etc/init.d/iptables

1
quale rete correlata esiste in /etc/init.d? prova a riavviarlo.

2
/etc/init.d/networking restart?

1
Dead link è morto.
Dustin Graham,

@DustinGraham grazie, il collegamento interrotto viene rimosso.
Juha

37

Normalmente le regole del firewall sono nel file di configurazione /etc/iptables.firewall.rules

Per attivare le regole definite nel tuo file devi inviarle a iptables-restore(puoi usare un altro file se vuoi):

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

E puoi verificare che siano attivati ​​con:

sudo iptables -L

Se si desidera attivare le stesse regole ogni volta che si avvia il computer, creare questo file:

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

Con questo contenuto:

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

E dagli il permesso di esecuzione:

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

Spero che ti aiuti =)

File di esempio per /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

4
Su Ubuntu 14.10 non ho fatto altro /etc/iptables.firewall.rulesche sudo iptables-restore < /etc/iptables/rules.v4lavorare per me.
timbo

4

Se hai eseguito le tue regole sono già in esecuzione e non è necessario ricaricare. Nel caso in cui tu abbia un file di configurazione ma non è stato eseguito nel modo migliore che ho visto finora è usare iptables-apply(un'estensione iptables).

iptables-apply -t 60 your_rules_file

Ciò applicherà le regole per 60 secondi (10 per impostazione predefinita) e le ripristinerà se non le confermi. Questo ti salverà nel caso in cui tu venga espulso dal sistema a causa delle regole (es. Se stai operando tramite ssh).

È possibile utilizzare quanto segue in sostituzione:

iptables-restore < your_rules_file; sleep 60; iptables-restore < clean_rules

No, il ricaricamento è assolutamente necessario per la risoluzione dell'host DDNS. Se l'IP di qualsiasi host referenziato cambia, allora iptables deve essere ricaricato. Idealmente, lo faresti ogni 30 minuti da cron. Non è conveniente riavviare ogni 30 minuti.
mckenzm

1

sudo ufw reload

Ricaricherà il firewall e le sue regole.


0

Dopo aver cercato su Google un po ', questo è quello che ho trovato per riavviare iptables. . . sudo /etc/init.d/firewall restart


3
Non ci sono file per nome /etc/init.d/firewall

0

Se si desidera ricaricare IPtables per convalidare le modifiche appena apportate; puoi anche riavviare Apache con le seguenti linee di comando:

/etc/init.d/apache2 stop

/etc/init.d/apache2 start

Questi comandi possono variare in base al tipo di Ubuntu e alle eventuali modifiche che potrebbero essere state apportate in precedenza.

Spero che sia di aiuto.

Pierre

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.