接2020-10-15安装
vsftp虚拟用户登陆
创建本地用户映射虚拟用户
useradd -d /home/ftpuser -s /sbin/nologin ftpuser
创建生成数据库文件 vi /etc/vsftpd/ftpusers
文件第一行 是ftp 虚拟用户,第二行是密码,第三行是用户名,以此类推
/etc/vsftpd/vsftpd_user_conf 下创建以用户名为名称的文件
vi /etc/vsftpd/vsftpd_user_conf/zhangsan
写入以下内容
local_root=/home/ftpuser/zhangsan
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
创建文件存放地址,授权
mkdir -p /home/ftpuser/{zhangsan,用户名}
chown -R ftpuser:ftpuser /home/ftpuser
生成数据库文件
db_load -T -t hash -f /etc/vsftpd/ftpuser /etc/vsftpd/vsftpd_login.db
授权 chmod 700 /etc/vsftpd/vsftpd_login.db
配置pam 验证文件
vi /etc/pam.d/vsftpd
在行首加入下面的语句(32 的lib64改成lib,redhat版本不是下面这个)其他的注释掉
auth required pam_userdb.so db=/etc/vsftpd/vsftpd_login
account required pam_userdb.so db=/etc/vsftpd/vsftpd_login
修改/etc/vsftpd/vsftpd.conf 配置文件 :%d 清空所有内容
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=NO
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
# 启用pam认证
pam_service_name=vsftpd
# 启用虚拟用户
guest_enable=YES
# 虚拟用户映射系统用户ftpuser
guest_username=ftpuser
# 虚拟用户与本地用户权限相同
virtual_use_local_privs=YES
# 虚拟用户配置文件目录
user_config_dir=/etc/vsftpd/vsftpd_user_conf
# -----------(可选)访问权限控制----------------
# 将用户目录限制为根目录(看不到根目录的其他目录)
allow_writeable_chroot=YES
# 是否禁止本地用户切换到家目录上级目录,绑定根目录为用户的根目录
chroot_local_user=NO
# 是否启用chroot列表文件,写入文件中的用户将锁定家目录
chroot_list_enable=NO
# 指定用户列表文件的文件路径
chroot_list_file=/etc/vsftpd/chroot_list
重启服务
/etc/init.d/vsftpd restart