Le ping est un message permettant de contrôler la présence d'un hôte sur un réseau.
Une fois installé et fonctionnel, vous ne souhaitez plus que votre firewall
ipcop réponde à ce message.
Ici, l'interface est prise en compte, ipcop répondra aux ping sur l'interface
GREEN mais pas sur les autres interfaces..
En ligne de commande, authentifié en tant que root, tapez :
root@ipcop:~ # vi /etc/rc.d/rc.firewall
vous êtes dans le fichier de configuration des règles du firewall ipcop.
Tapez "146G " pour aller à la ligne 106, soit la ligne
"/sbin/iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT"
ajoutez cette ligne :
/sbin/iptables -A INPUT -p icmp --icmp-type 8 -i $GREEN_DEV -j ACCEPT
/sbin/iptables -A INPUT -p icmp --icmp-type 8 -j DROP
Sortez du mode insert et tapez " :wq " pour enregistrer les modifications et quitter vi.
Ce qui est en rouge est le paramètre modifié. Ce qui est en gras est ajouté.
Pour que les règles soient appliquées, il suffit de relancer le script en tapant "/etc/rc.d/rc.firewall restart" en ligne de commande.
Resultat : Après cette modification, lorsque quelqu'un enverra une requette icmp vers votre firewall, il aura : délai d'attente dépassé.
Bloquer les pings ne respecte pas vraiment les standards, et je vous conseille alors plutôt d'améliorer votre sécurité tout en gardant la réponse aux pings :
vi /etc/rc.d/rc.firewall
Tapez 146G pour aller à la ligne 146 :
et modifiez la ligne suivante :
/sbin/iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT
pour obtenir ceci :
/sbin/iptables -A INPUT -p icmp --icmp-type 8 -m limit --limit 1/s --limit-burst 4 -j ACCEPT
Il ne vous reste plus qu'a appliquer les règles en tapant /etc/rc.firewall restart .
Voyons un test de ping flood et le résultat est assez parlant :
un ping -f ipcop avec la configuration d'origine donne :
--- ipcop ping statistics ---
148693 packets transmitted, 148569 packets received, 0% packet loss
round-trip min/avg/max = 0.3/7.1/429496726.4 ms
un ping -f avec la nouvelle configuration donne :
--- ipcop ping statistics ---
602 packets transmitted, 9 packets received, 98% packet loss
round-trip min/avg/max = 0.7/1.1/2.8 ms
Analyse du résultat : Si quelqu'un ping de cette manière votre ipcop, la ligne internet risque d'être saturée voir bloquée en upload car chaque paquet nécessite une réponse. Après modification, la limite imposée permet de jeter 98% des paquets, et ainsi répondre aux pings lorsque celui-ci est envoyé de façon raisonable. Et rendre transparent le flood.