LINUX

关注公众号 jb51net

关闭
操作系统 > LINUX >

vsftpd 配置(中)

脚本之家


     五、vsftpd高级操作
     这一节我们介绍一下vsftpd的其它一些知识,其中包括:双模式切换、基于ip的虚拟ftp 站点、基于数据库虚拟用户建立及管理、基于 <, FONT face="Arial, sans-serif">OpenSSL 的加密数据传输。
    1. vsftpd双模式切换
     前面我们提过,vsftpd 服务是支持在linux下的两种服务模式:(standalone)模式和守护进程(xinetd)模式。在standalone模式下,vsftpd进程启动后会一直占用系统资源,当有连接请求时,它会迅速反应;在xinetd模式下,ftp服务是由守护进程统一管理,当出现ftp连接请求时,守护进程才将ftp服务启动,这种方式最大的优点是没有连接的时候ftp服务不会占用系统资源,处于睡眠状态,但因为要花费时间去唤醒该服务,所以响应时间较长。
    之前做的试验一直是把vsftpd 做在模式下,下面我们把它移到守护进程下。注意在工作在守护进程下时,有的参数并不起作用,详细请查阅vsftpd帮助信息(man vsftpd.conf)。
     我们需要在守护进程配置目录/etc/xinetd.d/里建立vsftpd 的守护进程文件。我们在安装时已经将该文件考到/etc/xinetd.d/目录下了。我们稍稍修改其内容:
     #vi /etc/xinetd.d/vsftpd
     service ftp
     {
         disable             = no
         socket_type                = stream
         wait                        = no
         user                        = root
         server                = /usr/local/sbin/vsftpd
         server_args                = /etc/vsftpd/vsftpd.conf
         nice                        = 10
     }
     接下来把配置文件中的listen=yes或listen_ipv6=yes去掉,停掉vsftpd服务,重启xinetd服务:
     # sesrvice vsftpd stop
     # service xinetd restart
     重新启动守护进程后,vsftpd 服务就会让守护进程来管理了。在守护进程管理过程中,我们再修改主配置文件的话,就不需要重新启动服务了。
2. 基于IP的虚拟ftp站点
     这一小节我们来讨论在同一服务器上建立多个ftp站点,每个站点相互,拥有的配置文件。当然服务器必须有两个以上的IP地址。在standalone模式下,我们可以考虑启动多个ftp服务进程;在xinetd模式下,可以让守护进程来管理。下面我们分别讨论这两种情况。为简单起见,我们在服务器上建立两个匿名虚拟站点。下面是这两个站点的信息:
                站点1                              站点2                
     ip地址                         192.168.0.105
       192.168.0.106 
    主配置文件                    /etc/vsftpd/vsftpd.conf 
    /etc/vsftpd/vsftpd2.conf 
    匿名用户映射的本地用户名 
          默认为ftp           新建立ftp2
    匿名用户主目录                          /var/ftp/  
           /var/ftp2/                
standalone模式下虚拟站点的建立
     首先我们修改站点1的配置文件/etc/vsftpd/vsftpd.conf为下面所示:
     listen=yes
     listen_address=192.168.0.105
     anonymous_enable=yes
     local_enable=yes
     pam_service_name=vsftpd