D. Configuration du filtrage réseau

Les règles de marquage des flux réseau transitant par le routeur ISP sont enregistrées dans le fichier /var/lib/iptables/active dont la copie est donnée ci-dessous. Ce fichier est initialement créé à l'aide de l'instruction suivante.

# iptables-save >/var/lib/iptables/active

Il est ensuite possible de l'éditer et de le compléter au besoin.

# cat /var/lib/iptables/active 
# Table filter ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
COMMIT
# Table mangle ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*mangle
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A PREROUTING -i eth0 -j CONNMARK --restore-mark --nfmask 0xffffffff --ctmask 0xffffffff
-A PREROUTING -i eth1.101 -j MARK --set-xmark 0x65/0xffffffff
-A PREROUTING -i eth1.103 -j MARK --set-xmark 0x67/0xffffffff
-A PREROUTING -i eth1.101 -j CONNMARK --save-mark --nfmask 0xffffffff --ctmask 0xffffffff
-A PREROUTING -i eth1.103 -j CONNMARK --save-mark --nfmask 0xffffffff --ctmask 0xffffffff
-A POSTROUTING -o eth0 -p tcp -m tcp --syn -m tcpmss --mss 1400:1536 -j TCPMSS --clamp-mss-to-pmtu
COMMIT
# Table nat    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
COMMIT

Les règles contenues dans ce fichier sont appliquées à l'aide de l'instruction suivante.

# iptables-restore </var/lib/iptables/active

On peut intégrer cette instruction dans les scripts d'initialisation des interfaces réseau de façon à rendre obligatoire l'application des règles. Par exemple :

# cat /etc/network/if-up.d/iptables 
#!/bin/sh

if [ -f "/var/lib/iptables/active" ]
then
  iptables-restore </var/lib/iptables/active
fi

exit 0