ftp的存在问题
1.密码和文件内容都使用明文传输,可能产生不希望发生的窃听。   
2.因为必须开放一个随机的端口以建立连接,当防火墙存在时,客户端很难过滤处
  于主动模式下的FTP流量。这个问题通过使用被动模式的FTP得到了很大解决。   
3.服务器可能会被告知连接一个第三方计算机的保留端口。


ssl简介
SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)
是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层对网络连接进行加密。
ssl功能
  1  认证用户和服务器,确保数据发送到正确的客户机和服务器;   
  2  加密数据以防止数据中途被窃取;   
  3  维护数据的完整性,确保数据在传输过程中不被改变。

通过ftp与ssl结合产生ftps 
      
  ftps 一种多传输协议,相当于加密版的FTP。当你在FTP服务器上收发文件的时候,你面临两个风险。
第一个风险是在上载文件的时候为文件加密。第二个风险是,这些文件在你等待接收方下载的
时候将停留在FTP服务器上,这时你如何保证这些文件的安全。你的第二个选择(创建一个支持
SSL的FTP服务器)能够让你的主机使用一个FTPS连接上载这些文件。这包括使用一个在FTP协议
下面的SSL层加密控制和数据通道。一种替代FTPS的协议是安全文件传输协议(SFTP)。这个协议
使用SSH文件传输协议加密从客户机到服务器的FTP连接。
   FTPS是在安全套接层使用标准的FTP协议和指令的一种增强型TFP协议,为FTP协议和数据通道
增加了SSL安全功能。FTPS也称作“FTP-SSL”和“FTP-over-SSL”。SSL是一个在客户机和具有SSL
功能的服务器之间的安全连接中对数据进行加密和解密的协议。
   和sftp连接方法类似,在windows中可以使用FileZilla等传输软件来连接FTPS进行上传,下载
文件,建立,删除目录等操作,在FileZilla连接时,有显式和隐式TLS/SSL连接之分,连接时也有指
纹提示。 

首先安装wireshark抓包工具
Yum install –y wireshark
 
安装ftp服务。
Rpm –ivh  vsftp-2.0.5-16.e15.i386.rpm
 
运行wireshark
Tshark -ni eth0 –R “tcp.dstport eq 21 ”
 
创建用户user1 密码设置为 123
useradd user1
echo  “123”  |passwd –stdin user 
 
 
 
在物理机上登录ftp
 

 
可以发现密码及用户名一目了然
 

为了安全,采用ftps机制
创建私钥
编译openssl.cnf文件
Vim /etc/pki/tls、openssl.cnf
 

 
 
创建CA证书
 

 

 

 

来到ftp上 为他建立私钥以及请求文件
 

请求证书

 

 

 

ftp和证书结合 

编辑ftp主配置文件
 

 
重启服务
 

 

 

在物理机上用flashFXP登录进行测试
 

 
获得证书
 

证书详细信息
 

 
验证ftps的安全机制
非ftps登录
 

ftps登录
 

 
因此采用ftps是针对于较为安全的一种安全措施