Página desactualizada Esta página contém uma versão anterior deste guia que pode estar desatualizada. Para a consultar a versão mais recente clique aqui.
O protocolo ftp é um protocolo inseguro, uma vez que transmite todos os dados (incluindo os nomes de utilizadores e respetivas senhas) em modo de texto, podendo ser facilmente intercetados e capturados por terceiros.
No entanto o servidor ProFTPD pode ser configurado de modo a exigir a autenticação dos utilizadores e a encriptação de dados, se for ativado o suporte TLS (Transport Layer Security).
Na configuração por omissão do ProFTPD (ver 4.2.1 ProFTPD), o suporte TLS (mod_tls.c) está desativado. A ativação é feita em duas fases: em primeiro ligar deverá ser configurado o módulo TLS no ficheiro de configuração /etc/proftpd/tls.conf e em seguida incluir esta configuração no ficheiro de configuração principal /etc/proftpd/proftpd.conf.
A configuração do módulo TLS é feita no ficheiro /etc/proftpd/tls.conf:
# [...] <IfModule mod_tls.c> TLSEngine on TLSLog /var/log/proftpd/tls.log TLSProtocol SSLv23 # [...] # Server SSL certificate. # [...] # [...] TLSRSACertificateFile /etc/ssl/certs/server.crt TLSRSACertificateKeyFile /etc/ssl/private/server.key.insecure # [...] # Are clients required to use FTP over TLS when talking to this server? # TLSRequired on # [...]
Os certificados usados em TLSRSACertificateFile
e TLSRSACertificateKeyFile
foram gerados anteriormente, em 3.5.1 Certificados Ssl Auto-Assinados. A opção TLSRequired on
obriga a que os clientes ftp usem o protocolo TLS, caso contrário não aceitará ligações. Se esta opção for desligada (TLSRequired off
), o servidor aceitará ligações seguras e não seguras.
Em seguida esta configuração deverá ser incluída no ficheiro de configuração principal /etc/proftpd/proftpd.conf:
# [...] # # This is used for FTPS connections # Include /etc/proftpd/tls.conf # [...]
Por último, reiniciar o serviço ftp para ativar as alterações:
root@server:~# /etc/init.d/proftpd restart
O servidor ftp com suporte TLS pode ser acedido através de um cliente ftp que suporte o protocolo TLS, como o Filezilla. Deverá ser indicado pretendemos uma ligação ao servidor ftp explicitamente sobre TLS:
Imediatamente após o estabelecimento da ligação é mostrado o certificado utilizado, sendo pedida a confirmação que é fiável:
Após aceitação do certificado, todas as comunicações cliente/servidor serão encriptadas e seguras.
Caso o servidor ftp suporte 4.2.3 Acesso ftp anónimo, este continua ativo, ou seja, continuam a ser permitidas sessões anónimas, ainda que a troca de dados se faça de modo encriptado. Para garantir que apenas utilizadores autorizados possam aceder ao servidor ftp o acesso anónimo deve ser desativado.