Cenário
- Proxy/firewall autenticando na internet
- Webserver atrás do proxy/firewall
Não sei exatamente a razão para não funcionar mas pelo que entendi, acontece um conflito com o endereço de IP do servidor (192.168.x.x) com o endereço público, e por isso acontece um erro que impede a conexão.
No webserver:
cd /etc/pure-ftpd/conf
echo xxx.xxx.xxx.xxx > ForcePassiveIP (IP público)
echo 90000 90100 > PassivePortRange (Range de sua preferência)
No proxy/firewall:
iptables -t nat -A PREROUTING -i ethx -p tcp -m tcp –dport 90000:90100 -j DNAT –to-destination 192.168.x.x (ethx é a conexão com a internet, a range de portas deve ser a mesma da colocada no webserver, o destino deve ser o IP do webserver)
Não se esqueça de reiniciar o serviço do pureftp
O comando dado no proxy, pode ser colocado dentro de um arquivo para que o comando seja dado a cada reinicialização do servidor