# Problème ftp sur VM proxmox sans ipfailover

**URL:** <https://www.debian-fr.org/t/probleme-ftp-sur-vm-proxmox-sans-ipfailover/78371>\
**Category:** Support Debian\
**Created:** [Janvier 12, 2019, 11:03 UTC](https://www.debian-fr.org/t/probleme-ftp-sur-vm-proxmox-sans-ipfailover/78371 "2019-01-12T11:03:42Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![neibaf](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/n/2acd7d/32.png) [@neibaf](https://www.debian-fr.org/u/neibaf)\
**Post date:** [Janvier 12, 2019, 11:03 UTC](https://www.debian-fr.org/t/probleme-ftp-sur-vm-proxmox-sans-ipfailover/78371/1 "2019-01-12T11:03:42Z")

</div>

Bonjour,

j’ai récemment installé une VM debian sur un serveur avec `Proxmox`. Je n’ai pas d’`ip failover`, aussi j’ai créé un `lan` avec `proxmox` de la manière suivante :  
création d’une nouvelle interface réseau avec la configuration suivante :

```nohighlight
address 192.168.0.254
       netmask 255.255.255.0
       broadcast 192.168.0.255
       bridge-ports none
       bridge-stp off
       bridge-fd 0
       post-up echo 1 > /proc/sys/net/ipv4/ip_forward
       post-up iptables -t nat -A POSTROUTING -s '192.168.0.0/24' -o vmbr0 -j MASQUERADE
       post-down iptables -t nat -D POSTROUTING -s '192.168.0.0/24' -o vmbr0 -j MASQUERADE
       post-up iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 80 -j DNAT --to 192.168.0.2:80
       post-down iptables -t nat -D PREROUTING -i vmbr0 -p tcp --dport 80 -j DNAT --to 192.168.0.2:80
       post-up iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 443 -j DNAT --to 192.168.0.2:443
       post-down iptables -t nat -D PREROUTING -i vmbr0 -p tcp --dport 443 -j DNAT --to 192.168.0.2:443
       post-up iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 38202 -j DNAT --to 192.168.0.2:21
       post-down iptables -t nat -D PREROUTING -i vmbr0 -p tcp --dport 38202 -j DNAT --to 192.168.0.2:21
       post-up iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 38203 -j DNAT --to 192.168.0.2:22
       post-down iptables -t nat -D PREROUTING -i vmbr0 -p tcp --dport 38203 -j DNAT --to 192.168.0.2:22

```

Ensuite, sur la VM, j’ai configuré l’interface réseau pour être dans le même `lan` et utiliser `192.168.0.254` pour accéder à internet.  
Ca fonctionne, pas de problème à ce niveau.  
La redirection des `ports 80` et `443` vers la VM fonctionnent nickel.  
J’accède en `ssh` à la VM sans problème avec la redirection du port `38203` du serveur.  
Par contre, je n’arrive pas à me connecter en `ftp` avec `filezilla`. Plus précisément, je me connecte, mais au moment de récupérer le contenu du dossier, plantage :

```nohighlight
    |Statut :|Connecté|
    |---|---|
    |Statut :|Récupération du contenu du dossier...|
    |Statut :|Le serveur a envoyé une réponse passive avec une adresse non routable. Adresse remplacée par celle du serveur.|
    |Commande :|LIST|
    |Erreur :|La connexion des données ne peut pas être établie : ECONNREFUSED - Connexion refusée par le serveur|

```

Dans le fichier de log de la VM, rien de particulier, il est juste indiqué

```nohighlight
Sat Jan 12 11:55:33 2019 [pid 8121] CONNECT: Client "XXXXXX"
Sat Jan 12 11:55:33 2019 [pid 8120] [[spoiler]YYYYY[/spoiler]] OK LOGIN: Client "XXXXXX"

```

Je ne vois pas trop quoi faire, quelqu’un pourrait-il m’aider ?  
Merci d’avance.

Neibaf

---

<div class="post-metadata">

**Author:** ![PascalHambourg](https://www.debian-fr.org/user_avatar/www.debian-fr.org/pascalhambourg/32/5837_2.png) [@PascalHambourg](https://www.debian-fr.org/u/PascalHambourg)\
**Post date:** [Janvier 12, 2019, 3:38 UTC](https://www.debian-fr.org/t/probleme-ftp-sur-vm-proxmox-sans-ipfailover/78371/2 "2019-01-12T15:38:09Z")

</div>

Tu découvres que le NAT et le protocole FTP ne font pas bon ménage ou quoi ? D’autant plus quand on utilise un port non standard.

Le NAT a besoin d’une béquille pour gérer correctement le protocole FTP. Pour netfilter, celle-ci est fournie par le module du noyau nf\_nat\_ftp. Pour être efficace, il faut l’associer au port utilisé par la connexion de commande FTP. Cela se fait avec la cible CT d’iptables. Il faut aussi que la connexion de commande soit en clair et non chiffrée par TLS/SSL (donc adieu la confidentialité du mot de passe).

Autrement, on peut gérer le protocole FTP à la main :

- spécifier une plage de ports passifs dans le serveur FTP
- rediriger cette plage de ports avec des règles DNAT
- configurer le serveur FTP pour annoncer l’adresse IP externe du NAT comme adresse passive.

Note : le mode actif FTP éviterait tous ces tracas côté serveur mais les reporterait côté client s’il est lui-même derrière un NAT. Avec un port de commande non standard, il n’y a quasimement aucune chance que cela fonctionne (pas pris en charge par le NAT des routeurs domestiques et autres box internet).

---

<div class="post-metadata">

**Author:** ![neibaf](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/n/2acd7d/32.png) [@neibaf](https://www.debian-fr.org/u/neibaf)\
**Post date:** [Mars 3, 2019, 1:46 UTC](https://www.debian-fr.org/t/probleme-ftp-sur-vm-proxmox-sans-ipfailover/78371/3 "2019-03-03T13:46:44Z")

</div>

Bonjour,

alors oui, je mets beaucoup de temps à répondre, et oui, je découvre certaines choses, et je ne suis pas près de m’arrêter ! Mais ça ne veut pas dire que je suis plus con qu’un autre… ;-).

Alors, en essayant de bien comprendre tes remarques, j’ai modifié 2 choses :

- pasv\_min\_port et pasv\_max\_port dans le fichier de conf de vsftpd, en laissant une marge de 7 ports
- j’ai redirigé les mêmes ports depuis la machine serveur proxmox vers la VM

Et ça marche, donc merci 🙂
