创建虚拟用户密码文件
[root@web01 vsftpd]# pwd
/etc/vsftp
[root@web01 vsftpd]# cat vir_user
shyhftp
shyhftp
webftp
HTCH@trade#2014
生产虚拟用户数据库
[root@web01 vsftpd]# db_load -T -t hash -f vir_user vir_user.db
[root@web01 vsftpd]# chmod 700 /etc/vsftpd/vir_user.db
配置vsftpd.pam验证文件
# 先备份原来文件
[root@web01 vsftpd]# cp /etc/pam.d/vsftpd{,.bak}
# 注释所有的auth和account 然后添加最后2条
[root@web01 vsftpd]# cat /etc/pam.d/vsftpd
#%PAM-1.0
session optional pam_keyinit.so force revoke
#auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
#auth required pam_shells.so
#auth include password-auth
#account include password-auth
session required pam_loginuid.so
session include password-auth
auth required pam_userdb.so db=/etc/vsftpd/vir_user
account required pam_userdb.so db=/etc/vsftpd/vir_user
添加htvftp用户
# 虚拟用户都会映射到此用户后对文件系统进行读写操作
[root@web01 vsftpd]# mkdir /htvftp
[root@web01 vsftpd]# useradd -d /htvftp -s /sbin/nologin -r htvftp
[root@web01 vsftpd]# chown -R htvftp.htvftp /htvftp
修改主conf文件
# 先备份
[root@web01 vsftpd]# cp vsftpd.conf vsftpd.conf.20210727.bak
# 修改主conf文件
[root@web01 vsftpd]# cat vsftpd.conf
anonymous_enable=NO
local_enable=YES
guest_enable=YES
guest_username=htvftp
pam_service_name=vsftpd
user_config_dir=/etc/vsftpd/vsftpd_viruser
allow_writeable_chroot=YES
# 配置项的作用
#禁止匿名用户登录
anonymous_enable=NO
#允许本地用户登录
local_enable=YES
#启用虚拟账户
guest_enable=YES
#把虚拟账户映射到系统账户virftp
guest_username=htvftp
#使用虚拟用户验证(PAM验证)
pam_service_name=vsftpd
#设置存放各虚拟用户配置文件的目录(此目录下与虚拟用户名相同的文件为他的配置文件)
user_config_dir=/etc/vsftpd/vsftpd_viruser
#启用chroot时,虚拟用户根目录允许写入
allow_writeable_chroot=YES
创建虚拟用户配置文件的目录
[root@web01 vsftpd]# mkdir /etc/vsftpd/vsftpd_viruser/
配置webftp的conf文件
# 配置项不要带空格
[root@web01 vsftpd]# vim /etc/vsftpd/vsftpd_viruser/webftp
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_umask=000
local_root=/var/ftp/data/trade/report/
## 配置项说明
# 允许写入
write_enable=YES
#允许浏览FTP目录和下载
anon_world_readable_only=NO
# 允许虚拟用户上传文件
anon_upload_enable=YES
# 允许虚拟用户创建目录
anon_mkdir_write_enable=YES
# 允许虚拟用户执行其他操作(如改名、删除)
anon_other_write_enable=YES
# 上传文件的掩码,如000时,上传目录权限为777,文件权限为666
anon_umask=000
# 指定虚拟用户的虚拟目录(虚拟用户登录后的主目录)
local_root=/var/ftp/data/trade/report/
创建并授权webftp的家目录
[root@web01 vsftpd]# mkdir -p /var/ftp/data/trade/report/
[root@web01 vsftpd]# setfacl -m u:htvftp:rwx /var/ftp/data/trade/report/
配置shyhftp的conf文件
# 配置项不要带空格
[root@web01 vsftpd]# vim /etc/vsftpd/vsftpd_viruser/shyhftp
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_umask=000
local_root=/htvftp/shyhftp/data/trade/shyhftp/
创建并授权shyhftp的家目录
[root@web01 vsftpd]# mkdir -p /htvftp/shyhftp/data/trade/shyhftp/bosc/frombosc/
[root@web01 vsftpd]# mkdir -p /htvftp/shyhftp/data/trade/shyhftp/bosc/tobosc/
[root@web01 vsftpd]# chown -R htvftp:htvftp /htvftp
启动vsftpd并自启动
[root@web01 vsftpd]# systemctl restart vsftpd
[root@web01 vsftpd]# systemctl enable vsftpd
[root@web01 vsftpd]# systemctl status vsftpd
[root@web01 vsftpd]# ps -ef|grep [v]sftpd
root 1849 1 0 20:05 ? 00:00:00 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
[root@web01 vsftpd]# netstat -lntp|grep vsftpd
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 1849/vsftpd
使用filezilla测试连接
# 检查webftp和shyhftp 2用户是否正常使用
# 要是登录shyhftp报错 530 Login incorrect
那就删除
[root@web01 vsftpd]# rm -fr vir_user.db
[root@web01 vsftpd]# db_load -T -t hash -f vir_user vir_user.db
[root@web01 vsftpd]# chmod 700 /etc/vsftpd/vir_user.db
[root@web01 vsftpd]# systemctl restart vsftpd
[root@web01 vsftpd]# systemctl status vsftpd
修改managerserver
[trade@trade01 testapp]$ ps -ef|grep manageserver
然后kill掉
# 修改之前先备份原来的配置文件
[trade@trade01 testapp]$ vim manageserver/appConfig.properties
.....
report.export.dir=/data/trade/report
#/var/ftp/home/www/report/
ftp.base.dir=/var/ftp/data/trade/report/
ftp.host=web01
ftp.port=21
ftp.user=webftp
ftp.pwd=HTCH@trade#2014
.....
启动服务
修改funderver
[trade@trade01 testapp]$ ps -ef|grep fund
然后kill掉
# 修改之前先备份原来的配置文件
##ftp-bosc(上海银行需要连接此FTP服务器,需提前创建好需要的目录)
[trade@trade01 fundserver]$ vim appConfig.properties
....
bosc.ftp.base.dir=/data/trade/shyhftp/
bosc.ftp.tobosc=bosc/tobosc/
bosc.ftp.host=192.168.66.45
bosc.ftp.port=21
bosc.ftp.user=shyhftp
bosc.ftp.pwd=shyhftp
...
启动服务
标签:ftp,enable,用户,vsftpd,虚拟,web01,YES,root
From: https://www.cnblogs.com/ycmyay/p/17383840.html