Comment configurer le pare-feu iptables pour la sécurité Linux

Bien que Linux soit l'un des systèmes d'exploitation les plus fiables et les plus sécurisés, grâce à ses caractéristiques, il existera toujours une sorte de vulnérabilité, qu'elle soit inhérente au système ou involontaire de l'utilisateur. Pour augmenter la sécurité de Linux, nous avons divers outils conçus pour protéger les services, les processus, les profils ou les fichiers et aujourd'hui, nous nous concentrerons sur un outil spécial appelé Iptables.

Qu'est-ce qu'IptablesIptables est un outil de pare-feu avancé intégré au noyau Linux qui fait partie d'un projet appelé netfilter.

Grâce à Iptables nous pourrons gérer avec précision et directement toutes les connexions entrantes et sortantes vers le serveur. Iptables est développé pour l'adressage IPv4 tandis que pour IPv6, nous avons Ip6tables.

1. Structure Iptables sous Linux


La structure que l'on retrouve dans Iptables est la suivante :

BrutIl se charge de filtrer les paquets avant toute autre table existante

FiltreC'est la table par défaut de l'application

NatIl est utilisé pour la traduction d'adresses réseau

MangroveIl est utilisé pour la modification de paquets réseau spécialisés

SécuritéPeut être implémenté pour les règles de connexion réseau de contrôle d'accès obligatoire

2. Structure de commande dans Iptables sous Linux


Dans Iptables, chaque règle est une commande qui indique comment le trafic de paquets réseau doit être géré.
Nous pouvons utiliser la structure suivante :
 -A ENTRÉE -i eth0 -p tcp -m état - ÉTABLI, ASSOCIÉ --sport 80 -j ACCEPTER
Les paramètres utilisés sont :
  • -A : Indique que les règles seront ajoutées à Iptables
  • -i : Indique l'interface sur laquelle la règle sera appliquée
  • -p : Désigne le protocole où la règle s'appliquera
  • -m : Désigne le fait qu'il y a une condition qui doit être remplie pour appliquer la règle
  • --state : autoriser l'acceptation de nouvelles connexions
  • --sport : Indique le port source
  • -j : (Jump) indique qu'ils peuvent accepter tout le trafic qui remplit les conditions données.

3. Création de règles à l'aide d'Iptables sous Linux


Bien que nous puissions ajouter les règles manuellement, il est beaucoup plus pratique de créer un fichier de règles puis de l'importer. Dans ce cas nous allons créer le fichier dans le chemin /tmp/iptables-ip4 et nous pouvons utiliser un éditeur pour son ajustement respectif :
 sudo nano / tmp / iptables-ip4
La syntaxe sera la suivante :
 * filtrer # Règles à ajouter COMMIT
Nous allons maintenant créer les règles suivantes dans ledit fichier :

Loopback = C'est l'interface externe de Linux

 -A ENTRÉE -i lo -j ACCEPTER -A SORTIE -o lo -j ACCEPTER

Ping = nous permet de vérifier les connexions réseau

 -A INPUT -i eth0 -p icmp -m state --state NEW --icmp-type 8 -j ACCEPT -A INPUT -i eth0 -p icmp -m state --state ESTABLISHED, RELATED -j ACCEPT -A OUTPUT - o eth0 -p icmp -j ACCEPTER

Web = Grâce à ces règles, nous contrôlons le trafic entrant et sortant.

 -A INPUT -i eth0 -p tcp -m state --state ESTABLISHED, RELATED --sport 80 -j ACCEPT -A INPUT -i eth0 -p tcp -m state --state ESTABLISHED, RELATED --sport 443 -j ACCEPT -A SORTIE -o eth0 -p tcp -m tcp --dport 80 -j ACCEPTER -A SORTIE -o eth0 -p tcp -m tcp --dport 443 -j ACCEPTER

