O vSFTPd (Very Secure FTP Daemon) é um dos servidores FTP mais populares no Linux, conhecido pela sua segurança e facilidade de uso. Para garantir que as transferências de arquivos sejam seguras, você pode configurar o vSFTPd com suporte a TLS (Transport Layer Security). Neste tutorial, você aprenderá a configurar um servidor FTP com vSFTPd e TLS no Ubuntu 22.04.
Requisitos
- Servidor rodando Ubuntu 22.04
- Acesso root ou usuário com privilégios sudo
Passo 1: Atualizar o Sistema
Como sempre, é uma boa prática garantir que o sistema esteja atualizado antes de começar a instalação. Execute os seguintes comandos:
sudo apt update && sudo apt upgrade -y
Passo 2: Instalar o vSFTPd
Agora, instale o vSFTPd no seu servidor Ubuntu:
sudo apt install vsftpd -y
Após a instalação, o serviço vSFTPd será iniciado automaticamente. Você pode verificar o status com o seguinte comando:
sudo systemctl status vsftpd
Passo 3: Configurar o vSFTPd
Agora, precisamos configurar o vSFTPd para habilitar a conexão FTP segura (TLS). Edite o arquivo de configuração principal do vSFTPd:
sudo nano /etc/vsftpd.conf
Faça as seguintes alterações ou adições para habilitar a segurança com TLS:
# Permitir logins anônimos
anonymous_enable=NO
# Ativar login de usuários locais
local_enable=YES
# Habilitar escrita para usuários locais
write_enable=YES
# Habilitar chroot para maior segurança
chroot_local_user=YES
# Habilitar TLS
ssl_enable=YES
rsa_cert_file=/etc/ssl/certs/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.pem
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
require_ssl_reuse=NO
ssl_ciphers=HIGH
Salve e feche o arquivo após as modificações.
Passo 4: Criar Certificado SSL para TLS
O vSFTPd necessita de um certificado SSL para habilitar a criptografia TLS. Vamos gerar um certificado autoassinado com o OpenSSL:
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/certs/vsftpd.pem
Durante o processo, você será solicitado a inserir algumas informações, como o nome da sua organização e nome do servidor. Essas informações são usadas no certificado SSL.
Passo 5: Reiniciar o vSFTPd
Agora que o certificado foi criado e configurado, reinicie o vSFTPd para que as mudanças entrem em vigor:
sudo systemctl restart vsftpd
Passo 6: Configurar o Firewall
Se o firewall estiver ativo no seu servidor, você precisará abrir as portas necessárias para FTP e TLS. Execute os seguintes comandos para permitir FTP e FTP seguro (TLS):
sudo ufw allow 20/tcp
sudo ufw allow 21/tcp
sudo ufw allow 990/tcp
sudo ufw allow 40000:50000/tcp
Recarregue o firewall para aplicar as mudanças:
sudo ufw reload
Passo 7: Criar um Usuário FTP
Agora, crie um usuário no sistema para se conectar via FTP:
sudo adduser nome_do_usuario
Siga as instruções para configurar a senha do usuário. Este usuário terá acesso ao servidor FTP com o vSFTPd.
Passo 8: Testar a Conexão FTP com TLS
Para testar a conexão, você pode usar um cliente FTP como o FileZilla ou conectar-se diretamente pelo terminal usando o seguinte comando:
ftp -p seu-servidor.com
Certifique-se de que está usando TLS nas configurações de FTP para garantir uma conexão segura.
Servidor VPS
Se precisar de um servidor VPS confiável para hospedar seu servidor FTP seguro com vSFTPd e TLS, veja as opções disponíveis aqui.