Servidor FTP · 6 min read · Dec 22, 2025

Como instalar e configurar ProFTPD no Debian Wheezy e Ubuntu 14.04

Este documento descreve como instalar e configurar o ProFTPD em um servidor Debian Wheezy, também funcionará no Ubuntu 14.04. O ProFTPD é um daemon FTP para sistemas operacionais unix e semelhantes ao unix. O ProFTPD é desenvolvido, lançado e distribuído sob a Licença Pública GNU (GPL), que basicamente o estabelece como software livre, significando que pode ser vendido, licenciado e manipulado de qualquer forma desejada, desde que o código-fonte completo e completo acompanhe qualquer pacote ProFTPD ou esteja disponível em qualquer um dos sites que distribuem binários pré-compilados. O software pode ser modificado por qualquer pessoa a qualquer momento, desde que todas as obras derivadas também sejam licenciadas sob a Licença Pública GNU.

Este guia funcionará para servidores Ubuntu e Debian.

1 Nota Preliminar

Este tutorial é baseado em um servidor Debian 7.6, então você deve configurar uma instalação básica do servidor Debian 7.6 antes de continuar com este tutorial. O sistema deve ter um endereço IP estático. Eu uso 192.168.0.100 como meu endereço IP neste tutorial e server1.example.com como o nome do host.

2 Instalar ProFTPD

2.1 Instalação:

Primeiro, instalaremos o ProFTPD e o OpenSSL da seguinte forma:

apt-get install proftpd openssl

Ele fará algumas perguntas sobre o ProFTPD, selecione standalone e pressione Ok.

Podemos verificar a versão do ProFTPD da seguinte forma:

proftpd -v

root@server1:~# proftpd -v

ProFTPD Version 1.3.4a

root@server1:~#

2.2 Criando Usuários ProFTPD

Para isso, criarei um grupo ftpgroup e o usuário srijan para o ProFTPD. Vou restringir o usuário srijan com o diretório home como /ftpshare

addgroup ftpgroup
adduser srijan -shell /bin/false -home /ftpshare
root@server1:~# adduser srijan -shell /bin/false -home /ftpshare  
 Adicionando usuário `srijan' ...  
 Adicionando novo grupo `srijan' (1002) ...  
 Adicionando novo usuário `srijan' (1001) com grupo `srijan' ...  
 Criando diretório home `/ftpshare' ...  
 Copiando arquivos de `/etc/skel' ...  
 Digite nova senha UNIX: <--ftppassword  
 Redigite nova senha UNIX: <--ftppassword  
 passwd: senha atualizada com sucesso  
 Alterando as informações do usuário para srijan  
 Digite o novo valor ou pressione ENTER para o padrão<--ENTER  
     Nome Completo []: <--ENTER  
     Número do Quarto []: <--ENTER  
     Telefone do Trabalho []: <--ENTER  
     Telefone Residencial []: <--ENTER  
     Outro []: <--ENTER  
 As informações estão corretas? [Y/n] <--Y  
 root@server1:~#

Agora adicionaremos o usuário srijan ao ftpgroup da seguinte forma:

adduser srijan ftpgroup

Em seguida, precisamos proteger o diretório contra remoção e renomeação de seu conteúdo por qualquer usuário, então mudaremos as permissões do diretório da seguinte forma:

chmod -R 1777 /ftpshare/

Em seguida, precisamos configurar o ProFTPD da seguinte forma:

nano /etc/proftpd/proftpd.conf

Faça as alterações como mostrado

[...]  
UseIPv6 off  
[...]  
  
    RootLogin   off
    RequireValidShell off


DefaultRoot  ~


    DenyGroup !ftpgroup

Não estou usando IPV6, então desativei acima, estou desabilitando o login do usuário root com o ProFTPD com RootLogon off. DefaultRoot é adicionado para restringir os usuários ao acesso apenas aos seus diretórios home. DenyGroup permitirá que apenas os usuários do ftpgroup acessem o servidor ftp, todas as outras conexões serão rejeitadas.

Reinicie o serviço como:

service proftpd restart

Às vezes, você receberá um erro ao reiniciar o serviço, como

root@server1:~# service proftpd restart

[ ok ] Parando o servidor ftp: proftpd.

[….] Iniciando o servidor ftp: proftpdserver1 proftpd[6052]: mod_tls_memcache/0.1: aviso: não foi possível registrar o cache de sessão SSL ‘memcache’: suporte a Memcache não habilitado

. ok

root@server1:~#

Podemos contornar esse erro editando o arquivo /etc/proftpd/modules.conf e comentando a linha da seguinte forma:

nano /etc/proftpd/modules.conf
[...]  
#LoadModule mod_tls_memcache.c  
[...]  

Isso resolverá o erro.

Agora podemos fazer login com o usuário srijan e senha em ftp://192.168.0.100

