Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Pd de redirection de ports avec iptables

4 réponses
Avatar
skydiverss
Salut,
J'ai un problème de redirection de ports via ma passerelle. j'ai une
passerelle fedora core 1 sur laquelle j'ai mis du nat et firewall via
iptables
je souhaite rediriger mon ftp vers une machine de mon réseau local

internet --> passerelle --> serveur ftp

le port est bien ouvert mais aucune redirection s'effectue,
pouvez vous me filer un coup de main
ci joint un partie de la config de mon firewall :

echo "[autorisation du serveur FTP(21 et 20) ...]"
/sbin/iptables -A INPUT -p tcp --dport ftp -j ACCEPT
/sbin/iptables -A INPUT -p tcp --dport ftp-data -j ACCEPT
/sbin/iptables -t nat -A PREROUTING -j DNAT -i ppp0 -p tcp --dport 21 --to-destination 192.168.0.100:21
/sbin/iptables -t nat -A PREROUTING -j DNAT -i ppp0 -p tcp --dport 20 --to-destination 192.168.0.100:20

merci

4 réponses

Avatar
TiChou
Dans l'article news:,
skydiverss écrivait :

Salut,


Bonsoir,

J'ai un problème de redirection de ports via ma passerelle. j'ai une
passerelle fedora core 1 sur laquelle j'ai mis du nat et firewall via
iptables
je souhaite rediriger mon ftp vers une machine de mon réseau local

internet --> passerelle --> serveur ftp

le port est bien ouvert mais aucune redirection s'effectue,
pouvez vous me filer un coup de main
ci joint un partie de la config de mon firewall :

echo "[autorisation du serveur FTP(21 et 20) ...]"
/sbin/iptables -A INPUT -p tcp --dport ftp -j ACCEPT
/sbin/iptables -A INPUT -p tcp --dport ftp-data -j ACCEPT


Ici vous autorisez uniquement les connexions à destination de la passerelle
sur les ports 20 et 21 alors qu'il faut en fait autoriser uniquement à
forwarder ces connexions vers la machine du réseau local.

On autorise de forwarder les nouvelles connexions ftp entrantes vers la
machine locale :

iptables -A FORWARD -i ppp0 -o eth0 -p tcp -d 192.168.0.100 --dport 21
-m state --state NEW -j ACCEPT

On s'assure que la règle suivante est établie pour autoriser de forwarder le
trafic entrant des connexions existantes ou les nouvelles connexions en
rapport avec des connexions existantes :

iptables -A FORWARD -i ppp0 -o eth0 -d 192.168.0.0/24
-m state --state RELATED,ESTABLISHED -j ACCEPT

On s'assure aussi que la règle suivante est établie pour autoriser de
forwarder toutes les connexions sortantes :

iptables -A FORWARD -i eth0 -o ppp0 -s 192.168.0.0/24 -j ACCEPT

Bien sûr, ces règles sur la chaine FORWARD sont nécéssaires uniquement dans
le cas d'une politique à DROP par défaut (iptables -P FORWARD DROP), ce qui
est vivement recommandé de faire.

/sbin/iptables -t nat -A PREROUTING -j DNAT -i ppp0 -p tcp --dport 21
--to-destination 192.168.0.100:21


Ok. On peut éventuellement préciser l'adresse IP Internet de destination en
ajoutant le paramètre '-d address'.

/sbin/iptables -t nat -A PREROUTING -j DNAT -i ppp0 -p tcp --dport 20
--to-destination 192.168.0.100:20


Ici on n'a pas besoin de nater les connexions sur le port ftp-data, il faut
laisser les modules ip_conntrack_ftp et ip_nat_ftp s'occuper de ça. On peut
donc supprimer cette dernière règle et s'assurer que les deux modules cités
sont bien chargés (modprobe ip_conntrack_ftp; modprobe ip_nat_ftp).

merci


Pas de quoi.

--
TiChou

Avatar
skydiverss
Merci pour les infos je test ca ce soit et je vous tiens au courant


