[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

RE: Firewall




> -----Original Message-----
> From: Olivier Weinstoerffer [mailto:olivier.weinstoerffer@adhoc.ag]
> Sent: Thursday 19 December 2002 11:34
> To: Debian
> Subject: Re: Firewall
> 
> 
> essaye plutot un truc du genre
> 
> #politique par default
> iptables -P INPUT DROP
> iptables -P OUTPUT DROP
> iptables -P FORWARD DROP
> 
> #vidage des tables
> iptables -F INPUT
> iptables -F FORWARD
> iptables -F OUTPUT
> 
> #connection pop vers ton server
> #authorise les communication entre un port client (>1024) et 
> le port pop 
> (110)
> 
> iptables -A INPUT  -p tcp --dport 110 --sport 1024: -j ACCEPT
> iptables -A OUTPUT -p tcp --dport 1024: -sport 110 -j ACCEPT
> 


C'est (je pense) une très mauvaise suggestion qui néglige les capacités de
Connection Tracking de netfilter et la gestion des états. Avec une règle
comme ci dessus, je peux envoyer un paquet "tout pourri", ne faisant pas
partie d'une connection TCP établie, je peux lui positionner avec des flags
TCP n'importe comment, et il passera le firewall !

Le filtrage IP sous linux a grandement évolué depuis les noyaux 2.2 et
ipchains, mettez-vous à jour!

Je suggère pour commencer (en laissant bien sûr les policies sur DROP) :

iptables -A INPUT -m state --state INVALID -j DROP
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state NEW -p tcp --dport 110 -j ACCEPT

iptables -A OUTPUT -m state --state INVALID -j DROP
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

Et il y a beaucoup mieux, et plus complet, à faire!

Je suggère une lecture attentive des howtos sur http://www.netfilter.org

Vincent



Reply to: