root 发表于 2012-12-19 08:58:50

vsftpd的安全设置

vsftpd的安全设置      vsftpd原名是very secure FTP daemon的缩写,安全性是它的一个最大的优点,并且还可以对其进行带宽的限制,创建虚拟用户等 许多的优点。这里就不再讲解它的简单的设置,主要说一下vsftpd的安全设置.   vsftpd实现用户安全登录的方法主要四种          1> 配置文件与主目录权限的设置          2> 简易防火墙tcp_wrappers          3> FTPS(CA认证)          4> iptables对于配置文件与主目录权限设置和iptables,不在这节的讨论范围之内,主要讨论2,3两种方法对vsftpd安全的设置。   (1) 简易防火墙tcp_wrappers的设置          1>在进行此实验之前需要先查看一下你安装的vsftpd软件是否支持tcp_wrappers,可以用如下命令查看
现在我们可以进行下面的实验了。          2>tcp_wrappers功能在使用起来比较简单,只是改动系统中的两个文件就可以实现一定的用户及ip地址的控制,即文件:/etc/hosts.allow与/etc/hosts.deny            hosts.allow:表示在此文件中的ip都被允许            hosts.deny: 表示在此文件中的ip都不被允许            如果有些IP地址都没有在这两个文件中定义的话,系统就会使用默认的规则,即默认为:允许全部的ip地址通过。            如果在两个文件中都定义了的ip地址,那么系统会按顺序来使用定义的规则,系统默认是先查找hosts.allow中的规则,如果匹配,则允许其通过,就会忽略hosts.deny中定义的规则。          3> 实验               现在我有两台主机,IP地址分别为192.168.2.2与192.168.2.12,我们现在可以定义让192.168.2.2可以允许其ip地址为192.168.2.10的vsftpd主机,而不允许192.168.2.12来访问。下面还会说一下冲突ip地址,系统对其的处理方式。               现在我们对hosts.deny进行配置,它的配置很简单,只需要在两个文件中各加入下面的一句话就行了                # vim /etc/hosts.deny                      vsftpd:192.168.2.2:deny                # vim /etc/hosts.allow                 vsftpd:192.168.2.12:allow               在/etc/hosts.allow可以写也可以不写,因为对于没有设置规则的ip地址,系统中默认允许其通过的。   注:如果在文件hosts.deny定义了规则是拒绝了192.168.2.12,如:拒绝这个网段或全部的ip地址,一定要在hosts.allow中加入这一行。现在我们就可以进行测试:      在192.168.2.2
   在192.168.2.12测试                                                                                    
测试的效果是可以的。有时我们在hosts.allow与hosts.deny中都设置有一个相同的ip,紧接着上一个实验测试一下,我们再把192.168.2.2放入hosts.allow,看会出现效果。         # vim /etc/hosts.allow             vsftpd:192.168.2.12:allow             vsftpd:192.168.2.2:allow            # vim /etc/hosts.deny            vsftpd:192.168.2.2:deny现在在192.168.2.2中查看效果
在hosts.deny与hosts.allow中还可以使用all参数,即允许或阻止全部ip如 除hosts.allow中的ip外,阻止全部另外的ip,可以在hosts.deny中加入以下一行: vsftpd:all:deny    这样就可以达到阻止除了你想让其允许通过的ip。(2) FTPS(CA认证)          单单使用FTP时是极不安全的,别人可以直接使用抓包工具,抓取用户的登录名与密码,我们也可以实验一下,抓包时我们使用wireshark,使用rpm可以直接在Linux下安装      # rpm -ivh libsmi-0.4.5-2.el5.i386.rpm   wireshark-1.0.8-1.el5_3.1.i386.rpm Preparing...                ###########################################    1:libsmi               ########################################### [ 50%]   2:wireshark            ########################################### 使用user1登录,试一下能否抓到用户名与密码


可以看到抓取的用户名与密码   从上面的小实例中可以看出,直接使用FTP是极其不安全的,因此为了保证我们系统的安全性,我们可以使用FTPS,这样使用抓包工具就算抓到用户名与密码也是经过加密的,不能够了直接登录我们的系统。   配置FTPS,是使用CA对其进行认证,并进行加密,本实验包含三大部分,分别为:               1. 配置CA认证中心               2.将ftp服务器进行加密               3.客户端进行认证   1.    配置CA认证中心                # cd /etc/pki                # cd tls                # vim openssl.cnf          修改如下内容

创建所需的文件与目录         # mkdir certs crl newcerts         # touch index.txt serial         # echo "01">serial
          配置CA服务器的密钥   # openssl genrsa 1024 >./private/cakey.pem      Generating RSA private key, 1024 bit long modulus      ..............++++++      ............................++++++      e is 65537 (0x10001)   为自己颁发证书,以保证自己是可信任的


   2.将ftp服务器进行加密   现在来进行ftp服务器应用ssl,配置ftps       先在/etc/vsftpd文件中创建一个存放密码与证书的目录,并进入目录       # mkdir /etc/vsftpd/certs       # cd /etc/vsftpd/certs       # 为服务器创建私钥# openssl genrsa 1024 > vsftpd.key    Generating RSA private key, 1024 bit long modulus    .................++++++   .....++++++   e is 65537 (0x10001) 创建一个用于向CA认证中心申请的请求证书

向CA认证中心进行证书请求
请求成功之后就可以开始认证了。   对配置文件vsftpd.conf进行设置,使其支持ftps# vim /etc/vsftpd/vsftpd.conf添加如下内容 ssl_enable=yesssl_sslv2=yesssl_sslv3=yesssl_tlsv1=yesrsa_private_key_file=/etc/vsftpd/certs/vsftpd.keyrsa_cert_file=/etc/vsftpd/certs/vsftpd.certforce_local_data_ssl=yesforce_local_logins_ssl=yes 做到现在FTPS可以说已经做成了,现在只要去验证是否成功。
3.客户端进行认证现在在192.168.2.2上进行验证(注意把在hosts.deny中的规则删除)      
可以看出直接使用ftp是不可以登录的Ftps是不能直接使用命令或浏览器登录的,我们需要使用专门的软件来登录,我下载 了一个FlashFXP-v4.0.1548.zip来进行这个实验,把这个文件安装上   测试时并进行抓包

点击最下面的“连接”进行登录登录后会出现下面的图像框,就说明我们的ftps配置成功了。

点击“接受一次”或“接受并保存”就可以看到自己ftp主目录下的文件。抓包的内容我们也可以看一下

可以看出登录信息已经经过了加密,安全性大大提高。实验结束

root 发表于 2012-12-19 08:59:09

{:6_390:}{:6_390:}

yes-no 发表于 2013-5-15 17:19:40

禽兽尚且有半点怜悯之心,而我一点也没有,所以我不是禽兽。

sunfull 发表于 2013-5-16 04:38:28

精典之极就是精斑!!!

q9989 发表于 2013-5-16 16:26:42

床上运动也可以减肥的,你们都不知道吗?

jason0401 发表于 2013-5-17 05:36:04

听君一席话,省我十本书!

非法入侵 发表于 2013-5-17 15:09:40

你的丑和你的脸没有关系。。。。。。
页: [1]
查看完整版本: vsftpd的安全设置