Apesar de ser um protocolo antigo, o FTP (e suas variantes seguras, como SFTP e FTPS) ainda é amplamente usado para transferência de arquivos entre servidores, backups automatizados e integrações legadas. No Linux, existem hoje opções muito mais modernas do que o clássico vsftpd, como o SFTPGo, além de ferramentas para montar servidores FTP remotos como se fossem discos locais.

SFTPGo: o FTP/SFTP server moderno

O SFTPGo é um servidor escrito em Go que suporta SFTP, FTP/FTPS e WebDAV em um único binário, com armazenamento em backends locais, S3, Google Cloud Storage e Azure Blob. Ele traz uma API REST completa e um painel web para gerenciar usuários, cotas e permissões, algo que o vsftpd tradicional não oferece nativamente.

# instalação via pacote .deb
wget https://github.com/drakkan/sftpgo/releases/latest/download/sftpgo_linux_amd64.deb
dpkg -i sftpgo_linux_amd64.deb
systemctl enable --now sftpgo
# painel web padrão
http://IP_SERVIDOR:8080/web/admin

A criação de usuários pode ser feita via painel ou via API, definindo diretório home, cota de disco e permissões granulares (upload, download, listagem, exclusão):

curl -X POST http://localhost:8080/api/v2/users \
  -H "Content-Type: application/json" \
  -d '{"username":"backup01","password":"SenhaForte123","home_dir":"/data/backup01","permissions":{"/":["*"]}}'

ProFTPD com autenticação LDAP

Em ambientes corporativos que já possuem diretório centralizado, o ProFTPD é uma escolha tradicional por sua flexibilidade de módulos, incluindo mod_ldap, que permite autenticar usuários FTP diretamente contra um servidor LDAP ou Active Directory, eliminando a necessidade de contas locais duplicadas:

apt install proftpd-mod-ldap
# em /etc/proftpd/ldap.conf
LDAPServer ldap://ldap.suaempresa.com.br
LDAPDNInfo "cn=admin,dc=suaempresa,dc=com,dc=br" "senha"
LDAPDoAuth on "ou=usuarios,dc=suaempresa,dc=com,dc=br"

Essa integração é especialmente útil quando o servidor FTP precisa refletir automaticamente desligamentos e trocas de senha feitas no diretório central, sem intervenção manual na configuração do FTP.

lftp: cliente avançado para automação

Enquanto o cliente ftp padrão é limitado, o lftp suporta paralelismo, retomada de transferência, espelhamento de diretórios e scripts, sendo a ferramenta preferida para rotinas de backup automatizadas via cron:

lftp -u usuario,senha sftp://servidor.remoto.com.br <

O parâmetro --reverse envia arquivos locais para o servidor remoto, e --delete remove no destino o que não existe mais na origem, mantendo os dois lados sincronizados — um padrão comum em scripts de backup incremental.

curlftpfs e montagem de FTP como disco local

Quando é necessário que aplicações legadas enxerguem um servidor FTP remoto como se fosse uma pasta local, o curlftpfs (baseado em FUSE) resolve o problema sem exigir reescrita de código:

apt install curlftpfs
mkdir /mnt/ftp_remoto
curlftpfs usuario:[email protected] /mnt/ftp_remoto -o allow_other

Para persistir a montagem no boot, uma entrada equivalente pode ser adicionada ao /etc/fstab, embora seja recomendável armazenar credenciais em um arquivo protegido em vez de expô-las diretamente na linha de comando.

Montagem via SSHFS e CIFS como alternativas

Quando o destino suporta SSH, o SSHFS costuma ser mais estável que o curlftpfs para montagens permanentes. Já em ambientes mistos com Windows, a montagem via mount.cifs continua sendo o caminho padrão para compartilhamentos SMB, complementando o cenário de integração de protocolos de arquivo em redes heterogêneas.

Backup via FTP com rsync e scripts agendados

Embora o FTP puro não seja tão eficiente quanto o rsync para sincronização incremental (por não usar delta-transfer), muitos ambientes legados ainda dependem de FTP como único protocolo disponível no destino. Nesses casos, uma estratégia comum é combinar o rsync localmente para consolidar os arquivos e o lftp ou curlftpfs para o envio final ao servidor remoto, agendando tudo via cron:

0 2 * * * /usr/bin/lftp -f /etc/scripts/backup_ftp.sh >> /var/log/backup_ftp.log 2>&1

Boas práticas de segurança

Sempre que possível, prefira SFTP (sobre SSH) ou FTPS (FTP sobre TLS) ao invés do FTP em texto claro, especialmente para tráfego que atravessa redes públicas. Restrinja usuários a diretórios chroot, desative contas anônimas e monitore tentativas de login malsucedidas com ferramentas como fail2ban, complementando a segurança nativa do SFTPGo ou do ProFTPD.

Recursos Adicionais

FTP SFTPGo ProFTP lftp Backup
← Voltar para o blog