Tanto o SFTP como o FTPS cifram as transferências FTP. Ambos têm um "S" no nome. São frequentemente confundidos — e essa confusão tem consequências, porque são tecnologias completamente diferentes que funcionam de formas completamente distintas.

Escolher o protocolo errado ao configurar uma ligação resulta numa falha de ligação. Escolher o certo exige perceber o que cada um é de facto. Eis a explicação clara.

FTP: a base

Antes de chegar às variantes seguras, ajuda perceber o FTP simples. O File Transfer Protocol foi criado no início dos anos 70 — muito antes de a internet ter qualquer semelhança com o que é hoje. Não tem qualquer cifração. As credenciais (utilizador e password) viajam em texto simples pela rede. O mesmo acontece com o conteúdo dos ficheiros.

O FTP ainda é amplamente usado em redes internas onde o tráfego nunca sai de um ambiente de confiança, em alojamentos antigos ou em situações controladas onde a cifração não é uma preocupação. É simples, funciona e é suportado por praticamente todos os servidores. Mas pela internet pública, enviar credenciais em texto simples não é algo que queira fazer.

É aqui que entram as duas variantes seguras — e onde a confusão começa.

SFTP (SSH File Transfer Protocol)

Apesar do nome, o SFTP não é FTP com segurança adicionada. É um protocolo completamente diferente, desenvolvido de forma independente como parte da família de protocolos SSH (Secure Shell).

O SFTP corre sobre SSH na porta 22. Tudo — autenticação, comandos, conteúdo dos ficheiros — é cifrado pela camada SSH. Um cliente SFTP e um cliente FTP normal falam protocolos fundamentalmente diferentes ao nível da rede, mesmo que o resultado (transferir ficheiros) pareça igual para o utilizador.

Características principais do SFTP:

Na prática: quem tem acesso SSH a um servidor Linux tem SFTP. Na maioria dos casos, não é necessária qualquer configuração adicional no servidor.

FTPS (FTP sobre TLS)

O FTPS é FTP real com cifração TLS por cima. Uma abordagem diferente: pegar no protocolo FTP existente e envolvê-lo em TLS, a mesma camada de cifração usada pelo HTTPS.

Existem dois modos de FTPS:

FTPS Explícito (FTPES)

O cliente liga ao servidor na porta 21 (a porta FTP padrão) e envia imediatamente o comando AUTH TLS para atualizar a ligação para cifrada. O servidor tem de suportar este comando. Este modo chama-se "explícito" porque o cliente pede explicitamente a atualização TLS.

FTPS Implícito

O cliente liga à porta 990 e o handshake TLS acontece imediatamente — antes de qualquer comunicação FTP. Não há fase não cifrada. Este modo é menos comum mas ainda usado em alguns servidores.

Características principais do FTPS:

Comparação lado a lado

Característica FTP SFTP FTPS
Baseado emFTPSSHFTP + TLS
Porta padrão212221 (explícito) / 990 (implícito)
CifraçãoNenhumaSempre (SSH)Sim (TLS)
Autenticação por chaveNãoSimNão
Certificado necessárioNãoNãoSim
Firewall-friendlyComplexoSimples (1 porta)Complexo
DisponibilidadeUniversalQualquer servidor SSHRequer configuração

Qual deve usar?

Use SFTP se: controla o servidor (ou é um servidor Linux/Unix com SSH), a segurança é prioritária e quer uma configuração de firewall simples. O SFTP é o padrão moderno. Se não houver razão particular para outra coisa, SFTP é a escolha certa.

Use FTPS se: o seu fornecedor de alojamento ou o servidor de um cliente o exige, ou está a adicionar cifração a uma configuração FTP existente sem poder alterar a infraestrutura. Muitos ambientes empresariais que operam servidores FTP há anos escolhem o FTPS como caminho de atualização porque exige menos mudanças na configuração existente.

Use FTP simples se: está numa rede interna de confiança onde a cifração não é necessária, ou a trabalhar com um sistema antigo que não suporta nenhuma das variantes seguras. Evite-o completamente para qualquer coisa pela internet pública.

FTPSuite suporta os três

FTPull (para descarregamentos automáticos) e FTPush (para envios automáticos) suportam FTP, SFTP e FTPS de forma nativa. Selecionar o protocolo nas definições da ligação é um clique — a aplicação trata automaticamente das diferenças técnicas. Insere o host, porta, credenciais e protocolo; o resto fica a cargo da app.

Se não tiver a certeza de qual o protocolo que o seu servidor usa, consulte o nosso guia: FTP, SFTP ou FTPS: qual é o protocolo do seu servidor?