0% ont trouvé ce document utile (0 vote)
2 vues3 pages

Masquerade

Le document explique le principe du NAT et du masquerade avec iptables, permettant de partager une connexion Internet et de gérer le routage des adresses IP. Il détaille les étapes pour créer des règles de masquerade, sécuriser le NAT, et consulter les tables NAT et les connexions suivies. Des exemples de commandes iptables sont fournis pour illustrer la configuration et le filtrage des paquets.

Transféré par

hamid
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
2 vues3 pages

Masquerade

Le document explique le principe du NAT et du masquerade avec iptables, permettant de partager une connexion Internet et de gérer le routage des adresses IP. Il détaille les étapes pour créer des règles de masquerade, sécuriser le NAT, et consulter les tables NAT et les connexions suivies. Des exemples de commandes iptables sont fournis pour illustrer la configuration et le filtrage des paquets.

Transféré par

hamid
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

Table des matières

 1 Principe du masquerade et NAT avec iptables


 2 Comment faire du NAT complet avec masquerade d’iptables
o 2.1 Créer les règles masquerade sur iptables
o 2.2 Sécuriser le NAT
 3 Comment afficher la table NAT et les règles MASQUERADE
 4 Comment consulter la table NAT (Conntrack)
 5 Liens

Principe du masquerade et NAT avec iptables


NAT (Network Address Translation) est une méthode de routage des adresses IP.
On peut l’utiliser pour communiquer entre deux réseaux ou encore partager une connexion
internet (avec une adresse IP publique) depuis son réseau LAN.
Iptables permet de configurer cela à travers le masquerade.
Lorsque vous avez besoin de faire transiter tout le trafic d’une interface spécifique par votre
ordinateur sans rien changer à l’intérieur des paquets, vous pouvez utiliser masquerade.
MASQUERADE est une cible iptables qui peut être utilisée à la place de la cible SNAT
(NAT de source) lorsque l’adresse IP externe de l’interface inet n’est pas connue au moment
de l’écriture de la règle (lorsque le serveur obtient l’IP externe dynamiquement).
Pour cela, la table NAT masquerade d’Iptables NAT dissimule la traduction d’adresse.
Cela s’effectue dans la chaîne POSTROUTING de la table NAT.

Pour que cela soit possible, il faut :

 Autoriser le forward des paquets entre les interfaces dans le noyau Linux et dans
iptables (si vous filtrez)
 Configurer la règle masquerade dans la table POSTROUTING

Comment faire du NAT complet avec masquerade


d’iptables
Créer les règles masquerade sur iptables

Commençons par autoriser le routage des paquets entre les interfaces réseaux.
Pour cela, vous pouvez utilisez cette commande à positionner en début de script iptables.

echo 1 > /proc/sys/net/ipv4/ip_forward

Sinon il est possible de modifier la configuration du noyau Linux via sysctl :

echo net.ipv4.ip_forward = 1 > /etc/sysctl.d/[Link]

Une fois cela autorisé, vous pouvez créer la règle MASQUERADE.


Voici la syntaxe pour utiliser masquerade sur une interface.
L’option -o n’est pas obligatoire, simplement cela permet de filtrer et réduire la règle pour
cibler les bonnes interfaces réseaux.
iptables -t nat -A POSTROUTING -o <interface> -j MASQUERADE

Par exemple :

iptables -t nat -A POSTROUTING -o ens33 -j MASQUERADE

POSTROUTING n’affecte que le trafic sortant (et seulement le premier paquet d’une
connexion). Si des réponses arrivent sur ens33, elles sont reconnues comme faisant partie de
la connexion SNAT et leur adresse de destination (et leur port) sont automatiquement traduits
à leurs valeurs originales (celles écrasées par la cible MASQUERADE).

Si besoin, il est possible de filtrer sur l’adresse ou les adresses IP source et sur l’interface
réseau sortante : comme ceci :

iptables -t nat -A POSTROUTING -s <source_ip> -o <interface> -j MASQUERADE

Par exemple pour filtrer le masquerade sur un masque de sous réseau :

iptables -t nat -A POSTROUTING -s [Link]/24 -o ens33 -j MASQUERADE

Comme expliqué en introduction, il est possible d’utiliser la cible SNAT si vous utilisez une
adresse IP fixe.
Dans ce cas là, MASQUERADE n’est pas nécessaire.
La syntaxe est alors la suivante pour utiliser l’adresse IP source [Link] :

iptables -t nat -A POSTROUTING -s [Link]/24 -j SNAT --to-source


[Link]

Sécuriser le NAT

Enfin pour affiner la configuration du masquerade et le rendre le plus sûr en filtrant via
netfilter :

iptables -A FORWARD -i <interface réseau interne> -o <interface réseau


externe> -j REJECT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state NEW -i ! <interface réseau interne> -j
ACCEPT
iptables -P INPUT DROP

 iptables -A FORWARD : pour filtrer au mieux les paquets qui transitent entre
l’interface entrante et sortante
 iptables -P INPUT : on autorise les connexions existantes puis les nouvelles
connections venant de notre réseau interne
 iptables -P INPUT DROP : On bloque tout le reste
Comment afficher la table NAT et les règles
MASQUERADE
Pour consulter la table NAT et les règles de la chaîne POSTROUTING, utilisez la commande
suivante :

sudo iptables -t nat -L

Le nombre de paquets et d’octets du trafic qui a traversé la règle est indiqué ici. Si ces chiffres
sont supérieurs à 0, cela signifie que le trafic réseau passe par notre interface avec succès.

Comment consulter la table NAT (Conntrack)


L’utilitaire conntrack fournit une interface complète en espace utilisateur pour le système de
suivi des connexions Netfilter, destinée à remplacer l’ancienne interface
/proc/net/ip_conntrack. Cet outil peut être utilisé pour rechercher, lister, inspecter et maintenir
le sous-système de suivi des connexions du noyau Linux.

Il faut installer le paquet pour votre distribution Linux avec APT ou DNF :

apt install conntrack # Debian / Ubuntu Mint


dnf install conntrack # Fedora

Puis utilisez l’option -L pour lister les connexions suivies :

conntrack -L

Vous pouvez filtrer sur un protocole (TCP, UDP, ICMP) ou un port source ou de destination :

conntrack -L -p tcp --dport 25

Vous aimerez peut-être aussi