VPS

Tutoriel Iptables : Securiser un VPS avec le Pare-feu Linux

VPS·22 mars 2026·29 min de lecture

Vous cherchez un tutoriel complet sur iptables ? Cet article vous montrera comment installer et utiliser iptables sur un systeme Ubuntu pour securiser votre reseau.

iptables est un utilitaire de pare-feu en ligne de commande Linux qui utilise des chaines de politiques pour autoriser ou bloquer le trafic. Lorsqu'une connexion tente de s'etablir sur votre systeme, iptables recherche une regle dans sa liste pour la faire correspondre. S'il n'en trouve pas, il recourt a l'action par defaut.

iptables est pre-installe sur la plupart des distributions Linux. Sinon, executez la commande suivante pour l'installer :

Iptables est un programme de pare-feu pour Linux. Il surveillera le trafic entrant et sortant de votre serveur en utilisant des tables. Ces tables contiennent des ensembles de regles, appelees chaines, qui filtreront les paquets de donnees entrants et sortants.

Comment Fonctionne Iptables ?

Lorsqu'un paquet correspond a une regle, une cible lui est attribuee, qui peut etre une autre chaine ou l'une de ces valeurs speciales :

Ce tutoriel vous aidera a apprendre comment fonctionne iptables et comment l'utiliser pour securiser votre VPS.Comment Fonctionne IptablesTout le trafic reseau est compose de paquets. iptables identifie ces paquets et les verifie par rapport a un ensemble de regles, puis execute l'action correspondante.

iptables filtre les paquets en fonction de :- Tables

: Les tables sont des fichiers qui regroupent des actions similaires. Une table se compose de plusieurs chaines.- Chaines

: Une chaine est une serie de regles. Lorsqu'un paquet est recu, iptables trouve la table appropriee et le filtre a travers la chaine de regles jusqu'a trouver une correspondance.

- Regles: Une regle est une instruction qui dit au systeme quoi faire avec un paquet. Les regles peuvent bloquer un type de paquet ou le rediriger vers un autre type.

- Cibles: Une cible est la decision prise lorsqu'un paquet correspond a une regle. Les cibles sont ACCEPT, DROP, REJECT ou QUEUE.

Les trois chaines par defaut d'iptables sont :- INPUT : Controle les paquets entrants sur le serveur.- FORWARD : Filtre les paquets qui sont transferes vers un autre endroit.

- OUTPUT : Filtre les paquets sortants du serveur.

Explorons maintenant quelques commandes pratiques d'iptables.Verification du Statut Actuel d'Iptables

Pour verifier le statut actuel de la configuration d'iptables, executez :

Nous diviserons ce tutoriel iptables en trois etapes. Tout d'abord, vous apprendrez a installer l'outil sur Ubuntu. Ensuite, nous vous montrerons comment definir les regles. Enfin, nous vous guiderons pour effectuer des modifications persistantes dans iptables.

1. Installer Iptables

Iptables est pre-installe sur la plupart des distributions Linux. Cependant, si vous ne l'avez pas sur votre systeme Ubuntu/Debian par defaut, suivez les etapes ci-dessous :

Le parametre -L liste toutes les regles, tandis que -v fournit des informations detaillees.

Activer le Trafic sur le Localhost

```bash

sudo apt-get update

sudo apt-get install iptables

```

Cela est essentiel pour que les applications communiquant avec le localhost fonctionnent correctement.

```bash

sudo iptables -L -v

```

Ici, l'option `-L` est utilisee pour lister toutes les regles, et `-v` est pour afficher les informations de maniere plus detaillee.

Vous obtiendrez un resultat similaire au suivant :

```plaintext

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)

pkts bytes target prot opt in out source destination

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)

pkts bytes target prot opt in out source destination

Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)

pkts bytes target prot opt in out source destination

```

Vous avez maintenant le pare-feu iptables de Linux installe. A ce stade, vous remarquerez que toutes les chaines sont configurees sur ACCEPT et n'ont aucune regle. Ce n'est pas securise, car n'importe quel paquet peut passer sans etre filtre.

Bloquer le Trafic

Pour rejeter le trafic d'une adresse IP specifique :

Definir une regle signifie l'ajouter a la chaine. Pour ce faire, vous devez inserer l'option `-A` (Append) juste apres la commande iptables, de la maniere suivante :

```bash

sudo iptables -A

```

Cela alertera iptables que vous ajoutez de nouvelles regles a une chaine. Ensuite, vous pouvez combiner la commande avec d'autres options, telles que :

- `-i` (interface) : l'interface reseau dont vous souhaitez filtrer le trafic, comme eth0, lo, ppp0, etc.

- `-p` (protocole) : le protocole reseau ou s'effectue votre processus de filtrage. Il peut etre tcp, udp, udplite, icmp, sctp, icmpv6 et plus. Vous pouvez aussi ecrire "all" pour choisir tous les protocoles.

Ou bloquer une plage de ports :

- `--dport` (port de destination) : le numero de port de destination d'un protocole, comme 22 (SSH), 443 (https), etc.

- `-j` (cible) : le nom de la cible (ACCEPT, DROP, RETURN). Vous devez l'inserer a chaque fois que vous creez une nouvelle regle.

Si vous souhaitez utiliser tous ces parametres, vous devez ecrire la commande dans cet ordre :

