您的位置:首页 > 编程语言 > PHP开发

FTP与SFTP的差别初学

2020-07-14 06:30 477 查看

FTP与SFTP的差别

最近在服务器之间传输文件的时候出现文件传输过程中文件不同的现象。由于两服务器之间不通,不能直接scp传输,需要用xftp把文件从A服务器拉取到本地,再由本地传输到B服务器上。往下来去后发现两个文件大小出现不同,文件MD5sum不同。比较困惑是什么原因。试了文件权限,查看了存储空间大小,均没问题。最后修改了一下传输方式,由ftp改为sftp,问题解决。对其原理不清楚,在此学习一下。

一、ftp与sftp
FTP(File Transfer Protocol),即文件传输协议,用于Internet上控制文件的双向传输。
FTP在linux系统中,传输默认的端口为21端口,通常以ASCII码和二进制的方式传输数据,支持主动模式和被动模式两种方式。

SFTP(Secure File Transfer Protocol),即文件加密传输协议.SFTP在linux系统中,传输默认的端口为22端口,这种传输方式更为安全,传输双方既要进行密码安全验证,还要进行基于密钥的安全验证,有效的防止了“中间人”的威胁和攻击。
区别与联系
1、安全通道
FTP 不提供任何安全通道来在主机之间传输文件;而SFTP协议提供了一个安全通道,用于在网络上的主机之间传输文件。
2、使用的协议
FTP使用TCP / IP协议。而,SFTP是SSH协议的一部分,它是一种远程登录信息。
3、链接方式
FTP使用TCP端口21上的控制连接建立连接。而,SFTP是在客户端和服务器之间通过SSH协议(TCP端口22)建立的安全连接来传输文件。
4、安全性
FTP密码和数据以纯文本格式发送,大多数情况下是不加密的,安全性不高。而,SFTP会在发送之前加密数据,二进制的形式传递,是无法“按原样”阅读的,安全性较高。

FTP 基于TCP来传输文件,明文传输用户信息和数据。

SFTP 基于SSH来加密传输文件,可靠性高,可断点续传。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: