Une règle NAT permet de faire de la traduction d'adresse. C'est le fonctionnement que l'on retrouve chez les particuliers, mais également chez la majorité des professionnels.
Ceci a été créé pour combler le manque d'adresse IP. Lorsque nous sommes dans un réseau local (chez nous par exemple), les adresses IP attribuées à chaque machine du réseau sont des adresses réservées pour ceci. Ces adresses ne peuvent donc être utilisées pour communiquer avec l'exterieur. C'est ici qu'intervient le NAT. Ce dernier va permettre de faire passer toutes les communications du réseau interne vers l'exterieur en utilisant l'adresse IP externe du routeur (généralement fournie par le FAI). Donc lorsque nous allons sur Internet, c'est l'IP de notre box qui est utilisée, et lorsque le paquet revient vers le poste client, notre box utilise sa table NAT pour retrouver à quel PC interne la requête est destinée.
Le PAT fonctionne pratiquement de la même façon, sauf ici on travaille avec les ports. Là ou le NAT traduit des adresses, le PAT traduit des ports. Par exemple admettons que l'on ait un serveur web chez nous. Notre serveur n'est pas directement visible de l'exterieur car son adresse IP est une IP Locale. Il faut donc que nous redirigions les ports entrants 80 et 443 vers notre serveur WEB.
nano /etc/sysctl.conf
net.ipv4.ip_forward=1
sysctl -p
iptables -t nat -A POSTROUTING -o <interface> -j MASQUERADE
Attention : Il faut respecter la casse !
iptables-save > <chemin_de_la_sauvegarde>/<nom_voulu>
systemctl restart networking
iptables -t nat -A PREROUTING -d <IP_Public/CIDR> -i <Interface_WAN> -p tcp --dport <Port_Source> -j DNAT --to-destination <IP_Destination>:<Port_Destination>
Attention : Il faut respecter la casse !