Categories: Comment faire

Exemple de commande iptable pour créér une redirection de port sur système unix

Exemple de syntaxe de commande iptables pour ajouter translation de port (PAT)

Rediriger trafic entrant pour service FTP sur le port 2121 vers le serveur ftp hebergé a l’adresse 192.168.2.1

iptables -t nat -A PREROUTING -p TCP -j DNAT –source 0/0 –destination 0/0 –dport 2121 –to-destination 192.168.1.2:21

On peut aussi spécifier le type de service « FTP » a la place du port et mettre comme destination anywhere

Ex:pour rediriger le trafic a destination du protocole FTP vers le serveur ftp hebergé a l’adresse 192.168.2.1:

iptables -t nat -A PREROUTING -p TCP -j DNAT –source 0/0 –destination 0/0  –dport ftp   –to-destination 192.168.1.2:21

Pour effacer la règle:

iptables -D  PREROUTING -t nat -p TCP -j DNAT –source 0/0 –destination  37.25.76.150 –dport 2121 –to-destination 192.168.1.2:21

Pour rediriger le trafic entrant a destination du port 2121 vers le port en local 21

iptables -t nat -A PREROUTING -p tcp -d 0/0  –dport 2121  -j REDIRECT –to-port 21

Autres exemples:
On suppose que l’équipement à joindre à l’adresse ip 192.168.0.3 et l’on veut l’atteindre par le port 8282
Il faut au préalable connaître l’ip publique du routeur, ainsi que l’adresse réseau utilisée sur la partie lan.
Voici ensuite la commande à taper pour rajouter la règle de nat :

iptables -t nat -A portmapp -p TCP -j DNAT –source 0/0 –destination 77.240.207.100 –dport 8282 –to-destination 192.168.0.3:8080

Pour supprimer la règle précédement créée, tapez :

iptables -D portmapp -t nat -p TCP -j DNAT –source 0/0 –destination 77.240.207.100 –dport 8282 –to-destination 192.168.0.3:8080

Supprimer les règles iptables par numéro de règle dans une chaine.
Afficher les règles iptables avec le numéro de ligne

iptables -t nat -vnL –line-numbers

Chain PREROUTING (policy ACCEPT 457K packets, 68M bytes)
num   pkts bytes target     prot opt in     out     source               destination
1        0     0 S20-WEB    tcp  —  *      *       0.0.0.0/0            10.161.96.71        tcp dpt:80
2        0     0 S20-WEB    tcp  —  *      *       0.0.0.0/0            10.161.32.71        tcp dpt:80

Chain POSTROUTING (policy ACCEPT 2403 packets, 183K bytes)
num   pkts bytes target     prot opt in     out     source               destination
1        0     0 SNAT       all  —  *      *       0.0.0.0/0            0.0.0.0/0           MARK match 0x1f4 to:10.161.32.71
2        0     0 SNAT       all  —  *      *       0.0.0.0/0            0.0.0.0/0           MARK match 0x1f5 to:10.161.33.71
3        0     0 SNAT       all  —  *      *       0.0.0.0/0            0.0.0.0/0           MARK match 0x1f6 to:10.161.34.73
4        0     0 SNAT       all  —  *      *       0.0.0.0/0            0.0.0.0/0           MARK match 0x1f7 to:10.161.33.73

Chain OUTPUT (policy ACCEPT 2403 packets, 183K bytes)
num   pkts bytes target     prot opt in     out     source               destination
1        0     0 S20-WEB    tcp  —  *      *       0.0.0.0/0            10.161.96.71        tcp dpt:80
2        0     0 S20-WEB    tcp  —  *      *       0.0.0.0/0            10.161.32.71        tcp dpt:80

Chain S20-WEB (4 references)
num   pkts bytes target     prot opt in     out     source               destination
1        0     0 DNAT       tcp  —  *      *       0.0.0.0/0            0.0.0.0/0           to:10.161.96.71:60080
2        0     0 DNAT       tcp  —  *      *       0.0.0.0/0            0.0.0.0/0

iptables -t nat -D S20-WEB 1

 

iptables -t nat -vnL –line-numbers

Chain PREROUTING (policy ACCEPT 457K packets, 68M bytes)
num   pkts bytes target     prot opt in     out     source               destination
1        0     0 S20-WEB    tcp  —  *      *       0.0.0.0/0            10.161.96.71        tcp dpt:80
2        0     0 S20-WEB    tcp  —  *      *       0.0.0.0/0            10.161.32.71        tcp dpt:80

