Rediriger un port ftp sur debian

sur ma question iptables-active il ne contient que le partage de connexion internet.

Pour la doc oui j’en ai trouvé déjà pas mal et meme certain que j’ai fait imprimer chez un professionel pour l’avoir en bouquin.
Je bosse dessus depuis peu aussi (1 mois) mais j’apprend vite.

Merci beaucoup pour ton aide et bon weekend

Si tu veux venir boire un café tu vien…lol

“Le partage de connexion internet”, ça ne m’éclaire pas beaucoup. J’attendais une copie du contenu du fichier.

Pour le reste, je peux éventuellement fournir des explications sur des points de détail qui ne seraient pas clairs, mais une explication complète c’est un peu trop (long).

Bah le partage de connexion internet j’ai suivi ce tuto
doc.ubuntu-fr.org/partage_de_connexion_internet

Oki je note pour ton aide, je vais d’abord essayer tout seul et bosser dessus ce weekend et si je peine je me permettrai de te poster un message.

:slightly_smiling:

re, déjà savoir “en francais” la config :
iptables -t nat -A PREROUTING -i eth0 -p tcp –dport 21 -j DNAT –to 192.168.0.101

cette ligne indique que toutes les requetes ftp doit être acheminées vers l’adresse ip 192,168,0,101 (ma suposition)

Et les trois lignes suivante que veulent-elle dire ?
iptables -A FORWARD -j ACCEPT
modprobe nf-conntrack_ftp
modprobe nf_nat_ftp

Cette règle stipule que les connexions TCP à destination du port 21 reçues sur l'interface eth0 doivent être redirigées vers l'adresse 192.168.0.101. A ce stade iptable n'est pas concerné par le fait que ce soit le protocole FTP.
-t nat : table nat, la table d'iptables où se font les opérations de NAT source ou destination.
-A PREROUTING : ajoute la règle à la suite de la chaîne PREROUTING (de la table nat, comme vu ci-dessus), qui voit passer les paquets entrants avant qu'ils soient routés, et qui permet de faire du NAT destination.
-i eth0 : paquets reçus par l'interface eth0.
-p tcp : paquets avec le protocole TCP.
--dport 21 : paquets avec le port destination 21.
-j DNAT : applique la cible de NAT destination qui modifie l'adresse et/ou le port de destination.
--to 192.168.0.101 : modifie l'adresse de destination en 192.168.0.101.

[code]iptables -A FORWARD -j ACCEPT[/code]
Cette règle accepte tous les paquets qui traversent la machine. Pour accepter seulement les connexions FTP il faudrait ajouter d'autres critères
-A FORWARD : ajoute la règle à la suite de la chaîne FORWARD (de la table par défaut 'filter' qui sert à faire du filtrage) qui voit passer les paquets traversant la machine en tant que routeur, c'est-à-dire les paquets qu'elle reçoit et retransmet car ils ne lui sont pas destinés.
-j ACCEPT : applique la cible qui laisse passer le paquet.

[code]modprobe nf_conntrack_ftp
modprobe nf_nat_ftp[/code]
Ces deux commandes chargent les modules du noyau nf_conntrack_ftp et nf_nat_ftp.
La commande modprobe sert à charger un module du noyau, et charge au préalable automatiquement les modules éventuels dont il dépend. Comme nf_nat_ftp dépend de nf_conntrack_ftp, la première invocation de modprobe n'est normalement pas nécessaire.
Le module nf_conntrack_ftp surveille le contenu des connexions de commandes FTP (par défaut sur le port 21). Cela permet au suivi de connexion d'identifier les connexions de données FTP qui utilisent des ports dynamiques non connus a priori.
Le module nf_nat_ftp, en s'aidant du précédent, modifie les adresses transmises dans les connexions de commande FTP ayant subi une transformation d'adresse source (SNAT, MASQUERADE) ou destination (DNAT, REDIRECT) et les adresses des connexions de données FTP de façon transparente pour le client et le serveur.

