FTPS проти SFTP проти SCP


44

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

Дякуємо за роз’яснення.


Відповіді:


46

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 не міг добре обробляти завантаження файлів. Лише в HTTP \ 1.1 не було опубліковано в 1997 році (і оновлено в 1999 році), що HTTP міг належним чином обробляти бінарні потоки.

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

Сімейство SSH - це набір протоколів, орієнтованих на адміністрування сервера та віддалений доступ до можливостей обробки серверів, а не простий розподіл вмісту. Це дозволяє пільговим користувачам системи підключитися до оболонки для виконання робіт на самому сервері. SCP і SFTP були розроблені для підтримки багатьох завдань управління файлами, пов'язаних з цією роботою. Уявіть, що вам потрібно встановити оновлення до свого примірника Apache на віддаленому сервері. ви вступите, використовуйте scp \ sftp для завантаження пакета оновлення та виконайте його для встановлення. Зовсім інший потік роботи, ніж ви можете досягти за допомогою FTPS.

Я сподіваюся, що це допоможе з’ясувати.


2
Перші два з половиною речення у вашій відповіді хороші, але ви можете, будь ласка, показати мені браузер, який підтримує FTPS (без плагіна)? Що ви маєте на увазі під твердженням " FTPS базується на веб-сторінках "? Що це спільного з Інтернетом ? Теоретично він може використовуватися як протокол "передачі", крім звичайних HTTP / HTTPS, але ви можете знайти багато протоколів, які могли б бути використані для цієї мети.
пабук

Я пропускаю тут згадку про FTPES ... FTPS використовує неявне шифрування - з самого початку, тоді як FTPES запускає шифрування трохи пізніше - зазвичай before the user credentials are sent over the connection, тут є приємне порівняння FTP / FTPS / FTPES: cerberusftp.com/support/help/ ftp-підтримка
jave.web

18

SCP - це інструмент передачі файлів із SSH. Він вимагає SSH як для клієнта, так і для сервера. Це не інтерактивне.

SFTP - це інший інструмент передачі файлів, який можна використовувати з SSH (тому він знову може вимагати SSH як на клієнті, так і на сервері) або з будь-яким іншим сумісним інструментом захищеного з'єднання, оскільки він повинен бути незалежним від SSH. Він інтерактивний, як старий звичайний FTP. Зауважте, що це не FTP через SSH, а новий протокол.

FTPS - це звичайний старий FTP через SSL.


1

SCP за допомогою інструмента ssh дозволяє виконувати операції копіювання / переміщення на стороні сервера, тоді як sftp вимагає циркуляції трафіку через клієнта в таких завданнях. З іншого боку операції sftp можна призупинити та відновити.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.