Estou executando o Ubuntu 18.04 executando pure-ftpd 1.0.46 configurado da seguinte forma:
AltLog clf:/var/log/pure-ftpd/transfer.log
Daemonize yes
FSCharset UTF-8
PAMAuthentication no
TLS 1
VerboseLog yes
ChrootEveryone yes
DisplayDotFiles yes
MinUID 30
PassivePortRange 12000 13000
TLSCipherSuite HIGH:MEDIUM:+TLSv1:!SSLv2:+SSLv3
CustomerProof yes
ForcePassiveIP 185.73.xx.xx
NoAnonymous yes
PureDB /etc/pure-ftpd/pureftpd.pdb
UnixAuthentication no
O intervalo de portas passivas (TCP) está aberto no firewall e nosso ISP confirma que não há NATing ou outra configuração de rede upstream.
Usando (por exemplo) o cliente GNU ftp, o servidor aceita FTP simples sem problemas em testes de fora da nossa rede.
No entanto, temos recebido relatórios de alguns clientes incapazes de se conectar com vários erros, como tempos limite. Um teste em https://ftptest.net confirma o seguinte (no modo TLS explícito, mas também em outros modos:
Command: CLNT https://ftptest.net on behalf of 88.202.156.157
Reply: 530 You aren't logged in
Command: AUTH TLS
Reply: 234 AUTH TLS OK.
Status: Performing TLS handshake...
Status: TLS handshake successful, verifying certificate...
Status: Received 1 certificates from server.
Status: cert[0]: [cert info here]
Command: USER oddjob
Error: Could not read from socket: Error in the pull function.
Alguém sabe por onde começar a diagnosticar isso?
EDITAR
No modo implícito, o erro do ftptest se parece com isso:
Status: Connecting to 2001:ba8:0:xxxxx
Status: Connected, performing TLS handshake...
Error: TLS handshake failed: An unexpected TLS packet was received.
Aparentemente, há um problema com o pure-ftpd 1.0.46 e OpenSSL 1.1.1, mas o Ubuntu 18.04 não recebeu um pacote pure-ftpd atualizado. Se você baixar manualmente o pacote 1.0.47 e instalá-lo, isso deve resolver seu problema. Funcionou para mim, pelo menos.
https://bugs.launchpad.net/ubuntu/+source/pure-ftpd/+bug/1832998/
https://bugs.launchpad.net/ubuntu/+source/pure-ftpd/+bug/1832998/comments/8