Pour commencer, vous devez avoir activé la transmission IP (IP forwarding) dans le noyau et votre système doit être actif et transmettre tout ce que vous lui envoyez. Vos tables de routages doivent être en place et vous devez être en mlesure d'accéder à tout, aussi bien à l'extérieur depuis l'intérieur qu'à l'intérieur depuis l'extérieur.
Cela dit, nous construisons un firewall, donc il nous faut commencer à réduire ce à quoi tout le monde a accès.
Dans mon système, j'ai créé quelques scripts pour paramétrer le comportement de transmission et de la trace. J'appelle ces scripts depuis ceux de /etc/rc.d afin que mon système soit configuré dès le lancement.
Par défaut, le système de transmission IP route tout. Pour cette raison, votre script de firewall doit commencer par interdire l'accès à tout et par vider toutes les règles de trace en place depuis la dernière fois qu'il a été lancé. Le script suivant effectue le travail :
# # configuration de la transmission IP et # de la trace # # Transmission # # Par defaut INTERDIRE tous les services ipfwadm -F -p deny # Vider toutes les regles de trace ipfwadm -F -f ipfwadm -I -f ipfwadm -O -f
Maintenant, nous avons un firewall absolu. Rien ne peut passer au travers. Sans doute devez-vous transmettre quelques services, donc voici quelques exemples que vous devriez trouver utiles :
# Autoriser l'acces de l'e-mail au serveur ipfwadm -F -a accept -b -P tcp -S 0.0.0.0/0 1024:65535 -D 192.1.2.10 25 # Autoriser les connexions e-mail vers les serveurs exterieurs ipfwadm -F -a accept -b -P tcp -S 196.1.2.10 25 -D 0.0.0.0/0 1024:65535 # Autoriser les connexions web vers le serveur web /sbin/ipfwadm -F -a accept -b -P tcp -S 0.0.0.0/0 1024:65535 -D 196.1.2.11 80 # Autoriser les connexions web vers les serveurs web exterieurs /sbin/ipfwadm -F -a accept -b -P tcp -S 196.1.2.* 80 -D 0.0.0.0/0 1024:65535 # Autoriser le trafic DNS /sbin/ipfwadm -F -a accept -b -P udp -S 0.0.0.0/0 53 -D 196.1.2.0/24
Il peut être aussi intéressant de tracer le trafic qui passe par votre firewall. Ce script compte chaque paquet. Vous pouvez ajouter une ligne ou deux pour tracer les paquets qui vont vers un système particulier.
# Vider les regles de trace en cours ipfwadm -A -f # Trace /sbin/ipfwadm -A -f /sbin/ipfwadm -A out -i -S 196.1.2.0/24 -D 0.0.0.0/0 /sbin/ipfwadm -A out -i -S 0.0.0.0/0 -D 196.1.2.0/24 /sbin/ipfwadm -A in -i -S 196.1.2.0/24 -D 0.0.0.0/0 /sbin/ipfwadm -A in -i -S 0.0.0.0/0 -D 196.1.2.0/24
Si tout ce que vous cherchez est un firewall filtrant, vous pouvez vous arrêter ici. Amusez-vous bien :-)
Chapitre suivant, Chapitre Précédent
Table des matières de ce chapitre, Table des matières générale
Début du document, Début de ce chapitre