Cette règle stipule que les connexions TCP à destination du port 21 reçues sur l’interface eth0 doivent être redirigées vers l’adresse 192.168.0.101. A ce stade iptable n’est pas concerné par le fait que ce soit le protocole FTP.
-t nat : table nat, la table d’iptables où se font les opérations de NAT source ou destination.
-A PREROUTING : ajoute la règle à la suite de la chaîne PREROUTING (de la table nat, comme vu ci-dessus), qui voit passer les paquets entrants avant qu’ils soient routés, et qui permet de faire du NAT destination.
-i eth0 : paquets reçus par l’interface eth0.
-p tcp : paquets avec le protocole TCP.
–dport 21 : paquets avec le port destination 21.
-j DNAT : applique la cible de NAT destination qui modifie l’adresse et/ou le port de destination.
–to 192.168.0.101 : modifie l’adresse de destination en 192.168.0.101.

Cette règle accepte tous les paquets qui traversent la machine. Pour accepter seulement les connexions FTP il faudrait ajouter d’autres critères
-A FORWARD : ajoute la règle à la suite de la chaîne FORWARD (de la table par défaut ‘filter’ qui sert à faire du filtrage) qui voit passer les paquets traversant la machine en tant que routeur, c’est-à-dire les paquets qu’elle reçoit et retransmet car ils ne lui sont pas destinés.
-j ACCEPT : applique la cible qui laisse passer le paquet.

modprobe nf_conntrack_ftp modprobe nf_nat_ftp
Ces deux commandes chargent les modules du noyau nf_conntrack_ftp et nf_nat_ftp.
La commande modprobe sert à charger un module du noyau, et charge au préalable automatiquement les modules éventuels dont il dépend. Comme nf_nat_ftp dépend de nf_conntrack_ftp, la première invocation de modprobe n’est normalement pas nécessaire.
Le module nf_conntrack_ftp surveille le contenu des connexions de commandes FTP (par défaut sur le port 21). Cela permet au suivi de connexion d’identifier les connexions de données FTP qui utilisent des ports dynamiques non connus a priori.
Le module nf_nat_ftp, en s’aidant du précédent, modifie les adresses transmises dans les connexions de commande FTP ayant subi une transformation d’adresse source (SNAT, MASQUERADE) ou destination (DNAT, REDIRECT) et les adresses des connexions de données FTP de façon transparente pour le client et le serveur.

re, petit oops, est ce que la config pour le ftp peut bloquer une redirection pou un autre préiphérique ?
Car là j’essaie de remettre une camera de sruveillance acces de puis le we ca fonctionnait avec rinetd la semaine derniere là ca ne fonctionne plus. est ce que je dois faire une manip sur iptables pour rétablir la chose?

Avec les seules règles que j’ai indiquées, normalement non. S’il y en a d’autres dans ton jeu de règles, je ne peux pas me prononcer sans les connaître.
rinetd tourne et écoute sur le port prévu ?

Ok merci, bon là je crois que je me suis planté, j’ai tapé iptables -X au lieu de -L (suppression des chaines personnelles) là la configuration n’est plus prise en compte quand je tape sur filezilla la connexion ftp rien ne se passe.

Je cherche quels fichier cette commande modifie pour rétablir la situation

Voici ce que j’ai dans iptables
Chain INPUT (policy ACCEPT)
target prot opt source destination
fail2ban-ssh tcp – anywhere anywhere multiport dports ssh

Chain FORWARD (policy ACCEPT)
target prot opt source destination
ACCEPT all – anywhere anywhere

Chain OUTPUT (policy ACCEPT)
target prot opt source destination

Chain fail2ban-ssh (1 references)
target prot opt source destination
RETURN all – anywhere anywhere

Par erreur iptables -X,lol bon je cherche les erreur

Les commandes iptables en elles-mêmes ne modifient aucun fichier.
iptables -X ne supprime que les chaînes utilisateur vides et non appelées depuis une règle. iptables -L montre que la chaîne fail2ban-ssh est toujours présente car elle est appelée (1 référence) depuis une règle de la chaîne INPUT et contient une règle.
Pour lister l’ensemble des règles de toutes les tablee il vaut mieux utiliser iptables-save ou iptables -S.

raf@debian:/etc# iptables -S
-P INPUT ACCEPT
-P FORWARD ACCEPT
-P OUTPUT ACCEPT
-N fail2ban-ssh
-A INPUT -p tcp -m multiport --dports 22 -j fail2ban-ssh
-A FORWARD -j ACCEPT

