@sevenup233
2018-03-11T09:00:49.000000Z
字数 2811
阅读 1347
网络
FTP是TCP/IP网络上两台计算机传送文件的协议,属于应用层。FTP协议要用到两个TCP连接,一个是命令链路(21端口),用来在FTP客户端与服务器之间传递命令;另一个是数据链路(22端口),用来上传或下载数据
PORT(主动):客户端向服务器的FTP端口发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,客户端在命令链路上用PORT命令告诉服务器,于是服务器向发送连接请求,建立一条数据链路来传送数据。
PASV(被动):客户端向服务器的FTP端口发送连接请求。。。
FTPS一种多传输协议,相当于加密版的FTP。当在FTP服务器上收发文件的时候,会面临两个风险。第一个风险是在上载文件的时候为文件加密。第二个风险是,这些文件在你等待接收方下载的时候将停留在FTP服务器上,这时你如何保证这些文件的安全。你的第二个选择(创建一个支持SSL的FTP服务器)能够让你的主机使用一个FTPS连接上载这些文件。这包括使用一个在FTP协议下面的SSL层加密控制和数据通道。
TLS是设计用来保护网络通信过程中信息的私密性的一种工业标准,允许客户机,服务器应用程序可以探测到安全风险,包括消息篡改(message tampering),消息拦截(message interception),消息伪造(message forgery),其前身是SSL。
TLS与SSL在传输层对网络连接进行加密,但是在应用层之下工作的。因此,它可以很容易在诸如HTTP,Telnet,POP3,IMAP4,SMTP和FTP等应用层协议上实现。SSL安全扩展至少有两种不同的初始化方法:显式安全和隐式安全。
SSH为建立在应用层基础上的安全协议。SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议,利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。
传统的网络服务程序,如ftp、pop和telnet在本质上都是不安全的,因为它们在网络上用明文传送口令和数据,别有用心的人非常容易就可以截获这些口令和数据。而且,这些服务程序的安全验证方式也是有其弱点的, 就是很容易受到“中间人”(man-in-the-middle)这种方式的攻击。所谓“中间人”的攻击方式, 就是“中间人”冒充真正的服务器接收你传给服务器的数据,然后再冒充你把数据传给真正的服务器。服务器和你之间的数据传送被“中间人”一转手做了手脚之后,就会出现很严重的问题。通过使用SSH,你可以把所有传输的数据进行加密,这样"中间人"这种攻击方式就不可能实现了,而且也能够防止DNS欺骗和IP欺骗。使用SSH,还有一个额外的好处就是传输的数据是经过压缩的,所以可以加快传输的速度。
SSH是由客户端和服务端的软件组成的,有两个不兼容的版本分别是:1.x和2.x。 用SSH 2.x的客户程序是不能连接到SSH 1.x的服务程序上去的。OpenSSH 2.x同时支持SSH 1.x和2.x。
SSH的服务端是一个守护进程,他在后台运行并响应来自客户端的连接请求。服务端一般是SSHD进程,提供了对远程连接的处理,一般包括公共密钥认证、密钥交换、对称密钥加密和非安全连接。
SSH的客户端包含ssh程序以及像scp(远程拷贝)、slogin(远程登陆)、sftp(安全文件传输)等其他的应用程序。
SCP协议是用来定义“本地机器和远端机器之间”或者“远端机器和远端机器之间”传输文件的过程的协议,处于OSI七层体系中的应用层。SCP协议基于SSH协议,它使用建立的SSH连接隧道作为数据传输通道,而SSH连接隧道是安全的,因而基于SCP协议的文件传输是安全的。
SCP协议分为SCP客户端和SCP服务器,两者都包含有“从本地复制文件传输给对方”和“从对方获取文件复制到本地”的功能。但是SCP服务器跟常见的苏武器不同,它不是“持续运行,监听端口”的,而是被触发运行的。
当SCP客户端发起文件传输请求时,会去调用同台机器上的SSH客户端程序,接着SSH客户端程序向SSH服务器进行文件传输请求,在得到允许的结果后,SSH服务器会建立一个SSH连接作为数据隧道,并运行同台机器上的SCP服务器。 此时如果是从SCP客户端传输文件到SCP服务器的情形:接下来SCP客户端从本地复制文件数据,将数据通过SSH隧道传输,SCP服务器从SSH隧道读取数据,将数据写入本地存储成一个文件。
SFTP是安全文件传送协议,可以为传输文件提供一种安全的加密方法。SFTP与FTP有着几乎一样的语法和功能。SFTP为SSH的一部份,是一种传输文件到服务器的安全方式。SFTP本身没有单独的守护进程,它必须使用sshd守护进程来完成相应的连接操作,所以从某种意义上来说,SFTP并不像一个服务器程序,而更像是一个客户端程序。SFTP同样是使用加密传输认证信息和传输的数据,所以,使用SFTP是非常安全的。但是,由于这种传输方式使用了加密/解密技术,所以传输效率比普通的FTP要低得多,如果对网络安全性要求更高时,可以使用SFTP代替FTP。
WebDAV是一种基于 HTTP 1.1协议的通信协议,它在HTTP标准方法以外添加了一些新的方法,使应用程序可对Web Server直接读写,并支持写文件锁定及解锁,还可以支持文件的版本控制。简单说,WebDAV就是在服务器上划出一块存储空间,可以使用用户名和密码来控制访问,让用户可以直接存储、下载、编辑文件。
由于 Web 已经成为 Internet 的基础,因此 HTTP 1.1被证实是用来传输数据的非常灵活的通用协议。 但是,HTTP 存在一些明显的缺点,从而限制了它作为综合的 Internet 通讯协议而被采用: 它非常适合用于查看的静态文档,但不能提供以足够复杂(以便向客户端提供丰富的创作功能)的方式来处理文档的方法。
http://blog.csdn.net/shmilychan/article/details/51848850
http://blog.csdn.net/dslztx/article/details/50586504
http://blog.csdn.net/cuker919/article/details/6403925
http://desert3.iteye.com/blog/1684130