FTPS与SFTP与SCP


Answers:


46

FTPS是使用SSL / TLS协议进行加密的FTP。这不同于使用SSH作为其传输隧道的SCP / SFTP协议系列。

对于SCPSFTP,您通常使用WinSCP等客户端程序(SFTP是SCP的升级版本),而对于FTPS,通常使用Web浏览器或Web下载管理器(如Filezilla)。

FTPS是基于Web的,使用文本命令语法和语义,而SFTP基于* NIX系统上常见的安全Shell协议

本文很好地描述了这些差异:http : //www.codeguru.com/csharp/.net/net_general/internet/article.php/c14329/FTPS-vs-SFTP-What-to-Choose.htm


编辑:按要求阐述:

FTP是可追溯至1971年的Internet协议(多年来有许多更新)。它主要侧重于内容分发,在FTPS的情况下,它使用SSL来防止窃听和非法修改。FTP身份验证需要SSL,以保护传输中的凭据。

大多数浏览器需要使用外部插件才能使用FTPS,部分原因是它不再是常用协议。当它流行时,Web浏览器几乎仅是HTTP,每个人都使用单独的FTP客户端。在FTP / FTPS最有意义的时候,HTTP不能很好地处理文件下载。直到1997年发布HTTP \ 1.1(并于1999年更新),HTTP才能正确处理二进制流。

值得注意的是,HTTPFTP使用几乎相同的语义和语法,甚至使用相同的众所周知的返回码(200、301、403、404、500等)。FTP稍微老一些(HTTP 在TCP \ IP成为主导之后于1989标准化)。两种协议之间的显着相似之处表明它们是共同的谱系,或者至少是一组共同的约定。我认为,将FTP与其他核心应用程序层协议(如HTTP,SMTPDNS)以及其他核心应用程序层协议(如DNS使用二进制布局,而不是诸如HTTP / FTP / SMTP的文本)一起称为“基于Web的FTP”是充分的理由。

SSH系列是一组协议,专注于服务器管理和对服务器处理能力的远程访问,而不是简单的内容分发。它允许系统的特权用户连接到Shell以在服务器本身上执行工作。SCP和SFTP的开发是为了支持与此工作相关的许多文件管理任务。假设您需要在远程服务器上为Apache实例安装更新。ssh进入,使用scp \ sftp上传更新程序包,然后执行安装。与使用FTPS可以实现的工作流程截然不同。

我希望这有助于澄清。


2
答案中的前两句话很不错,但是能否请您向我展示一个支持FTPS(没有插件)的浏览器?您所说的“ FTPS是基于Web的什么意思?它与网络有什么共同点?从理论上讲,它可以用作常见HTTP / HTTPS之外的“传输”协议,但是您可以找到许多可以用于此目的的协议。
pabouk

我在这里没有提到FTPES ... FTPS从一开始就使用隐式加密,而FTPES从一开始就开始加密-通常before the user credentials are sent over the connection,这是一个很好的比较FTP / FTPS / FTPES:cerberusftp.com/support/help/ ftp-support
jave.web

18

SCP是SSH的文件传输工具。它在客户端和服务器上都需要SSH。它不是交互式的。

SFTP是可以与SSH一起使用的另一个文件传输工具(因此,它又可能在客户端和服务器上都需要SSH)或与任何其他兼容的安全连接工具一起使用,因为它旨在独立于SSH。它像旧的普通FTP一样具有交互性。请注意,它不是通过SSH的FTP,而是新协议。

FTPS是基于SSL的普通FTP。


1

SCP beeing ssh工具允许服务器端复制/移动操作,而sftp需要流量在此类任务中在客户端中传播。另一方面,sftp操作可以暂停和恢复。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.