Eu tenho tido problemas com o meu servidor ftp que eu tentei consertar por mais de uma semana agora.
Minha configuração:
- Estou executando o Raspbian em um Raspberry Pi.
- Meu servidor de ftp é o pure-ftpd e estou executando com esses switches:
/usr/local/sbin/pure-ftpd -D -C 5 -E -A -H -x -p 35000:36000 -u 0 -y
5:3 -Y 1
- Eu compilei com a opção "--with-tls"
- Estou usando criptografia TLS explícita , (também tentei implícito, mesmo resultado)
- A porta redirecionou meu intervalo de portas passivas, conforme definido pela opção -p no pure-ftpd
- Eu também tenho porta encaminhada porta 20 a 21
Outros servidores em execução:
- Um servidor samba
- Um servidor da web Apache
- Servidor de soquete Python personalizado
- e o servidor shh / sftp incorporado
Eu também tenho o cliente DUC no-ip rodando
Resumindo, aqui estão os problemas que estou tendo com o pure-ftpd:
- FTP na LAN sem TLS (ativo e passivo): trabalhando
- FTP na LAN com TLS (ativo e passivo): trabalhando
- FTP na WAN sem TLS (passivo): trabalhando
- FTP na WAN com TLS (ativo e passivo): não funciona
- Não é possível alterar a porta, pois não funciona na WAN
Aqui estão os registros de erros e as coisas que tentei:
Resultados do ftptest.net ( para FTP com tls ):
........
Command: PASV
Reply: 227 Entering Passive Mode (192,168,0,4,138,78)
Error: Server returned unroutable private IP address in PASV reply
Eu li em fóruns que você tem que especificar o endereço IP PASV com a opção -P, então eu fiz, e este é o resultado:
Reply: 211-Extensions supported:
.....................
Error: Carriage return without line feed received
E isso é para ambos sem e com tls! Então, sim, a opção -P não funciona!
Eu também devo salientar que as portas do modo passivo estão corretas (tiradas do comando PASV)
Log do Filezilla (com tls explícito):
Command: PASV
Response: 227 Entering Passive Mode (192,168,0,4,138,251)
Status: Server sent passive reply with unroutable address. Using
server address instead.
Command: MLSD
Error: The data connection could not be established: ECONNREFUSED -
Connection refused by server
Error: Connection closed by server
Error: Failed to retrieve directory listing
Com o comutador -P:
A mesma coisa, exceto não "Servidor enviou endereço não rotuável *"
Eu também tentei mexer com o firewall (iptables), permitindo tudo (assim, desabilitando o firewall) com estes comandos:
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
Eu também não posso alterar a porta padrão, porque se eu fizer isso, recebo um erro de conexão recusada.
E eu tenho outro sintoma estranho que só começou a aparecer hoje:
Eu só posso abrir a porta 21 a 21 (funciona) porque se eu abrir 20, eu recebo o servidor ssh.
Registre-se para isso:
Status: Connected, waiting for welcome message... Reply:
SSH-2.0-OpenSSH_6.0p1 Debian-4+deb7u2
Error: Reply does not contain valid response code
Eu também tentei porta de encaminhamento de porta 443, 989 a 990 (que foi para implícita tls) e tentei definir o Raspberry Pi como um host DMZ.
Nota: eu mudei do vsftpd porque ele era lento e não suportava o ftp seguro (o 3.x para Raspberry Pi precisa ser compilado com suporte a ftp seguro, mas recebi uma compilação de erro), e não uso proftpd porque não foi possível compilar com o suporte a tls
/ var / log / messages não fornece nenhuma informação útil (apenas diz que o usuário está logado toda vez com ou sem tls)
Espero que vocês possam me ajudar aqui, já que estou realmente perdido!