Le Thu, 26 Feb 2004 22:30:41 +0100, TiChou a écrit :

Dans l'article news:,
skydiverss écrivait :

Salut,


Bonsoir,

J'ai un problème de redirection de ports via ma passerelle. j'ai une
passerelle fedora core 1 sur laquelle j'ai mis du nat et firewall via
iptables
je souhaite rediriger mon ftp vers une machine de mon réseau local

internet --> passerelle --> serveur ftp

le port est bien ouvert mais aucune redirection s'effectue,
pouvez vous me filer un coup de main
ci joint un partie de la config de mon firewall :

echo "[autorisation du serveur FTP(21 et 20) ...]"
/sbin/iptables -A INPUT -p tcp --dport ftp -j ACCEPT
/sbin/iptables -A INPUT -p tcp --dport ftp-data -j ACCEPT


Ici vous autorisez uniquement les connexions à destination de la passerelle
sur les ports 20 et 21 alors qu'il faut en fait autoriser uniquement à
forwarder ces connexions vers la machine du réseau local.

On autorise de forwarder les nouvelles connexions ftp entrantes vers la
machine locale :

iptables -A FORWARD -i ppp0 -o eth0 -p tcp -d 192.168.0.100 --dport 21
-m state --state NEW -j ACCEPT

On s'assure que la règle suivante est établie pour autoriser de forwarder le
trafic entrant des connexions existantes ou les nouvelles connexions en
rapport avec des connexions existantes :

iptables -A FORWARD -i ppp0 -o eth0 -d 192.168.0.0/24
-m state --state RELATED,ESTABLISHED -j ACCEPT

On s'assure aussi que la règle suivante est établie pour autoriser de
forwarder toutes les connexions sortantes :

iptables -A FORWARD -i eth0 -o ppp0 -s 192.168.0.0/24 -j ACCEPT

Bien sûr, ces règles sur la chaine FORWARD sont nécéssaires uniquement dans
le cas d'une politique à DROP par défaut (iptables -P FORWARD DROP), ce qui
est vivement recommandé de faire.

/sbin/iptables -t nat -A PREROUTING -j DNAT -i ppp0 -p tcp --dport 21
--to-destination 192.168.0.100:21


Ok. On peut éventuellement préciser l'adresse IP Internet de destination en
ajoutant le paramètre '-d address'.

/sbin/iptables -t nat -A PREROUTING -j DNAT -i ppp0 -p tcp --dport 20
--to-destination 192.168.0.100:20


Ici on n'a pas besoin de nater les connexions sur le port ftp-data, il faut
laisser les modules ip_conntrack_ftp et ip_nat_ftp s'occuper de ça. On peut
donc supprimer cette dernière règle et s'assurer que les deux modules cités
sont bien chargés (modprobe ip_conntrack_ftp; modprobe ip_nat_ftp).

merci


Pas de quoi.



Avatar
Annie D.
TiChou wrote:

/sbin/iptables -t nat -A PREROUTING -j DNAT -i ppp0 -p tcp --dport 20
--to-destination 192.168.0.100:20


Ici on n'a pas besoin de nater les connexions sur le port ftp-data,


[pour skydiverss]
De toute façon ça ne marcherait pas : en mode FTP actif, la connexion de
données est lancée par le serveur avec le port source ftp-data vers le
client avec le port destination fourni par ce dernier dans la commande
PORT. Pour la passerelle, c'est donc une connexion sortante.
En mode passif, la connexion de données est entrante mais le port
destination utilisé, fourni par le serveur en réponse à la commande
PASV, est différent de ftp-data (et dynamique, ce qui n'arrange rien).

Les modules de suivi et NAT FTP ip_conntrack_ftp et ip_nat_ftp
s'occupent de surveiller ces commandes pour reconnaître comme RELATED le
premier paquet de la connexion de données.


Avatar
skydiverss
Merci a vous deux, si avec ca et le HOWTO IPTABLES je n'y arrive pas...