Plan de reprise d'activité du Pare-feu🔗

Posted by Médéric Ribreux 🗓 In kb/ drp/ debianplug/

Introduction

Le pare-feu Netfilter permet de restreindre les entrées/sorties réseau suivant un ensemble de règles. Ces règles sont gérées par l'utilitaire iptables. Ce service est critique car il est un composant essentiel de sécurité. Pour l'instant, les règles iptables ne concernent qu'IPv6.

InformationCaractéristiques
Site web origine[http://www.netfilter.org/]
Version installée1.4.14
CodeC
Paquetiptables

Pré-requis

Installation du logiciel

Normalement, iptables est installé par défaut lors de l'installation du système. Au cas où, voici la commande à lancer:

# aptitude install iptables

Répertoires concernés

Restaurations

Les éléments à restaurer sont les scripts shell ainsi que les options réseau. Se référer à la procédure de restauration générique pour y parvenir.

# restore netfilter /etc/firewall/
# chown -R root:root /etc/firewall/

Contenu du script iptables.up.rules.ipv4

Normalement, la restauration permet de récupérer ce fichier. En cas de problème avec la sauvegarde, on pourra utiliser le fichier suivant pour configurer le service:

# Fichier de configuration de pare-feu IPv4
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT DROP [0:0]
:LOG_DROP - [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -s 192.168.0.0/24 -i eth0 -p tcp -m tcp --dport 22 -m state --state NEW -j ACCEPT
-A INPUT -i eth0 -p icmp -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 443 -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 25 -j ACCEPT
-A INPUT -s 192.168.0.0/24 -i eth0 -p tcp -m tcp --dport 143 -j ACCEPT
-A INPUT -s 192.168.0.0/24 -i eth0 -p tcp -m tcp --dport 53 -j ACCEPT
-A INPUT -s 192.168.0.0/24 -i eth0 -p udp -m udp --dport 53 -j ACCEPT
-A INPUT -i eth0 -p udp -m udp --dport 67 -j ACCEPT
-A INPUT -i eth0 -p udp -m udp --dport 68 -j ACCEPT
-A INPUT -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -j LOG_DROP
-A FORWARD -j LOG_DROP
-A OUTPUT -o lo -j ACCEPT
# enable wakeonlan
-A OUTPUT -o eth0 -p udp -m udp --dport 9 -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 80 -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 443 -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 22 -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 25 -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 113 -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 465 -j ACCEPT
-A OUTPUT -o eth0 -p udp -m udp --dport 43 -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 43 -j ACCEPT
-A OUTPUT -o eth0 -p udp -m udp --dport 53 -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 53 -j ACCEPT
-A OUTPUT -o eth0 -p udp -m udp --dport 67 -j ACCEPT
-A OUTPUT -o eth0 -p udp -m udp --dport 68 -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 995 -j ACCEPT
-A OUTPUT -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -o eth0 -p icmp -j ACCEPT
-A OUTPUT -o eth0 -p udp -m udp --dport 123 -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 123 -j ACCEPT
-A OUTPUT -j LOG_DROP
-A LOG_DROP -j LOG --log-prefix "[ipv4 netfilter DROP]:" --log-level 1
-A LOG_DROP -j DROP
COMMIT

Contenu du script iptables.up.rules.ipv6

Normalement, la restauration permet de récupérer ce fichier. En cas de problème avec la sauvegarde, on pourra utiliser le fichier suivant pour configurer le service:

# Fichier de configuration IPv6
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT DROP [0:0]
:LOG_DROP - [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -s fe80::/10 -j ACCEPT
-A INPUT -s 2a01:e35:8a57:24e0::/64 -i eth0 -p tcp -m tcp --dport 22 -m state --state NEW -j ACCEPT
-A INPUT -i eth0 -p ipv6-icmp -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 443 -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 25 -j ACCEPT
-A INPUT -s 2a01:e35:8a57:24e0::/64 -i eth0 -p tcp -m tcp --dport 143 -j ACCEPT
-A INPUT -s 2a01:e35:8a57:24e0::/64 -i eth0 -p tcp -m tcp --dport 53 -j ACCEPT
-A INPUT -s 2a01:e35:8a57:24e0::/64 -i eth0 -p udp -m udp --dport 53 -j ACCEPT
-A INPUT -s 2a01:e35:8a57:24e0::/64 -i eth0 -p udp -m udp --dport 67 -j ACCEPT
-A INPUT -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -j LOG_DROP
-A FORWARD -j LOG_DROP
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -s fe80::/10 -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 80 -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 443 -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 22 -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 25 -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 113 -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 465 -j ACCEPT
-A OUTPUT -o eth0 -p udp -m udp --dport 43 -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 43 -j ACCEPT
-A OUTPUT -o eth0 -p udp -m udp --dport 53 -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 53 -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 995 -j ACCEPT
-A OUTPUT -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -o eth0 -p ipv6-icmp -j ACCEPT
-A OUTPUT -o eth0 -p udp -m udp --dport 123 -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 123 -j ACCEPT
-A OUTPUT -j LOG_DROP
-A LOG_DROP -j LOG --log-prefix "[ipv6 netfilter DROP]:" --log-level 1
-A LOG_DROP -j DROP
COMMIT

Configuration réseau

Pour prendre en compte le contenu des fichiers situés dans /etc/firewall/, il suffit de créer un fichier exécutable dans /etc/network/if-pre-up.d. Sur cette machine, il est nommé iptables:

#!/bin/sh

/sbin/iptables-restore < /etc/firewall/iptables.up.rules.ipv4
/sbin/ip6tables-restore < /etc/firewall/iptables.up.rules.ipv6

exit 0