Voici ce que j’ai.
Voici Rinetd
192.168.1.20 86 192.168.0.45 86
192.168.1.20 4321 192.168.0.45 4321

Mon site d’exemple rafioulitus.dyndns.org il y a une icone camera clic dessus.

Avant sa redirigé vers l’adresse http de la camera , avec une redirection de port via rinetd, ci dessus

voici mon email hotmail.fr pour parler en directe si possible car là je peine,lol

peux tu me dire si je traduit bien cete ligne?

iptables -t filter -A INPUT -i eth0 -d 10.0.0.2 -p tcp --sport 53 -j ACCEPT

Toutes les entrées sur eth0 en direction de l’adresse ip 10.0.0.2 sur le port 53 en tcp sont acceptés

En fait iptables -S n’affiche qu’une table, comme toutes les commandes iptables. Il faut utiliser iptables-save pour afficher toutes les tables.

Si j’essaie de me connecter à ton URL, je reçois un message d’erreur ICMP “host unreachable” en provenance de la box, qui signale généralement l’échec de la résolution ARP de l’adresse cible (personne ne répond à cette adresse sur le réseau local).
La machine est bien active, et la redirection du port 86 dans la box se fait bien vers la bonne adresse ?

voici iptables-save
raf@debian:~# iptables-save

Generated by iptables-save v1.4.8 on Sun Feb 5 11:28:38 2012

*filter
:INPUT ACCEPT [577:61277]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [552:61040]
:fail2ban-ssh - [0:0]
-A INPUT -p tcp -m multiport --dports 22 -j fail2ban-ssh
-A FORWARD -j ACCEPT
-A fail2ban-ssh -j RETURN
COMMIT

Completed on Sun Feb 5 11:28:38 2012

Generated by iptables-save v1.4.8 on Sun Feb 5 11:28:38 2012

*nat
:stuck_out_tongue:REROUTING ACCEPT [674:41927]
:stuck_out_tongue:OSTROUTING ACCEPT [2:400]
:OUTPUT ACCEPT [202:13179]
-A PREROUTING -i eth0 -p tcp -m tcp --dport 21 -j DNAT --to-destination 192.168.0.101
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT

Completed on Sun Feb 5 11:28:38 2012

Comment repartir de zero pour tout bien remettre dans iptables, quand la commande iptables -X et/ou-F sont lancés quel fichier est modifié et comment le rétablir?

[quote=“rafioulitus”]peux tu me dire si je traduit bien cete ligne?

iptables -t filter -A INPUT -i eth0 -d 10.0.0.2 -p tcp --sport 53 -j ACCEPT

Toutes les entrées sur eth0 en direction de l’adresse ip 10.0.0.2 sur le port 53 en tcp sont acceptés[/quote]
–sport = depuis le port source.
Et la chaîne INPUT suppose que le paquet est destiné à la machine locale, donc que l’adresse 10.0.0.2 appartient à celle-ci. Sinon le paquet passerait dans la chaîne FORWARD.

Comme je l’ai déjà écrit, une commande iptables ne modifie aucun fichier en elle-même. Les règles actives sont dans le noyau, pas dans un fichier.
Une fois les règles en place, tu peux les sauvegarder dans un fichier avec

pour pouvoir les restaurer à tout moment avec

ok, bon pour repartir avec une config propre vais réinstaller debian pour repartir sur des bases plus sûr.

et remettre toute la config comme tu me l’a indiqué hier,

Cela ne devrait pas être nécessaire, c’est exagéré comme réaction.

éxagéré je pense oui peu etre, mais j’ai rentré des iptables sans trop comprendre ce que cela signifie. je prefere remettre dhcp ssh de base et ensuite simplement metre ta configue pour tester et suite j’aviserai si cela fonctionne alors je relirai tes commentaires sur cette configuration et bien la comprendre avant de rentrer d’autre iptables comme pour la camera.

et une fois l’iptables bien compris là je m’occuperai de la camera

Ce que je veux c’est bien etre clair et savoir ce que je rentre dans ma config