ubuntu server配置vsftpd,不是很麻烦,但是容易忘记(急性不好T-T),所以记录以下,方便以后查阅…….
大致步骤是这样滴:
- 创建虚拟用户数据库文件
- 配置PAM验证
- 创建本地用户映射
- 设置用户的目录和权限
一、创建虚拟用户数据库文件
1.首先,你需要下载db-util,这是一个可以创建数据库文件的工具
2.然后创建一个空的文件,第一行输入用户名,第二行输入密码记得中间要过行哈~
3.执行以下命令创建db文件:
sudo db_load -T -t hash -f /home/beasy/login_user /etc/vsftpd_login.db
其中,-T选项知道db_load命令通过文本文件创建数文件;-t hash选项指定哈希表数据结构;-f指定创建数据库文件名称
二、配置PAM验证
1./etc/pam.d/vsftpd是vsftp默认使用的PAM验证文件,通过/etc/vsftpd.conf文件的pam_service_name设置项可以更改
2.把整个/etc/pam.d/vsftpd的所有配置项都注释掉,然后在最后添加下面内容:
auth required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login
account required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login
注意:有些人的在lib下没有x86_64-linux-gnu/这个目录,具体以pam_userdb.so所在的目录为准
三、创建本地用户映射
编辑vsftpd的配置文件/etc/vsftpd.conf:
1.我们需要把vsftpd的虚拟用户映射到一个指定的非特权用户,方便起见可以直接用vsftpd安装时自动创建的ftp用户,修改:
2.在修改或者添加下面几行配置项:
anonymous_enable=NO #不允许匿名用户登录
local_enable=YES #允许本地用户登陆
chroot_local_user=YES #将用户限制在其主目录里面
guest_enable=YES #激活访客身份
四、设置用户目录和权限
1.在/etc/vsftpd.conf文件里面设置虚拟用户的权限配置目录:
2.接着在etc目录下创建目录vsftpd_user_conf,然后在此目录下以虚拟用户的用户名创建一个空的文本文件,并且输入以下内容:
local_root=/var/www #指定该虚拟用户的主目录
virtual_use_local_privs=YES ##虚拟用户具有写权限(上传、下载、删除、重命名)
其他权限配置大家可自行度娘谷哥…这里我就不一一列举了~~