Central de Ajuda

Guia da Central de Ajuda

Como configurar servidor SFTP no Linux com OpenSSH e quando usar FTPS ou FTP

Para transferência de arquivos em um VPS, prefira SFTP: ele funciona sobre SSH, cifra credenciais e conteúdo e normalmente usa uma única porta. SFTP não é “FTP com SSL” e não exige instalar um servidor FTP separado quando OpenSSH já atende ao caso. FTP puro transmite dados sem proteção e deve ser evitado na internet.

Comparação

ProtocoloCriptografiaPortasUso
SFTPSSHuma porta do SSHopção recomendada para administração e automação
FTPS explícitoTLScontrole + faixa passivacompatibilidade com sistemas que exigem FTP
FTPnenhumacontrole + dadossomente rede isolada e caso legado excepcional

Pré-requisitos para SFTP

  • OpenSSH Server atualizado;
  • usuário individual sem privilégios desnecessários;
  • autenticação por chave quando possível;
  • firewall e console de emergência;
  • diretório e quota planejados;
  • backup e logs.

Uso simples com usuário Linux

Se o usuário pode acessar seu próprio diretório, normalmente basta OpenSSH ativo:

sftp usuario@hostname
put arquivo.zip
get relatorio.pdf
ls
pwd

No cliente gráfico, selecione explicitamente SFTP, informe hostname, porta SSH, usuário e chave/senha. Não selecione FTP usando a porta 22.

Restringir a somente SFTP

Para impedir shell, uma configuração pode usar o subsistema interno e regras Match. Revise a sintaxe da sua distribuição e não duplique uma linha Subsystem já existente:

Subsystem sftp internal-sftp

Match Group sftp_only
    ChrootDirectory %h
    ForceCommand internal-sftp
    AllowTcpForwarding no
    X11Forwarding no

Com ChrootDirectory %h, a raiz do chroot e seus componentes precisam pertencer a root e não ser graváveis pelo usuário. Crie uma subpasta gravável:

sudo chown root:root /home/cliente
sudo chmod 755 /home/cliente
sudo mkdir -p /home/cliente/uploads
sudo chown cliente:sftp_only /home/cliente/uploads

Validar sem perder acesso

  1. Mantenha uma sessão administrativa aberta.
  2. Execute sudo sshd -t.
  3. Recarregue o serviço SSH.
  4. Teste SFTP em outra sessão.
  5. Confirme que o usuário não abre shell e só grava na pasta prevista.
  6. Teste após reinício planejado.

Chaves e automação

Use uma chave por pessoa ou integração. Em authorized_keys, restrições como comando, origem e desativação de forwarding podem reduzir impacto, desde que testadas. Rotacione chaves e remova acessos de ex-colaboradores. Nunca incorpore chave privada em script público.

Quando FTPS é necessário

Alguns ERPs e equipamentos suportam apenas FTP/FTPS. Nesse caso, use daemon mantido, TLS obrigatório, certificado válido, modo passivo e uma faixa pequena liberada no firewall/NAT. Isole usuários, bloqueie login anônimo e limite escrita. Não confunda FTPS implícito e explícito; o cliente e servidor precisam usar o mesmo modo.

cPanel

Em hospedagem cPanel, SFTP normalmente depende de acesso SSH habilitado para a conta; contas FTP comuns usam FTP/FTPS e não viram usuários SSH. Use o hostname e configuração mostrados pelo painel. Em revenda, a disponibilidade depende do provedor e do pacote.

Diagnóstico

ErroVerifique
Connection refusedserviço, porta e firewall
Permission deniedusuário, chave, senha, shell e logs
bad ownership or modesproprietário/permissão de toda a cadeia do chroot
Conecta, mas não gravasubpasta gravável, quota e filesystem
FTPS lista vazia/travafaixa passiva, NAT e firewall

Referência: OpenSSH e internal-sftp. Para clientes, veja FileZilla por FTP, FTPS ou SFTP e permissões Linux.

Recursos relacionados

Continue com materiais e serviços relacionados ao tema deste guia.

Este guia resolveu sua dúvida? Seu retorno ajuda a priorizar as próximas revisões.
Atendimento técnico

Não encontrou o resultado esperado?

Abra um chamado e envie a mensagem de erro completa, o domínio ou serviço afetado, o horário do teste e capturas de tela sem senhas.