一、ftp

  ftp是文件传输协议,ftp协议包括两部分,一个是ftp客户端,另一个是ftp服务器。

  原理:一般情况下,当使用FTP服务的时候,我们都知道默认是21号端口,其实还有一个20号端口。FTP使用两个TCP连接,21号端口负责控制连接,20号端口负责数据连接,这样才不会混乱,是FTP可以更好的为我们服务。FTP协议的工作方式可以分为主动方式和被动方式两种,主动是指FTP客户端发送PORT命令连接FTP服务器,被动是FTP客户端发送PASV命令连接FTP服务器。主动方式:在通过21号端口连接好控制通道后,客户端发送给服务器PORT命令,就是给服务器说咱们俩通信你可以在那个端口进行,于是服务器打开20号端口,连接上客户端的指定的端口进行连接,传送数据。需要创建一个新的连接。被动方式:在通过21号端口连接好控制通道后,客户端发送给服务器PASV命令,就是给服务器说咱们俩通信的端口号你选择,然后服务器随机选择一个端口(大于1024),FTP客户端连接至此端口,进行通信。不需要创建一个新的连接。

  用法:命令模式下输入 ftp+IP地址,然后输入用户名密码,前提是你的Linux环境里安装了了ftp服务,登录后用get或者mget命令取文件,用put上传文件,bye命令退出。

二、sftp

  ftp是安全文件传输协议,于ftp类似。

  原理:SFTP是SSH的一部分,在SSH软件包中,已经包含了一个SFTP(Secure File Transfer Protocol)的安全文件传输子系统,SFTP本身没有单独的守护进程,它必须使用sshd守护进程(端口号默认是22)来完成相应的连接操作。由于这种传输方式使用了加密/解密技术,文件传送相对来说是很安全的。

  用法:命令模式下输入 sftp 用户名@ip地址,其它命令和ftp类似。

三、ftp和sftp的区别

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

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

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

文章参考了以下地址:

http://www.cnblogs.com/xuliangxing/p/7120130.html

https://blog.csdn.net/zhanghao143lina/article/details/53004532

http://www.cnblogs.com/xuliangxing/p/7120205.html

ftp和sftp的更多相关文章

  1. java通过ftp和sftp上传war包上传到Linux服务器实现自动重启tomcat的脚本代码

    ar包自动上传Linux并且自动重启tomcat 用的是jdk1.7出的文件监控 支持ftp和sftp,支持多服务器负载等 配置好config 非maven项目导入直接使用 #\u76D1\u542C ...

  2. 我的代码库-Java8实现FTP与SFTP文件上传下载

    有网上的代码,也有自己的理解,代码备份 一般连接windows服务器使用FTP,连接linux服务器使用SFTP.linux都是通过SFTP上传文件,不需要额外安装,非要使用FTP的话,还得安装FTP ...

  3. FTP、SFTP文件下载内容校验

    描述: 从FTP.SFTP下载的文件做MD5码校验,文件名和MD5码值存放在表格里,表格位置在FTP.SFTP服务器上. os模块只能遍历本地目录/文件,需要先连接FTP.SFTP服务器,将表格下载到 ...

  4. FTP、SFTP与FTPS

    先简单介绍下FTP的基础知识 FTP的传输有两种方式:ASCII.二进制. FTP支持两种模式:Standard (PORT方式,主动方式),Passive (PASV,被动方式). 主动模式 FTP ...

  5. 远程登录工具 —— filezilla(FTP vs. SFTP)、xshell、secureCRT

    filezilla:是一个免费开源的 FTP 软件,分为客户端版本和服务器版本,具备所有的 FTP 软件功能. 支持的协议:FTP & SFTP(Secure File Transfer Pr ...

  6. FTP、SFTP、SCP、SSH、OpenSSH关系解密

    FTP(File Transfer Protocol):是TCP/IP网络上两台计算机传送文件的协议,FTP是在TCP/IP网络和INTERNET上最早使用的协议之一,它属于网络协议组的应用层.FTP ...

  7. Network - FTP与SFTP

    FTP --- FTP File Transfer SFTP --- SSH File Transfer 缩写 名称 协议与端口 安全策略 特征描述 守护进程(linux) 应用场景 SFTP SSH ...

  8. CentOS.7下安装配置FTP和SFTP服务

    一: FTP Centos7中默认已经安装了sshd服务(sftp), vsftpd需要手动安装 1.安装并启动FTP服务 1.1 安装vsftpd 使用 yum 安装 vsftpd yum inst ...

  9. shell使用lftp连接ftp和sftp,并可以指定私钥

    lftp连接ftp在脚本中可以 lftp -c "open username:password@host:port; ls /Friso/20180822/click/mobile/SUCC ...

随机推荐

  1. 转:使用 VisualVM 进行性能分析及调优

    使用 VisualVM 进行性能分析及调优 VisualVM 是一款免费的\集成了多个 JDK 命令行工具的可视化工具,它能为您提供强大的分析能力,对 Java 应用程序做性能分析和调优.这些功能包括 ...

  2. poj3535 A+B (大数加法)

    A+B Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 811   Accepted: 371 Description The ...

  3. 2. nmap扫描神器总结

    -----------------nmap(选项)(参数)------------------O:激活操作探测: -P0:值进行扫描,不ping主机: -PT:是同TCP的ping: -sV:探测服务 ...

  4. Linux 程式減肥(strip & objcopy)(转载)

    转自:http://calamaryshop.blogspot.com/2011/11/linux-strip-objcopy.html 對於設計嵌入式Linux系統的研發人員來說,記憶體的空間是非常 ...

  5. 自定义Swap

    网上看到的一篇文章加深了对指针的了解,收藏一下 自定义的swap函数是一个老掉牙的问题,而这个问题对于理解指针和内存中的栈是很有帮助的 一般自定swap函数是这样的: 1.swap函数的功能是实现两个 ...

  6. pandas基础(3)_数据处理

    1:删除重复数据 使用duplicate()函数检测重复的行,返回元素为bool类型的Series对象,每个元素对应一行,如果该行不是第一次出现,则元素为true >>> df =D ...

  7. js混杂笔记

    1.判断对象为空的方法 1)Object.keys({}).length === 0 // true 2)Object.getOwnPropertyNames({}).length === 0 // ...

  8. 基于unity3d游戏的android版本逆向初探

    https://bbs.pediy.com/thread-212532.htm [文章标题]: 基于unity3d游戏的android版本逆向初探 [文章作者]: dreaman [作者邮箱]: [e ...

  9. ue4 enable input

    actor:  enable input 这个可以使多个actor接收输入 pawn: possese pawn使用enable input是不生效的 貌似不允许多个pawn同时接收输入,可以考虑直接 ...

  10. cf808E(三分)

    题目链接:http://codeforces.com/problemset/problem/808/E 题意:给出n个体积为wi, 价值为ci的物品,背包容量为m,求能容纳的最大物品价值,其中 1&l ...