FTPS kontra SFTP kontra SCP

Odpowiedzi:

46

FTPS to FTP wykorzystujący do szyfrowania protokół SSL / TLS . Różni się to od rodziny protokołów SCP / SFTP, które wykorzystują SSH jako swój tunel transportowy.

Zazwyczaj będziesz używać programów klienckich, takich jak WinSCP dla SCP i SFTP (SFTP to ulepszona wersja SCP), podczas gdy zwykle używasz przeglądarki internetowej lub internetowego menedżera pobierania (takiego jak Filezilla ) dla FTPS.

FTPS jest oparty na sieci, przy użyciu składni komend tekstowych i semantyki, natomiast SFTP opiera się na bezpiecznych protokołach powłoki wspólnych w systemach * NIX.

W tym artykule ładnie opisano różnice: http://www.codeguru.com/csharp/.net/net_general/internet/article.php/c14329/FTPS-vs-SFTP-What-to-Choose.htm


Edycja: Aby wyjaśnić zgodnie z żądaniem:

FTP to protokół internetowy, który sięga 1971 roku (z wieloma aktualizacjami na przestrzeni lat). Koncentruje się przede wszystkim na dystrybucji treści, aw przypadku FTPS korzysta z protokołu SSL w celu ochrony przed podsłuchiwaniem i nielegalną modyfikacją. Uwierzytelnianie FTP wymaga protokołu SSL, aby chronić poświadczenia w transporcie.

Większość przeglądarek wymaga zewnętrznej wtyczki do korzystania z FTPS, po części dlatego, że nie jest to już powszechnie używany protokół. Kiedy było popularne, przeglądarki internetowe były prawie wyłącznie HTTP, a wszyscy korzystali z osobnego klienta FTP. W chwili, gdy FTP / FTPS miało jak najbardziej sens, HTTP nie był w stanie dobrze obsługiwać pobierania plików. Dopiero HTTP \ 1.1 został opublikowany w 1997 (i zaktualizowany w 1999), HTTP mógł poprawnie obsługiwać strumienie binarne.

Warto zauważyć, że HTTP i FTP używają prawie identycznej semantyki i składni, a nawet używają tych samych dobrze znanych kodów powrotu (200, 301, 403, 404, 500 itd.). FTP jest nieco starszy (HTTP został znormalizowany w 1989 r. Po tym, jak TCP \ IP stał się dominujący). Znaczące podobieństwa między tymi dwoma protokołami wskazują na wspólną linię lub przynajmniej zestaw wspólnych konwencji. Myślę, że to więcej niż wystarczający powód, aby nazwać FTP „internetowym”, obok innych podstawowych protokołów warstwy aplikacji, takich jak HTTP, SMTP i DNS (chociaż DNS używa układu binarnego, a nie Tekstowego jak HTTP / FTP / SMTP).

Rodzina SSH to zestaw protokołów koncentrujących się na administrowaniu serwerami i zdalnym dostępie do możliwości przetwarzania serwerów, a nie na prostej dystrybucji treści. Pozwala uprzywilejowanym użytkownikom systemu łączyć się z powłoką w celu wykonywania pracy na samym serwerze. SCP i SFTP zostały opracowane w celu obsługi wielu zadań związanych z zarządzaniem plikami związanych z tą pracą. Wyobraź sobie, że musisz zainstalować aktualizację instancji Apache na zdalnym serwerze. ssh in, użyj scp \ sftp, aby załadować pakiet aktualizacji, a następnie uruchom go, aby zainstalować. Zupełnie inny przepływ pracy niż można osiągnąć dzięki FTPS.

Mam nadzieję, że to pomoże wyjaśnić.

Frank Thomas
źródło
2
Pierwsze dwa i pół zdania w twojej odpowiedzi są dobre, ale czy możesz mi pokazać przeglądarkę obsługującą FTPS (bez wtyczki)? Co rozumiesz przez stwierdzenie „ FTPS jest oparty na sieci ”? Co to ma wspólnego z siecią ? Teoretycznie może być używany jako protokół „transferu” oprócz zwykłego protokołu HTTP / HTTPS, ale można znaleźć wiele protokołów, które można by wykorzystać w tym celu.
pabouk
Brakuje tutaj wzmianki o FTPES ... FTPS używa szyfrowania niejawnego - od samego początku, podczas gdy FTPES rozpoczyna szyfrowanie nieco później - zwykle before the user credentials are sent over the connectiontutaj jest przyjemne porównanie FTP / FTPS / FTPES: cerberusftp.com/support/help/ ftp-support
jave.web
18

SCP to narzędzie do przesyłania plików z SSH. Wymaga SSH zarówno na kliencie, jak i serwerze. To nie jest interaktywne.

SFTP to kolejne narzędzie do przesyłania plików, które może być używane z SSH (więc znowu może wymagać SSH zarówno na kliencie, jak i serwerze) lub z dowolnym innym kompatybilnym bezpiecznym narzędziem do połączenia, ponieważ ma być niezależne od SSH. Jest interaktywny jak stary zwykły FTP. Pamiętaj, że nie jest to FTP przez SSH, ale nowy protokół.

FTPS to zwykły stary FTP przez SSL.

ZAPRASZAM
źródło
1

SCP korzystający z narzędzia ssh pozwala na operacje kopiowania / przenoszenia po stronie serwera, podczas gdy sftp wymaga, aby ruch był przesyłany przez klienta w takich zadaniach. Z drugiej strony operacje sftp mogłyby zostać wstrzymane i wznowione.

imic
źródło