安全,是我们一直以来的一个共同的话题,ftp服务器也不例外。而现在,我们对ftp服务的需要也是众所周知的,因为速度快,方便。这时我们同时会考虑到账户和密码以及传输数据等的安全问题,因为ftp的数据传输都是明文的。为更好的提升安全度,就需要对其安全策略有一定的了解。其安全策略又是如何发挥作用的呢,在此,或许会豁然开朗。

首先来安装FTP服务器:

为了后来说明问题,这里还要把抓包工具装上:

ftp服务起来:

创建一个用户用来测试用:

启用抓包来测试一下没有任何安装措施时会出现什么情况:

 tshark -ni eth0 -R "tcp.dstport eq 21"

抓包结果为:

由抓包结果可知,所有的信息都完全暴漏了,这是我们所不愿看到的,由此知,对ftp实行安全策略显得多么的重要

为了实现安全性,可以采用CA来进行捆绑。

既然要利用CA,接下来就是搭建CA

切换到cd /etc/pki/tls/目录下,编辑配置文件vim openssl.cnf :

接着该几个默认值(根据自己的需求该)

 

 

 

 

然后到CA目录下创建三个目录,两个文件,并给其中一个文件一初始值:

 

创建私钥文件:

 

更改权限:

 chmod 600 private/cakey.pem 

产生证书:

 openssl req -new -x509 -key private/cakey.pem -out cacert.pem(里面填写的内容可以随意)

 

下面就是为ftp做证书,在做证书时,首先要有私钥和请求

生成私钥:

创建一目录来存放证书:

mkdir -pv /etc/vsftpd/certs

cd /etc/vsftpd/certs/

 

更改权限:

chmod 600 vsftp.key 

产生请求:

openssl req -new -key vsftp.key -out vsftp.crq(里面填写的内容依然随意填)

 

产生证书:

openssl ca -in vsftp.crq -out vsftp.cert

 

至此,证书就生成了。

接着就是将证书和ftp进行捆绑

vim /etc/vsftpd/vsftpd.conf 

重新启动ftp服务

service vsftpd restart

测试

利用标准的ftp客户端来测试

抓包工具抓取的信息为:

可以发现没有任何有价值的信息,说明,CAftp连接成功了,也就实现了ftp的安全性。