logo
 Accueil  Articles  Cours  Guides  Formation  Téléchargement  Source
  Références : Netfilter Home 
 
Contactmail
 Carnet de bord
 Notice légale
Linux 2.4 Packet Filtering HOWTO: Mise en Garde sur le Filtre de Paquets Page suivante Page précédente Table des matières

11. Mise en Garde sur le Filtre de Paquets

La façon généralle de procéder dans la sécurité informatique est de tout bloquer puis d'ouvrir des trous quand c'est nécessaire. C'est habituellement paraphrasé par `tout ce qui n'est pas spécifiquement autorisé est défendu'. Je recommendes cette approche si la sécurité est un primeur.

Ne fais pas tourner de service dont tu n'as pas besoin, même si tu penses avoir bloqué l'accès vers ceux-ci.

Si tu crées un firewall dédié, commences par ne rien faire tourner et tout bloquer et ajoutes les services et laisses passer les paquets quand c'est nécessaire.

Je recommendes la sécurité en profondeur : combines les tcp-wrappers (pour les connections au filtre de paquets lui-mème), la verification de route et le filtrage de paquets. La verification de route c'est quand un paquet qui vient d'une interface non attendue est laissé tomber : par exemple, si un réseau interne a des adresses 10.1.1.0/24, et qu'un paquet avec cette adresse source vient sur ton interface externe, il sera laissé tomber. Ceci peut être activé pour une interface (ppp0) par:

# echo 1 > /proc/sys/net/ipv4/conf/ppp0/rp_filter
#



Ou pour toutes les interfaces existantes ou futures :

# for f in /proc/sys/net/ipv4/conf/*/rp_filter; do
#     echo 1 > $f
# done
# 



Debian fait cela par défaut quand c'est possible. Si tu utilises du routage assymétrique (p.e. tu attends des paquets qui viennent de direction étranges), tu voudras désactiver cela sur ces interfaces.

Le logging est utile quand tu réalises un firewall si quelquechose ne fonctionne pas, mais sur un firewall de production, combines le avec la concordance `limit', pour eviter que quelqu'un ne satures tes logs.

Je recommendes fortement le suivi de connections sur les systèmes sécurisés: il introduit un peu plus de charge, comme toutes les connections sont suivies, mais est très utile pour controller l'accès à tes réseaux. Tu devras charger le module `ip_conntrack.o' si ton noyau ne charges pas les modules automatiquement, et qu'il n'est pas compilé dans le noyau. Si tu veux suivre convenablement des protocoles complexes, tu devra charger le module de suivi aproprié (pe. `ip_conntrack_ftp.o').

# iptables -N no-conns-from-ppp0
# iptables -A no-conns-from-ppp0 -m state --state ESTABLISHED,RELATED -j ACCEPT
# iptables -A no-conns-from-ppp0 -m state --state NEW -i ! ppp0 -j ACCEPT
# iptables -A no-conns-from-ppp0 -i ppp0 -m limit -j LOG --log-prefix "Bad packet from ppp0:"
# iptables -A no-conns-from-ppp0 -i ! ppp0 -m limit -j LOG --log-prefix "Bad packet not from ppp0:"
# iptables -A no-conns-from-ppp0 -j DROP

# iptables -A INPUT -j no-conns-from-ppp0
# iptables -A FORWARD -j no-conns-from-ppp0



Construire un bon firewall est hors du sujet de ce HOWTO, mais mon conseil est de `toujours être minimaliste'. Voir le Security HOWTO pour plus d'informations sur comment tester ta machine.


Page suivante Page précédente Table des matières
Dernière modification le : 9 May 2002 13:53
php logo    debian logo