FTPS contra SFTP versus SCP

39

Eu gostaria de saber exatamente qual é a diferença entre os seguintes protocolos: FTPS, SFTP e SCP. Por exemplo, o Unix tem uma ferramenta scp, o FileZilla oferece FTP e SFTP, enquanto o JetBrains PhpStorm oferece protocolos SFTP e FTPS distintos.

Obrigado pelo esclarecimento.

    
por John Sonderson 19.11.2013 / 17:15

3 respostas

39

FTPS é FTP usando o para criptografia. Isso é diferente da família de protocolos SCP / SFTP que usam o SSH como seu túnel de transporte.

Você geralmente usará programas clientes como WinSCP para SCP e SFTP (SFTP é uma versão atualizada do SCP), enquanto você geralmente usam um navegador da Web ou um gerenciador de downloads da Web (como Filezilla ) para FTPS.

O FTPS é baseado na web, usando uma sintaxe e semântica de comandos de texto, enquanto o SFTP é baseado nos protocolos de shell seguros comum em sistemas * NIX.

Este artigo descreve bem as diferenças: link

Editar: para apresentar conforme solicitado:

FTP é um protocolo da Internet que remonta a 1971 (com várias atualizações ao longo dos anos). Ele é focado principalmente na distribuição de conteúdo e, no caso do FTPS, usa SSL para fornecer proteção contra interceptação e modificação ilícita. A autenticação FTP requer SSL, para proteger as credenciais em trânsito.

A maioria dos navegadores requer um plugin externo para utilizar o FTPS, em parte porque não é mais um protocolo comumente usado. Quando era popular, os navegadores da Web eram quase exclusivamente somente HTTP, e todos usavam um cliente FTP separado. No momento em que o FTP / FTPS fazia mais sentido, o HTTP não era capaz de lidar bem com downloads de arquivos. Não foi até que HTTP \ 1.1 fosse publicado em 1997 (e atualizado em 1999) que o HTTP pudesse manipular adequadamente fluxos binários.

É notável que HTTP e FTP usam semântica e sintaxe quase idênticas, e até usam os mesmos códigos de retorno conhecidos (200, 301, 403, 404, 500, etc). O FTP é um pouco mais antigo (o HTTP foi padronizado em 1989 depois que o TCP \ IP se tornou dominante). As semelhanças significativas entre os dois protocolos indicam uma linhagem compartilhada ou, pelo menos, um conjunto de convenções compartilhadas. Eu acho que é mais do que suficiente razão para chamar FTP "Web-Based", juntamente com outros protocolos de camada de aplicação como HTTP, SMTP e DNS (embora O DNS usa um layout binário, não um texto como HTTP / FTP / SMTP.

A família SSH é um conjunto de protocolos focados na administração de servidores e acesso remoto ao recurso de processamento de servidores, em vez de simples distribuição de conteúdo. Ele permite que usuários privilegiados de um sistema se conectem a um shell para realizar trabalhos no próprio servidor. O SCP e o SFTP foram desenvolvidos para suportar as muitas tarefas de gerenciamento de arquivos relacionadas a esse trabalho. Imagine que você precisa instalar uma atualização para sua instância do Apache em um servidor remoto. Se você usar ssh, use scp \ sftp para fazer upload do pacote de atualização e, em seguida, execute-o para instalar. Um fluxo de trabalho muito diferente do que você pode conseguir com o FTPS.

Espero que ajude a esclarecer.

    
por 19.11.2013 / 17:23
17

SCP é a ferramenta de transferência de arquivos do SSH. Requer o SSH no cliente e no servidor. Não é interativo.

O SFTP é outra ferramenta de transferência de arquivos que pode ser usada com o SSH (portanto, pode exigir novamente o SSH no cliente e no servidor) ou com qualquer outra ferramenta de conexão segura compatível, uma vez que se destina a ser independente do SSH. É interativo como o antigo FTP simples. Note que não é não FTP sobre SSH, mas um novo protocolo.

FTPS é um antigo FTP sobre SSL.

    
por 19.11.2013 / 17:28
1

O SCP, uma ferramenta ssh, permite operações de cópia / movimentação do lado do servidor, enquanto o sftp requer que o tráfego circule pelo cliente em tais tarefas. Por outro lado, as operações do sftp podem ser pausadas e retomadas.

    
por 06.04.2016 / 19:01