社区编辑申请
注册/登录
FTP与SFTP两者有什么区别
网络 通信技术
在实际项目开发中最常使用的文件传输的方式有ftp和sftp两种,但是这两个传输方式各有什么特点呢?本文接下来将讨论SFTP、FTP的区别。

在实际项目开发中最常使用的文件传输的方式有ftp和sftp两种,但是这两个传输方式各有什么特点呢?本文接下来将讨论SFTP、FTP的区别。

一、FTP协议

FTP是TCP/IP协议组中的协议之一,TP协议由两个部分组成:

  • FTP服务器(用来存储文件)
  • FTP客户端(用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源)

默认情况下FTP协议使用TCP端口中的20和21这两个端口。21端口用于传输控制信息,而是否使用20作为传输数据的端口与FTP使用的传输模式有关,如果采用被动模式则具体使用哪个端口要服务器端和客户端协商决定。FTP传输模式分为以下两种:

  • 主动模式(Port)
  • 被动模式(Passive)

1. 主动模式

FTP与SFTP两者有什么区别

FTP客户端首先和FTP服务器的TCP21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。 PORT命令包含了客户端用什么端口接收数据。在传送数据的时候,服务器端通过自己的TCP 20端口连接至客户端的指定端口发送数据。

2. 被动模式

FTP与SFTP两者有什么区别

在建立控制通道与主动模式相似,但建立连接后是Pasv命令。FTP服务器收到Pasv命令后便随机打开一个高端端口(端口号大于1024)并且通知客户端在这个端口上传送数据的请求,客户端连接FTP服务器此端口,通过三次握手建立通道,然后FTP服务器将通过这个端口进行数据的传送。

注意:很多防火墙在设置的时候都是不允许接受外部发起的连接的,所以许多位于防火墙后或内网的FTP服务器不支持PASV模式,因为客户端无法穿过防火墙打开FTP服务器的高端端口;而许多内网的客户端不能用PORT模式登陆FTP服务器,因为从服务器的TCP 20无法和内部网络的客户端建立一个新的连接,造成无法工作。

二、SFTP协议

SFTP是SSH File Transfer Protocol的缩写,安全文件传送协议。SFTP与FTP有着几乎一样的语法和功能。SFTP为SSH的其中一部分,是一种传输档案至 Blogger 伺服器的安全方式。其实在SSH软件包中,已经包含了一个叫作SFTP的安全文件信息传输子系统,SFTP本身没有单独的守护进程,它必须使用sshd守护进程(端口号默认是22)来完成相应的连接和答复操作,所以从某种意义上来说,SFTP并不像一个服务器程序,而更像是一个客户端程序。

三、两者的主要区别

FTP与SFTP两者有什么区别

  • 链接方式:FTP使用TCP端口21上的控制连接建立连接。而,SFTP是在客户端和服务器之间通过SSH协议(TCP端口22)建立的安全连接来传输文件。
  • 安全性:SFTP使用加密传输认证信息和传输的数据,所以使用SFTP相对于FTP是非常安全。
  • 效率:SFTP这种传输方式使用了加密解密技术,所以传输效率比普通的FTP要低得多。

 

责任编辑:赵宁宁 来源: 今日头条
相关推荐

2022-05-14 16:08:25

边缘计算AI人工智能

2014-02-09 15:12:32

OS X MaveriFTPSFTP

2022-03-11 13:28:54

SSHLinux命令

2021-07-27 05:56:53

2020-09-27 11:55:20

FTPFTPSSFTP

2022-03-22 10:57:37

Xshell开源SSH

2022-04-29 09:10:25

MobaXterm软件Linux

2022-04-11 09:39:58

Linux进程编程

2019-10-23 04:37:56

Jschsftp服务器

2022-04-21 07:52:08

2022-03-04 08:56:58

HTTPDNS 服务器浏览器

2022-04-15 10:36:11

数据治理企业

2022-03-21 10:13:09

sftp 服务器参数配置

2022-05-26 07:41:24

Ftp服务器

2022-03-30 08:23:51

FileZillaLinux开源

2022-02-25 07:34:36

MQTT协议RabbitMQ

2022-03-24 08:02:39

网络安全端点

2010-04-27 14:55:53

Unix SFTP

2022-04-08 10:18:28

隐私物联网IOT

2011-03-02 14:36:24

同话题下的热门内容

超极速优化:网络开发中的请求合并!我们一起聊聊到底什么是通信?面向2030年的6G,将带来什么改变?

编辑推荐

FTP与SFTP两者有什么区别你的手机支持5Gwifi吗?5G上网真的很快吗?VXLAN与EVPN的结合使用VXLAN技术介绍:三层的网络来搭建虚拟的二层网络什么是通信原理?原来这么简单
我收藏的内容
点赞
收藏

51CTO技术栈公众号