3 Habilitando TLS no ProFTPD

Para habilitar TLS no ProFTPD, abra /etc/proftpd/proftpd.conf

nano /etc/proftpd/proftpd.conf

Faça as alterações da seguinte forma e descomente a linha:

[...]  
Include /etc/proftpd/tls.conf  
[...]  

Agora faremos o backup do arquivo original e depois editaremos o arquivo como mostrado abaixo:

cp /etc/proftpd/tls.conf /etc/proftpd/tls.conf_orig  
 cat /dev/null > /etc/proftpd/tls.conf  
 nano /etc/proftpd/tls.conf  
 

Dê as entradas como mostrado


TLSEngine                  on
TLSLog                     /var/log/proftpd/tls.log
TLSProtocol                SSLv23
TLSOptions                 NoCertRequest
TLSRSACertificateFile      /etc/proftpd/ssl/proftpd.cert.pem
TLSRSACertificateKeyFile   /etc/proftpd/ssl/proftpd.key.pem
TLSVerifyClient            off
TLSRequired                on

Para usar TLS, devemos criar um certificado SSL. Eu o criarei em /etc/proftpd/ssl, portanto, primeiro criarei esse diretório:

mkdir /etc/proftpd/ssl  
 

Depois, podemos gerar o certificado SSL da seguinte forma:

openssl req -new -x509 -days 365 -nodes -out /etc/proftpd/ssl/proftpd.cert.pem -keyout /etc/proftpd/ssl/proftpd.key.pem

Nome do País (código de 2 letras) [AU]: <– Digite o Nome do seu País (por exemplo, “DE”).
Nome do Estado ou Província (nome completo) [Some-State]: <– Digite o Nome do seu Estado ou Província.
Nome da Localidade (por exemplo, cidade) []: <– Digite sua Cidade.
Nome da Organização (por exemplo, empresa) [Internet Widgits Pty Ltd]: <– Digite o Nome da sua Organização (por exemplo, o nome da sua empresa).
Nome da Unidade Organizacional (por exemplo, seção) []: <– Digite o Nome da sua Unidade Organizacional (por exemplo, “Departamento de TI”).
Nome Comum (por exemplo, SEU nome) []: <– Digite o Nome de Domínio Totalmente Qualificado do sistema (por exemplo, “server1.example.com”).
Endereço de E-mail []: <– Digite seu Endereço de E-mail.

Agora, por motivos de segurança, farei com que os certificados sejam apenas legíveis da seguinte forma:

chmod 0440 /etc/proftpd/ssl/proftpd.key.pem

Finalmente, reinicie o serviço ProFTPD da seguinte forma:

service proftpd restart

Podemos conectar ao servidor ProFTPD com o software FileZilla. Você deve ter o FileZilla instalado no cliente para se conectar ao servidor. Abra o FileZilla e forneça os detalhes da seguinte forma:

Os detalhes serão

Host = 192.168.0.100
Protocolo = FTP
Usuário = srijan
Porta = pode ficar em branco se você não a personalizou para outra porta que não seja 21
Senha = ftppassword (criada acima)

Nota: Como criptografamos nossa conexão na etapa acima, usaremos a Criptografia com Requerer FTP explícito sobre TLS

Se você não configurou TLS, pode usar Usar FTP Simples

Ele pedirá para confiar nos certificados, pressione OK

Ele estará conectado ao diretório compartilhado FTP.

4 Acesso FTP anônimo no ProFTPD

Podemos criar uma conta FTP anônima no ProFTPD, basta adicionar essas entradas no arquivo de configuração do ProFTPD:

nano /etc/proftpd/proftpd.conf

E adicione essas entradas no final do arquivo,

[...]  
###Compartilhamento anônimo#####

   Usuário                         ftp
   Grupo                        nogroup


    AllowAll


   # Queremos que os clientes possam fazer login com "anônimo" e "ftp"
   UserAlias                    anonymous ftp

   # Alterações cosméticas, todos os arquivos pertencem ao usuário ftp
   DirFakeUser  on ftp
   DirFakeGroup on ftp

   RequireValidShell            off

   # Limitar o número máximo de logins anônimos
   MaxClients                   10


   # Limitar a gravação em todo o chroot anônimo
   
     
       DenyAll
     
   

~              

Agora conecte-se através do FileZilla da seguinte forma:

Nota: Como criptografamos nossa conexão na etapa acima, usaremos a Criptografia com Requerer FTP explícito sobre TLS

Se você não configurou TLS, pode usar Usar FTP Simples

Pressione Conectar:

Ele pedirá para confiar nos certificados, pressione OK

Conectamo-nos com sucesso ao servidor com o usuário anônimo.

Parabéns! Agora configuramos com sucesso o ambiente do servidor ProFTPD no Debian Wheezy :)

5 Links

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.