Eu descobri a solução. Parece que tive que usar uma diretiva pasv_address
com o IP do sistema. Vou postar novamente as configurações que usei para que funcione.
Supondo que nosso IP público seja 217.130.100.62
, aqui temos um extrato de /etc/vsftpd.conf
no Guest:
# Passive mode
tcp_wrappers=YES
pasv_address=217.130.100.62
pasv_enable=YES
pasv_promiscuous=NO
port_enable=YES
port_promiscuous=NO
pasv_min_port=10000
pasv_max_port=10250
E aqui, uma diretiva simplificada em /etc/haproxy/haproxy.cfg
no host:
listen FTP :21,:10000-10250
mode tcp
server ftp01 192.168.122.152 check port 21