40

Я хотел бы точно знать, в чем разница между следующими протоколами: FTPS, SFTP и SCP. Например, Unix имеет инструмент scp, FileZilla предлагает FTP и SFTP, тогда как JetBrains PhpStorm предлагает различные протоколы SFTP и FTPS.

Спасибо за разъяснения.

3 ответа3

41

FTPS - это FTP, использующий протокол SSL/TLS для шифрования. Это отличается от семейства протоколов SCP/SFTP, которые используют SSH в качестве своего транспортного туннеля.

Обычно вы будете использовать клиентские программы, такие как WinSCP для SCP и SFTP (SFTP является обновленной версией SCP), тогда как вы обычно будете использовать веб-браузер или веб-менеджер загрузок (например, Filezilla) для FTPS.

FTPS - это веб-интерфейс, использующий синтаксис и семантику текстовых команд, тогда как SFTP основан на протоколах защищенной оболочки, распространенных в системах * NIX.

Эта статья хорошо описывает различия: http://www.codeguru.com/csharp/.net/net_general/internet/article.php/c14329/FTPS-vs-SFTP-What-to-Choose.htm


Изменить: изложить в соответствии с просьбой:

FTP - это интернет-протокол, который восходит к 1971 году (с некоторыми обновлениями за последние годы). Он в первую очередь ориентирован на распространение контента, а в случае FTPS использует SSL для обеспечения защиты от прослушивания и незаконного изменения. Для аутентификации FTP требуется SSL, чтобы защитить учетные данные при передаче.

Большинству браузеров требуется внешний плагин для использования FTPS, отчасти потому, что он больше не является широко используемым протоколом. Когда это было популярно, веб-браузеры были почти исключительно HTTP, и каждый использовал отдельный FTP-клиент. В то время, когда FTP/FTPS имели наибольшее значение, HTTP не был способен хорошо обрабатывать загрузку файлов. Только в 1997 году был опубликован HTTP\1.1 (и обновлен в 1999 году), чтобы HTTP мог правильно обрабатывать двоичные потоки.

Примечательно, что HTTP и FTP используют практически идентичную семантику и синтаксис и даже используют одни и те же хорошо известные коды возврата (200, 301, 403, 404, 500 и т.д.). FTP несколько старше (HTTP был стандартизирован в 1989 году после того, как TCP\IP стал доминирующим). Существенные сходства между двумя протоколами указывают на общую линию или, по крайней мере, на набор общих соглашений. Я думаю, что это более чем достаточная причина для того, чтобы называть FTP «веб-ориентированным» наряду с другими основными протоколами прикладного уровня, такими как HTTP, SMTP и DNS (хотя DNS использует двоичную разметку, а не Text, как HTTP/FTP/SMTP).

Семейство SSH - это набор протоколов, ориентированных на администрирование серверов и удаленный доступ к возможностям обработки серверов, а не на простое распространение контента. Это позволяет привилегированным пользователям системы подключаться к оболочке для выполнения работы на самом сервере. SCP и SFTP были разработаны для поддержки многих задач управления файлами, связанных с этой работой. Представьте, что вам нужно установить обновление для вашего экземпляра Apache на удаленном сервере. Вы входите в ssh, используете scp\sftp для загрузки пакета обновления, а затем выполняете его для установки. Совершенно иной рабочий процесс, чем вы можете достичь с помощью FTPS.

Я надеюсь, что это помогает уточнить.

17

SCP - это инструмент передачи файлов из SSH. Требуется SSH как на клиенте, так и на сервере. Это не интерактивно.

SFTP - это еще один инструмент для передачи файлов, который можно использовать с SSH (поэтому для него может потребоваться SSH как на клиенте, так и на сервере) или с любым другим совместимым средством безопасного соединения, поскольку предполагается, что он не зависит от SSH. Он интерактивен, как старый простой FTP. Обратите внимание, что это не FTP через SSH, а новый протокол.

FTPS - это обычный старый FTP через SSL.

1

SCP, будучи инструментом ssh, позволяет выполнять операции копирования / перемещения на стороне сервера, в то время как sftp требует, чтобы трафик циркулировал через клиента в таких задачах. С другой стороны, операции sftp могут быть приостановлены и возобновлены.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .