今天一位群友在配置基于虚拟用户的vsftp服务器的时候遇到了一些问题,特此把配置的步骤整理了一下,希望能对大家有一点帮助。

1.建立虚拟用户的账户名 密码列表

基于虚拟用户的vsftp服务器_休闲

?在使用 db_load 命令时,“-f”选项用于指定用户名/密码列表文件,“-T”选项允许非Berkeley DB的应用程序使用从文本格式转换的DB数据文件,“-t hash”选项指定读取数据文件的基本方法。关于db_load命令的详细说明可参阅/usr/share/doc/db4-utils-4.3.29/utility/db_load.html文件

?将帐号文件的权限设置为600,可以有效提高安全性

2.创建FTP根目录及虚拟用户映射的系统用户

基于虚拟用户的vsftp服务器_虚拟_02

?vsftpd虚拟用户需要有一个对应的系统用户帐号(该帐号无需设置密码及登录Shell),该用户帐号的宿主目录作为所有虚拟用户登录后的共同FTP根目录

3.建立支持支持虚拟用户的PAM认证文件

基于虚拟用户的vsftp服务器_休闲_03

?PAM配置文件(名称可以自行定义)主要用于为程序提供用户认证控制,vsftpd服务使用的默认PAM配置文件为/etc/pam.d/vsftpd,可以参考该文件的格式建立新的PAM配置文件,用于虚拟用户认证控制

4.在vsftpd.conf文件中添加支持配置

基于虚拟用户的vsftp服务器_vsftp_04

另外要保证:

local_enable=YES

write_enable=YES

anon_umask=022

5.这时可以先登录验证一下

记得service vsftpd reload

基于虚拟用户的vsftp服务器_vsftp_05 

6.为个别用户建立独立的配置文件

在vsftpd.conf文件中添加用户配置目录支持

user_config_dir=/etc/vsftpd/vu

为用户wendy、natasha建立独立的配置目录及文件

配置文件名与用户名同名

基于虚拟用户的vsftp服务器_休闲_06 

7.重新加载vsftpd的配置

service vsftpd reload

8.使用虚拟用户进行测试

基于虚拟用户的vsftp服务器_用户_07

wendy用户可以登录,并可以浏览、下载文件,但无法上传

natasha用户可以登录,并可以浏览、下载文件,也可以上传