浅谈ftp和sftp的区别

一、适用场景

我们平时习惯了使用FTP来上传下载文件,尤其是很多Linux的环境下,我们一般都会通过第三方的SSH工具连接到Linux的,但是当我们需要传输文件到Linux的服务器当中,很多人习惯用FTP来传输,其实Linux的默认是不提供FTP的,需要你额外安装FTP服务器。而且FTP服务器端会占用一定的VPS服务器资源。其实笔者更建议使用SFTP代替FTP。

主要因为:1),可以不用额外安装任何服务器端程序(我比较中意这个,哈哈~~,很多公司为了安全性的Linux没有外网环境,只有SSH的时候,想传输文件是很悲催的问题)2),会更省系统资源。3),SFTP使用加密传输认证信息和传输数据,相对来说会更安全。4),也不需要单独配置,对新手来说比较简单(开启SSH默认就开启了SFTP)。

二、主要区别

FTP是一种文件传输协议,一般是为了方便数据共享的。包括一个FTP服务器和多个FTP客户端.FTP客户端通过FTP协议在服务器上下载资源。而SFTP协议是在FTP的基础上对数据进行加密,使得传输的数据相对来说更安全。但是这种安全是以牺牲效率为代价的,也就是说SFTP的传输效率比FTP要低(不过现实使用当中,没有发现多大差别)。个人肤浅的认为就是:一; FTP要安装,SFTP不要安装二; SFTP更安全,但更安全带来副作用就是的效率比FTP要低些。

三、开启SFTP

一、SFTP讲解

SFTP是安全文件传输协议的缩写,安全文件传送协议。可以为传输文件提供一种安全的加密方法
  .SFTP与FTP有着几乎一样的语法和功能。

SFTP为SSH的一部分,是一种传输档案至Blogger伺服器的安全方式。其实在SSH软件包中,已经包含了一个叫作SFTP(安全文件传输协议的安全文件传输子系统,SFTP本身没

有单独的守护进程,它必须使用SSHD守护进程(端口号默认是22)来完成相应的连接操作,所以从某种意义上来说,SFTP并不像一个服务器程序,而更像是一个客户端程序。

SFTP同样是使用加密传输认证信息和传输的数据,所以,使用SFTP是非常安全的。

但是,由于这种传输方式使用了加密/解密技术,所以传输效率比普通的FTP要低得多,如果您对网络安全性要求更高时,可以使用SFTP代替FTP。

二、开启SFTP

开启命令:

1 /etc/init.d/sshd start  
2 /etc/init.d/sshd stop 

这样启动之后,用XShell5工具使用SFTP连接是可以连接上的

如下图配置:
在这里插入图片描述
图1配置信息
在这里插入图片描述
图2连接成功

PS:但如果使用Java编写的程序连接,发现出现了错误,报的错误是Auth fail,验证出错。

可能的原因:
  / etc / ssh / sshd_config文件夹的一个配置项PasswordAuthentication默认为否,“PasswordAuthentication”设置是否允许口令验证。把它改为yes,重启服务就OK了。

简而言之,区别如下:
FTP(File Transfer Protocol),即文件传输协议,用于Internet上控制文件的双向传输。FTP在linux系统中,传输默认的端口为21端口,通常以ASCII码和二进制的方式传输数据。

SFTP(Secure File Transfer Protocol),即文件加密传输协议,SFTP在linux系统中,传输默认的端口为22端口,这种传输方式更为安全,传输双方既要进行密码安全验证,还要进行基于密钥的安全验证,有效的防止了“中间人”的威胁和攻击。

在使用linux的centos服务器系统中,两个比较起来,ftp传输会比sftp传输速率快,毕竟sftp牺牲了一定的效率,以保证传输过程的安全。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值