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