iptables, ordine delle regole - lo capisco bene?


17

Vorrei configurare il mio VPS in modo che accetti SOLO connessioni dall'esterno sulla porta 22 (dove ascolta sshd) e richieste ICMP. Tutto il resto dall'esterno dovrebbe essere respinto. All'interno del server, tutto dovrebbe essere consentito. Le seguenti regole creano il comportamento desiderato?

iptables -A INPUT --jump ACCEPT --protocol all   --source 127.0.0.1
iptables -A INPUT --jump ACCEPT --protocol tcp   --dport 22
iptabels -A INPUT --jump ACCEPT --protocol icmp
iptables -A INPUT --jump ACCEPT --match state    --state ESTABLISHED,RELATED
iptables -A INPUT --jump REJECT --protocol all

Non sono del tutto sicuro se le regole ACCEPT "vinceranno" sull'ultimo REJECT complessivo


1
Non è necessario utilizzare --source 127.0.0.1per determinare se un pacchetto è sicuro da accettare. Vedi serverfault.com/a/825231/4131
Bruno Bronosky il

Risposte:


20

Hai ragione.

Le regole verranno elaborate nell'ordine di riga del file. Se esiste una corrispondenza per una regola, nel tuo caso non verranno elaborate altre regole per quel pacchetto IP.

http://en.wikipedia.org/wiki/Iptables

Ogni regola in una catena contiene la specifica di quali pacchetti corrisponde. Può anche contenere un target (utilizzato per le estensioni) o un verdetto (una delle decisioni integrate). Mentre un pacchetto attraversa una catena, viene esaminata ogni regola a sua volta. Se una regola non corrisponde al pacchetto, il pacchetto viene passato alla regola successiva. Se una regola corrisponde al pacchetto, la regola intraprende l'azione indicata dal target / verdetto, il che può comportare il permesso del pacchetto di continuare lungo la catena o potrebbe non

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.