需求:
后端目标ftp服务器,位于中转ftp服务器之后。
1、安装vsftp rpm包
#yum –y install vsftpd
2、建立虚拟用户口令库文件
#cd /etc/vsftpd/
#vim vuser.txt
zhanguo
zhanguo123
jialebi
jialebi123
奇数行是用户名,偶数是密码
3、生成vsftpd的认证文件
#db_load -T -t hash -f /etc/vsftpd/vuser.txt /etc/vsftpd/vuser.db (生成认证文件)
# chmod 600 /etc/vsftpd/vuser.db (修改权限)
4、建立虚拟用户所需的PAM配置文件
修改/etc/pam.d/vsftpd文件,将默认配置全部用“#”注释,并在最后添加
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vuser
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vuser
5、建立一个本地帐户,使虚拟用户映射到此本地帐户;建立虚拟用户所要访问的目录并设置相应权限
#useradd -d /var/ftp/vuser vuser
指定vuser的宿主目录为/var/ftp/vuser,同样也是映射的虚拟用户的宿主目录,即登录的家目录。
(#chmod 500 /var/ftp/vsuer)
一般/var/ftp/vuser目录的权限为700,所属用户和所属组为vuser,可根据需要修改权限。
6、修改vsftpd.conf配置文件
#vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO 禁用匿名用户登录
local_enable=YES 启用本地用户登录(本质上是为了能够让虚拟用户登录)
chroot_local_user=YES 将所有本地用户限制在自己的目录中
guest_enable=YES 开启虚拟账户
guest_username=vuser 将虚拟用户映射为本地vuser用户
pam_service_name=vsftpd 配置vsftpd使用的PAM模块为vsftpd
user_config_dir=/etc/vsftpd/user_conf 设置虚拟账户子配置文件的主目录为 /user_conf
7、创建/etc/vsftpd/ user_conf,创建虚拟用户配置文件,与虚拟账户同名,添加配置行
#mkdir /etc/vsftpd/ user_conf
#vim /etc/vsftpd/user_conf/zhanguo
anon_world_readable_only=NO 浏览FTP目录和下载
anon_upload_enable=YES 允许上传
anon_mkdir_write_enable=YES 建立和删除目录
anon_other_write_enable=YES 改名和删除文件
local_root=/var/ftp/vuser/zhanguo 用户登陆的家目录,可以指定任意目录
8、创建用户登录的家目录,并修改所属者
#cd /var/ftp/vuser
#mkdir zhanguo
# chown vuser zhanguo/