```bash

sudo iptables -A <cadena> -i <interfaz> -p <protocolo (tcp/udp)> -s <origen> --dport <número de puerto> -j <destino>

```

Une fois que vous comprenez la syntaxe de base, vous pouvez commencer a configurer le pare-feu pour renforcer la securite de votre serveur. Pour ce tutoriel iptables, nous utiliserons la chaine "INPUT" comme exemple.

Activer le Trafic surlocalhost

Pour permettre le trafic surlocalhost, tapez la commande suivante :

```bash

sudo iptables -A INPUT -i lo -j ACCEPT

```

Pour ce tutoriel iptables, nous utilisons "lo" ou l'interface de bouclage. Elle est utilisee pour toutes les communications surlocalhostLes regles actuelles seront sauvegardees automatiquement. Pour sauvegarder les modifications futures, executez :

Activer les Connexions sur les Ports HTTP, SSH et SSL

Ensuite, nous voulons que les connexions http (port 80), https (port 443) et ssh (port 22) fonctionnent normalement. Pour cela, nous devons specifier le protocole (-p) et le port correspondant (--dport). Vous pouvez executer ces commandes une par une :

```bash

sudo iptables -A INPUT -p tcp --dport 22 -j

ACCEPT

sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT

sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT

```

Il est temps de verifier si les regles ont ete ajoutees dans iptables :

```bash

sudo iptables -L -v

```

Cela devrait renvoyer les resultats ci-dessous, ce qui signifie que toutes les connexions de protocole TCP des ports specifies seront acceptees :

```plaintext

La aceptación del puerto de destino en iptables que consiste en http, https y ssh

```

Filtrer les Paquets Selon la Source

Iptables vous permet de filtrer les paquets en fonction d'une adresse IP ou d'une plage d'adresses IP. Vous devez le specifier apres l'option `-s`. Par exemple, pour accepter les paquets de 192.168.1.3, la commande serait :

```bash

sudo iptables -A INPUT -s 192.168.1.3 -j ACCEPT

```

Vous pouvez egalement rejeter les paquets d'une adresse IP specifique en remplacant la cible ACCEPT par DROP.

```bash

sudo iptables -A INPUT -s 192.168.1.3 -j DROP

```

Si vous souhaitez rejeter les paquets d'une plage d'adresses IP, vous devez utiliser l'option `-m` et le module iprange. Ensuite, specifiez la plage d'adresses IP avec --src-range. N'oubliez pas, un tiret doit separer la plage d'adresses IP sans espace, comme ceci :

```bash

sudo iptables -A INPUT -m iprange --src-range 192.168.1.100-192.168.1.200 -j DROP

```

Filtrer les paquets selon leurs sources est crucial si vous utilisez un systeme de detection et de prevention des intrusions (IDS/IPS) tel que Suricata. Cet outil surveille le reseau de votre VPS et vous notifie du trafic malveillant.

L'IDS/IPS affiche les origines des paquets malveillants, que vous pouvez ajouter a la liste de blocage d'iptables. Consultez notre article pour en savoir plus sur la configuration de Suricata sur Ubuntu.

Bloquer Tout Autre Trafic

Il est crucial d'utiliser la cible DROP pour tout autre trafic apres avoir defini les regles --dport. Cela empechera une connexion non autorisee d'acceder au serveur via d'autres ports ouverts. Pour y parvenir, tapez simplement :

```bash

sudo iptables -A INPUT -j DROP

```

Maintenant, la connexion en dehors des ports specifies sera bloquee.

Supprimer des Regles

Si vous souhaitez supprimer toutes les regles et recommencer a zero, vous pouvez utiliser l'option -F (flush) :

```bash

sudo iptables -F

```

Cette commande efface toutes les regles actuelles. Cependant, pour supprimer une regle specifique, vous devez utiliser l'option -D. Tout d'abord, vous devez voir toutes les regles disponibles en tapant la commande suivante :

```bash

sudo iptables -L --line-numbers

```

Vous obtiendrez une liste de regles avec des numeros :

```plaintext

Cadena INPUT (política ACCEPT)

num target prot opt source destination

1 ACCEPT all -- 192.168.0.4 anywhere

2 ACCEPT tcp -- anywhere anywhere tcp dpt:https

3 ACCEPT tcp -- anywhere anywhere tcp dpt:http

4 ACCEPT tcp -- anywhere anywhere tcp dpt:ssh

```

Pour supprimer une regle, inserez la chaine correspondante et le numero de la liste. Disons que, pour ce tutoriel iptables, nous voulons supprimer la regle numero trois de la chaine "INPUT". La commande serait :

```bash

sudo iptables -D INPUT 3

```

Alternativement, si vous devez filtrer uniquement le trafic entrant, vous pouvez utiliser le Firewall VPS de Holy. Selectionnez votre VPS et naviguez jusqu'a la section Firewall :

Conclusion

Iptables est un puissant programme de pare-feu que vous pouvez utiliser pour securiser votre serveur Linux ou VPS. L'avantage est que vous pouvez definir plusieurs regles selon vos preferences.

Dans ce tutoriel iptables, vous avez appris a installer et utiliser l'outil. Maintenant, nous esperons que vous pourrez gerer vos ensembles de regles pour filtrer les paquets entrants et sortants.

C'est le moment de l'essayer par vous-meme et bonne chance !

Vous avez encore des questions ?

Venez discuter avec nous et nous vous répondrons dès que possible !

Contacter le support