Chain POSTROUTING (policy ACCEPT 2403 packets, 183K bytes)
num   pkts bytes target     prot opt in     out     source               destination
1        0     0 SNAT       all  —  *      *       0.0.0.0/0            0.0.0.0/0           MARK match 0x1f4 to:10.161.32.71
2        0     0 SNAT       all  —  *      *       0.0.0.0/0            0.0.0.0/0           MARK match 0x1f5 to:10.161.33.71
3        0     0 SNAT       all  —  *      *       0.0.0.0/0            0.0.0.0/0           MARK match 0x1f6 to:10.161.34.73
4        0     0 SNAT       all  —  *      *       0.0.0.0/0            0.0.0.0/0           MARK match 0x1f7 to:10.161.33.73

Chain OUTPUT (policy ACCEPT 2403 packets, 183K bytes)
num   pkts bytes target     prot opt in     out     source               destination
1        0     0 S20-WEB    tcp  —  *      *       0.0.0.0/0            10.161.96.71        tcp dpt:80
2        0     0 S20-WEB    tcp  —  *      *       0.0.0.0/0            10.161.32.71        tcp dpt:80

Chain S20-WEB (4 references)
num   pkts bytes target     prot opt in     out     source               destination
1        0     0 DNAT       tcp  —  *      *       0.0.0.0/0            0.0.0.0/0           to:10.161.96.71:60080

iptables -t nat -D portmapp 1

Autre exemple

iptables -t nat -vnL –line-numbers
Chain PREROUTING (policy ACCEPT 18882 packets, 1013K bytes)
num pkts bytes target prot opt in out source destination
1 20365 7452K ACCEPT all — * * 0.0.0.0/0 224.0.0.0/3
2 0 0 DNAT udp — eth4.1 * 0.0.0.0/0 0.0.0.0/0 udp dpt:20 to:192.168.1.2
3 0 0 DNAT tcp — eth4.1 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:20 to:192.168.1.2
4 0 0 DNAT tcp — eth4.1 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:9701 to:192.168.1.1:23
5 0 0 DNAT tcp — eth4.1 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:9702 to:192.168.1.1:80
6 62 3192 DNAT tcp — * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22 to:192.168.1.100:22
7 1 40 DNAT tcp — * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:2222 to:192.168.1.3:22

Ex on supprime la règle 8

iptables -t nat -D PREROUTING 8

 

 

Comment autoriser les connexion en ssh sur un systeme Linux IPTABLES -A INPUT -p TCP -i eth0 –dport ssh -j ACCEPT
cette commande est a passer par exemple sur le routeur il faut ensuite penser a rajouter la regle de nat pour  arriver en ssh sur le pc Linux connecte a la box
Ex avec un pc qui a l’ip 192.168.1.104

IPTABLES -t nat -A PREROUTING – p TCP -j DNAT –source 0/0 –destination 0/0 –dport 22 –to-destination 192.168.1.104:22.

Comment  modifier une plage de port (exemple sur un serveur FTP)

iptables -t nat -A portmapp -p TCP -j DNAT –source 0/0 –destination 77.240.200.243 –dport 50000:50100 –to-destination 192.168.1.101:50000-50100
iptables -t nat -A portmapp -p TCP -j DNAT –source 0/0 –destination 77.240.200.243 –dport 21 –to-destination 192.168.1.101:21

 

Lien vers une doc très bien faite= http://www.ssi.gouv.fr/IMG/pdf/Guide_de_configuration_Netfilter_v1.pdf

 

yannick

Recent Posts

Debian : Installer un serveur DHCP

Debian : Installer un serveur DHCP Outils  Historique Version imprimable Table des matières INTRODUCTIONINSTALLATION DE DHCPCONFIGURATION…

3 ans ago

Redondance de serveurs DHCP sous Linux

I. Présentation Le service DHCP est très répandu dans les entreprises afin de distribuer une…

3 ans ago

Configuration du reseau sous Linux

Préalables pour le lecteur : pour tirer le maximum de profit de la lecture de cet…

3 ans ago

Image Magik Tuto

Imagemagick Imagemagick est un logiciel ultra-puissant qui s'utilise en ligne de commande et qui permet de…

3 ans ago

15 rappels de Sécurité essentiels pour WordPress

Mesures de sécurité essentielles à WordPress 1- Le compte Admin En premier lieu, quelque soit…

3 ans ago

Activer le mode maintenance sur WordPress

Activer le mode maintenance sur WordPress Le mode de maintenance de WordPress est activable par…

3 ans ago