SFTP与FTP有什么区别?

 我来答
rg...2@sohu.com
2017-03-25 · TA获得超过105个赞
知道答主
回答量:96
采纳率:0%
帮助的人:12.7万
展开全部

文件传送协议FTP(File Transfer Protocol)是TCP/IP协议簇中的一个成员,也是现在因特网上最广泛的文件传送协议。FTP协议包括两个部分,一个是FTP客户端,另一个是FTP服务器。当然,FTP服务器是用来存储文件资源的,FTP客户端通过访问FTP服务器来获得资源的。
一般情况下,当使用FTP服务的时候,我们都知道默认是21号端口,其实还有一个20号端口。FTP使用两个TCP连接,21号端口负责控制连接,20号端口负责数据连接,这样才不会混乱,是FTP可以更好的为我们服务。FTP协议的工作方式可以分为主动方式和被动方式两种,主动是指FTP客户端发送PORT命令连接FTP服务器,被动是FTP客户端发送PASV命令连接FTP服务器。我也是在《linux就该这么学》这个PDF上面找到这些资料的,当初也是别人推荐给我的,内容讲的还不错。
主动方式:在通过21号端口连接好控制通道后,客户端发送给服务器PORT命令,就是给服务器说咱们俩通信你可以在那个端口进行,于是服务器打开20号端口,连接上客户端的指定的端口进行连接,传送数据。需要创建一个新的连接。
被动方式:在通过21号端口连接好控制通道后,客户端发送给服务器PASV命令,就是给服务器说咱们俩通信的端口号你选择,然后服务器随机选择一个端口(大于1024),FTP客户端连接至此端口,进行通信。不需要创建一个新的连接。
安全文件传送协议SFTP(Secure File Transfer Protocol)可以为文件传送提供安全的加密/解密技术。基本语法和FTP差不多。SFTP是SSH的一部分,在SSH软件包中,已经包含了一个SFTP(Secure File Transfer Protocol)的安全文件传输子系统,SFTP本身没有单独的守护进程,它必须使用sshd守护进程(端口号默认是22)来完成相应的连接操作。由于这种传输方式使用了加密/解密技术,文件传送相对来说是很安全的,但是是有代价的,它的传输效率比FTP要低得多。具体的安装和工作原理的可以借鉴:http://www.linuxprobe.com/chapter-11.html,但是不要抄袭。

追问
解释的很详细,谢谢你耐心的解答
小傻

2018-07-26 · 知道合伙人软件行家
小傻
知道合伙人软件行家
采纳数:11567 获赞数:31134
已经做过两个上架的app和两个网页项目.

向TA提问 私信TA
展开全部
FTP是文件传输协议。在网站上,如果你想把文件和人共享,最便捷的方式莫过于把文件上传到FTP服务器上,其他人通过FTP客户端程序来下载所需要的文件。 FTP进行文件传输需要通过端口进行。一般所需端口为: 1. 控制链路—TCP端口21。控制器端。用于发送指令给服务器以及等待服务器响应。 2. 数据链路---TCP端口20。数据传输端口。用来建立数据传输通道的。主要用来从客户向服务器发送一个文件、从服务器向客户发送一个文件、从服务器向客户发送文件或目录列表。 FTP为了适应不同的网络环境,支持主动连接和被动连接两种模式。这两种模式都主要针对数据链路进行的,跟控制链路无关。 FTP的安全隐患: 一、FTP服务器软件漏洞。 二、明文口令。 三、FTP旗标。 四、通过FTP服务器进行端口扫描。 五、数据劫持。 FTP的安全策略: 一、使用较比安全的系统和FTP服务软件。 二、使用密文传输用户名和口令。 三、更改服务软件的旗标。 四、加强协议安全性。 SFTP是Secure File Transfer Protocol的缩写,是安全文件传送协议。可以为传输文件提供一种安全的加密方法。跟ftp几乎语法功能一样。 SFTP是SSH的一部分,是一种传输档案至Blogger伺服器的安全方式。它...
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
老男孩教育
2022-02-25 · 百度认证:北京一天天教育科技有限公司官方账号,教育领域创作者
老男孩教育
专注于Linux高级运维、Python开发、大数据培训,为您分享行业前沿的技术,有效的学习方法和有价值的学习资料。
向TA提问
展开全部
第一、FTP协议
FTP是TCP/IP协议组中的协议之一,TP协议由两个部分组成:1、FTP服务器,用来存储文件;2、FTP客户端,用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源。
默认情况下FTP协议使用TCP端口中的20和21这两个端口。21端口用于传输控制信息,而是否使用20作为传输数据的端口与FTP使用的传输模式有关,如果采用被动模式则具体使用哪个端口要服务器端和客户端协商决定。FTP传输模式分为两种:
①主动模式
FTP客户端首先和FTP服务器的TCP21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。PROT命令包含了客户端用什么端口接收数据。在传输数据的时候,服务器端通过自己的TCP
20端口连接至客户端的指定端口发送数据。
②被动模式
在建立控制通道与主动模式相似,但建立连接后是Pasv命令。FTP服务器收到Pasv命令后便随机打开一个高端端口并且通知客户端在这个端口上传送数据的请求,客户端连接FTP服务器此端口,通过三次握手建立通道,然后FTP服务器将通过这个端口进行数据的传送。
第二、SFTP协议
SFTP是SSH File Transfer
Protocol的缩写,安全文件传送协议。SFTP与FTP有着几乎一样的语法和功能。SFTP为SSH的其中一部分,是一种传输档案至Blogger伺服器的安全方式。其实在SSH软件包含中,已经包含了一个叫作SFTP的安全文件信息传输子系统,SFTP本身没有单独的守护进程,它必须使用sshd守护进程来完成相应的连接和答复操作,所以从某种意义上来说,SFTP并不像一个服务器程序,而更像是一个客户端程序。
第三、二者的主要区别
链接方式:FTP使用TCP端口21上的控制连接建立连接。而SFTP是在客户端和服务器之间通过SSH协议建立的安全连接来传输文件。
安全性:SFTP使用加密传输认证信息和传输的数据,所以使用SFTP相对于FTP是非常安全。
效率:SFTP这种传输方式使用了加密解密技术,所以传输效率比普通的FTP要低很多。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式