è necessaria la regola iptables per accettare tutto il traffico in entrata


34

Per il mio ambiente di test voglio accettare tutto il traffico in arrivo, qualcuno può darmi la regola iptable da aggiungere.

Il mio attuale iptables -L -n output è simile a questo

Chain INPUT (policy ACCEPT) target prot opt ​​source source
ACCEPT all - 0.0.0.0/0 0.0.0.0/0
state RELATED, STTABLISHED ACCEPT icmp - 0.0.0.0/0
0.0.0.0/0 ACCEPT all - 0.0.0.0 / 0 0.0.0.0/0 ACCETTA tcp - 0.0.0.0/0 0.0.0.0/0 stato NUOVO tcp dpt: 22 REJECT all - 0.0.0.0/0 0.0.0.0/0
respingi-con icmp-host-proibito ACCEPT tcp - 0.0.0.0/0
0.0.0.0/0 tcp dpt: 8443 ACCEPT tcp - 0.0.0.0/0 0.0.0.0/0 tcp dpt: 8080 ACCEPT tcp - 0.0.0.0/0 0.0.0.0/0 tcp dpt: 9443 ACCEPT tcp - 0.0.0.0/0 0.0.0.0/0 tcp dpt: 2124

Chain FORWARD (policy ACCEPT) target prot opt ​​source
destination REJECT all - 0.0.0.0/0 0.0.0.0/0
rifiuto-con icmp-host-proibito

Catena OUTPUT (policy ACCEPT) destinazione della sorgente di
destinazione protetta

Grazie

Risposte:


53

Esegui quanto segue. Inserirà la regola nella parte superiore di iptables e consentirà tutto il traffico se non successivamente gestito da un'altra regola.

iptables -I INPUT -j ACCEPT

Puoi anche svuotare l'intera configurazione di iptables con quanto segue:

iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

Se lo scarichi, potresti voler eseguire qualcosa del tipo:

iptables -A INPUT -i lo -j ACCEPT -m comment --comment "Allow all loopback traffic"
iptables -A INPUT ! -i lo -d 127.0.0.0/8 -j REJECT -m comment --comment "Drop all traffic to 127 that doesn't use lo"
iptables -A OUTPUT -j ACCEPT -m comment --comment "Accept all outgoing"
iptables -A INPUT -j ACCEPT -m comment --comment "Accept all incoming"
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -m comment --comment "Allow all incoming on established connections"
iptables -A INPUT -j REJECT -m comment --comment "Reject all incoming"
iptables -A FORWARD -j REJECT -m comment --comment "Reject all forwarded"

Se vuoi essere un po 'più sicuro con il tuo traffico, non utilizzare la regola accetta tutto in arrivo o rimuovila con "iptables -D INPUT -j ACCEPT -m comment --comment" Accetta tutto il traffico in entrata "" e aggiungi altro regole specifiche come:

iptables -I INPUT -p tcp --dport 80 -j ACCEPT -m comment --comment "Allow HTTP"
iptables -I INPUT -p tcp --dport 443 -j ACCEPT -m comment --comment "Allow HTTPS"
iptables -I INPUT -p tcp -m state --state NEW --dport 22 -j ACCEPT -m comment --comment "Allow SSH"
iptables -I INPUT -p tcp --dport 8071:8079 -j ACCEPT -m comment --comment "Allow torrents"

NOTA: devono essere al di sopra delle 2 regole di rifiuto in basso, quindi usa I per inserirle in alto. Oppure, se sei anale come me, usa "iptables -nL --line-numbers" per ottenere i numeri di riga, quindi usa "iptables -I INPUT ..." per inserire una regola in corrispondenza di un numero di riga specifico.

Infine, salva il tuo lavoro con:

iptables-save > /etc/network/iptables.rules #Or wherever your iptables.rules file is

1
Questa risposta ha finalmente posto fine al mio dolore. Questa risposta affronta la domanda "come faccio solo a fare in modo che iptables # @ $ #% faccia quello che voglio che faccia e solo quello che voglio che faccia" L'unico miglioramento che consiglierei è l'aggiunta di un esempio di inoltro di una porta. (cioè da 80 a 8080 e da 443 a 8443) Penso che il 99% delle domande su iptables avrebbe avuto risposta in 1 singolo post.
Eric Hartford,

Un po 'tardi per tornare a questo, ma eccolo qui. Reindirizzamento del traffico da una porta all'altra: "iptables -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-doors 8080". È abbastanza facile regolarlo per fare quello che vuoi. L'unico requisito è che entrambe le porte devono essere aperte (tramite le voci sopra questa dichiarazione). Divertiti!
Alex Atkinson,

16

per accettare tutto il traffico in entrata è possibile utilizzare il seguente comando, -P è impostare il criterio predefinito come accetta

iptables -P INPUT ACCEPT  

se non hai bisogno delle tue regole precedenti basta scaricarle / rimuoverle e quindi usare il comando sopra.
per svuotare tutte le regole

iptables -F    
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.