En cas d'ajout du DNS, nous utiliserons les lignes suivantes :

 -A INPUT -i ens3 -s 192.168.0.1 -p udp --sport 53 -m state --state ÉTABLI, CONNEXE -j ACCEPT -A OUTPUT -o ens3 -d 192.168.0.1 -p udp --dport 53 -m udp -j ACCEPTER

Noter:Ici, nous devons modifier l'IP si nécessaire

Heure = Ces règles permettent la connexion à NTP pour une synchronisation correcte de l'heure

 -A INPUT -i eth0 -p udp -m state --state ESTABLISHED, RELATED --dport 123 -j ACCEPT -A OUTPUT -o eth0 -p udp -m udp --sport 123 -j ACCEPT

Impression = Permet d'activer les ports USB pour connecter les imprimantes

 -A INPUT -p udp -m udp --dport 631 -j ACCEPT -A INPUT -p tcp -m tcp --dport 631 -j ACCEPT -A OUTPUT -p udp -m udp --sport 631 -j ACCEPT -A SORTIE -p tcp -m tcp --sport 631 -j ACCEPTER

Email = Nous pouvons activer les différents protocoles de messagerie

 # IMAP -A INPUT -i eth0 -p tcp -m state --state ESTABLISHED, RELATED --sport 993 -j ACCEPT -A OUTPUT -o eth0 -p tcp -m tcp --dport 993 -j ACCEPT
 # POP3 -A INPUT -i eth0 -p tcp -m state --state ESTABLISHED, RELATED --sport 995 -j ACCEPT -A OUTPUT -o eth0 -p tcp -m tcp --dport 995 -j ACCEPT
 # SMTP -A INPUT -i eth0 -p tcp -m state --state ESTABLISHED, RELATED --sport 465 -j ACCEPT -A OUTPUT -o eth0 -p tcp -m tcp --dport 465 -j ACCEPT

SSH = Activer les connexions sécurisées à l'ordinateur à l'aide du protocole SSH

 # Entrée -A INPUT -i ens3 -p tcp -m state --state NOUVEAU, ÉTABLI --dport 22 -j ACCEPT -A OUTPUT -o ens3 -p tcp -m state --state ÉTABLI --sport 22 -j ACCEPT
 # Sortie -A SORTIE -o ens3 -p tcp -m état --état NOUVEAU, ÉTABLISSÉ --dport 22 -j ACCEPTER -A ENTRÉE -i ens3 -p tcp -m état --état ÉTABLISSÉ --sport 22 -j ACCEPTER

DHCP : Nous pouvons créer des règles pour autoriser l'adressage IP via DHCP

 -A INPUT -i eth0 -p udp -m state --state ESTABLISHED, RELATED --sport 67:68 -j ACCEPT -A OUTPUT -o eth0 -p udp -m udp --dport 67:68 -j ACCEPT

Rejeter toutes les connexions : nous pouvons ajouter les lignes suivantes pour désactiver tout ce qui précède :

 -A ENTREE -j REJET -A FORWARD -j REJET -A SORTIE -j REJET

Toutes ces lignes seront ajoutées dans le fichier mentionné :

AGRANDIR

Nous enregistrons les modifications

Ctrl + O

Nous quittons l'éditeur en utilisant

Ctrl + X

4. Importer les règles à l'aide d'Iptables Linux


Une fois le fichier édité, nous pouvons importer ces règles dans Iptable en exécutant la commande suivante :
 sudo iptables -F && sudo iptables -X
On peut voir l'état des règles à l'aide de la commande sudo iptables -S :

AGRANDIR

Dans le cas où nous souhaitons restaurer toutes les règles, nous exécuterons la ligne suivante :

 sudo iptables-restore </ tmp / itpables-ip4
Si nous voulons que ces règles soient permanentes, nous exécuterons ce qui suit :
 sudo apt installer iptables-persistent
De cette façon, Iptables est notre meilleur allié lors de la configuration du pare-feu dans les environnements Linux.

Vous contribuerez au développement du site, partager la page avec vos amis

wave wave wave wave wave