Servidor FTP · 4 min read · Sep 23, 2025
Como Instalar o Servidor FTP vsftpd e Protegê-lo com TLS no Debian 11

O Protocolo de Transferência de Arquivos ou FTP é um protocolo de rede muito antigo e um dos mais conhecidos. Não é seguro em comparação com SFTP ou SCP nos dias de hoje, mas ainda é a primeira escolha de muitos usuários para transferir arquivos entre um servidor e um cliente. O FTP é conhecido como inseguro porque transfere dados junto com credenciais de usuário sem nenhum tipo de criptografia.
Temos uma ampla gama de servidores FTP de código aberto disponíveis atualmente, como FTPD, VSFTPD, PROFTPD e pureftpd. Entre todos eles, o VSFTPD é um protocolo muito seguro, rápido e amplamente utilizado para transferir arquivos entre dois sistemas.
O VSFTPD também é conhecido como “Very Secure File Transfer Protocol Daemon” com suporte a SSL, IPv6, FTPS explícito e implícito.
Neste guia, mostraremos como instalar o servidor FTP vsftpd no Debian 11.
Pré-requisitos
Um servidor executando Debian 11. Um usuário não-root com privilégios sudo.
1. Instalar Vsftpd
Antes de começar a instalação, atualize seu servidor Debian 11 executando o seguinte comando no terminal:
sudo apt update -y
sudo apt upgrade -yO Debian tem um repositório muito grande e o pacote vsftpd está disponível no repositório oficial, então você pode instalar facilmente o vsftpd executando o seguinte comando:
sudo apt install vsftpd -yApós a instalação do pacote, inicie o serviço Vsftpd, verifique o status do serviço e habilite o serviço na inicialização.
sudo systemctl start vsftpd
sudo systemctl status vsftpd
systemctl enable vsftpd.service2. Criar um usuário FTP e configurar para login FTP
Agora, crie uma nova conta de usuário para FTP, usando este usuário faremos login no servidor FTP mais tarde.
sudo adduser sohanOs usuários adicionados no arquivo vsftpd.userlist têm permissão para acessar o servidor FTP.
Em seguida, precisamos adicionar o usuário sohan na lista de usuários do vsftpd. Abra o arquivo e adicione um usuário executando o seguinte comando:
echo "sohan" | sudo tee -a /etc/vsftpd.userlist3. Criar diretório do usuário FTP
Em seguida, precisamos criar um diretório FTP para nosso usuário FTP e definir a propriedade com o seguinte comando:
sudo mkdir -p /home/sohan/ftp_directory
sudo chown nobody:nogroup /home/sohan/ftp_directory
sudo chmod a-w /home/sohan/ftp_directoryAgora, crie um diretório onde os arquivos podem ser enviados e dê a propriedade ao usuário sohan executando o comando:
sudo mkdir -p /home/sohan/ftp_directory/ftp_datasudo chown sohan:sohan /home/sohan/ftp_directory/ftp_datacd /home/sohan/ftp_directory/chmod -R 777 ftp_data4. Configurar Vsftpd
Em seguida, você precisa alterar alguns parâmetros padrão para configurar um servidor FTP.
Primeiro, crie uma cópia de backup do arquivo de configuração original do vsftpd.
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bakNo servidor FTP, os usuários anônimos têm acesso concedido por padrão. Para tornar o servidor FTP mais seguro, desabilitaremos o login de usuários anônimos e concederemos acesso apenas ao usuário específico.
Em seguida, abra o arquivo vsftpd.conf e faça as alterações conforme abaixo:
vim /etc/vsftpd.confanonymous_enable=NO
local_enable=YESExistem algumas outras alterações que precisamos fazer na configuração. Primeiro, abra vsftpd.conf
sudo vim /etc/vsftpd.confEm seguida, certifique-se de que o vsftpd.conf contenha as seguintes linhas:
listen=NO
listen_ipv6=YES
anonymous_enable=NO
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
user_sub_token=$USER
local_root=/home/$USER/ftp_directory
userlist_enable=YES
userlist_file=/etc/vsftpd.userlist
userlist_deny=NOSalve e feche o arquivo. Você pode alterar a configuração acima de acordo com suas necessidades.
Agora reinicie o serviço vsftpd e verifique o status do serviço executando os seguintes comandos:
sudo systemctl restart vsftpdEm seguida, certifique-se de que o serviço vsftpd está em seu status de execução executando o seguinte comando no terminal:
sudo systemctl status vsftpd5. Permitir vsftpd no firewall e acessar o servidor vsftpd
Em seguida, se você estiver usando um firewall, permita a porta 21 e a porta 22 executando o seguinte comando:
sudo ufw allow 21/tcp
sudo ufw allow 22/tcpEm seguida, recarregue o firewall para aplicar as alterações:
sudo ufw reloadEm seguida, abra qualquer cliente FTP como FileZilla e insira os detalhes do seu servidor, como Protocolo, Host, Usuário:

Agora, clique em conectar, em seguida, insira sua senha:

Em seguida, ele mostrará detalhes como abaixo, clique em OK.

Neste ponto, você está conectado ao servidor FTP e pode enviar e baixar arquivos/pastas.

6. Proteger Vsftpd usando SSL/TLS
Vamos supor que você queira transferir dados criptografados via FTP, para fazer isso você precisa criar um certificado SSL e habilitar a conexão SSL/TLS.
Você pode criar um certificado usando OpenSSL com o seguinte comando:
sudo mkdir /etc/cert
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/cert/vsftpd.pem -out /etc/cert/vsftpd.pemAgora, você precisará editar o arquivo vsftpd.conf e fazer algumas alterações:
sudo vim /etc/vsftpd.confAdicione as seguintes linhas no final:
rsa_cert_file=/etc/cert/vsftpd.pem
rsa_private_key_file=/etc/cert/vsftpd.pem
ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
require_ssl_reuse=NO
ssl_ciphers=HIGHSalve e saia do arquivo, em seguida, reinicie o Vsftpd usando o seguinte comando:
sudo systemctl restart vsftpd7. Acessar FTP sobre SSL/TLS
Abra o cliente FTP FileZilla e vá para Arquivo>Gerenciador de Sites. Aqui, clique em adicionar Novo site e insira o nome do host/site, adicione o endereço IP, defina o protocolo a ser usado, Criptografia: Exigir FTP explícito sobre TLS e tipo de login. Em seguida, clique no botão Conectar. Você deve ver a seguinte imagem:

Em seguida, insira sua senha:

Em seguida, você verá o certificado SSL, verifique os detalhes do certificado e clique em OK.

Por fim, você verá o conteúdo do seu servidor FTP e poderá transferir seus dados de forma segura de um sistema para outro.

Conclusão
No guia acima, instalamos o servidor VSFTPD no Debian 11. Também aprendemos como conectar via conexão não criptografada e via conexão criptografada usando um certificado SSL.
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.