ubuntu配置vsftpd

ubuntu server配置vsftpd,不是很麻烦,但是容易忘记(急性不好T-T),所以记录以下,方便以后查阅…….

大致步骤是这样滴:

  1. 创建虚拟用户数据库文件
  2. 配置PAM验证
  3. 创建本地用户映射
  4. 设置用户的目录和权限

一、创建虚拟用户数据库文件

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用户,修改:

guest_username=ftp

2.在修改或者添加下面几行配置项:

anonymous_enable=NO          #不允许匿名用户登录
local_enable=YES             #允许本地用户登陆
chroot_local_user=YES        #将用户限制在其主目录里面
guest_enable=YES             #激活访客身份

四、设置用户目录和权限

1.在/etc/vsftpd.conf文件里面设置虚拟用户的权限配置目录:

user_config_dir=/etc/vsftpd_user_conf

2.接着在etc目录下创建目录vsftpd_user_conf,然后在此目录下以虚拟用户的用户名创建一个空的文本文件,并且输入以下内容:

local_root=/var/www               #指定该虚拟用户的主目录
virtual_use_local_privs=YES       ##虚拟用户具有写权限(上传、下载、删除、重命名)

其他权限配置大家可自行度娘谷哥…这里我就不一一列举了~~

end

你可能感兴趣的:(服务器,linux)