z04,vsftp 虚拟帐户

centos


第一步:安装

#  yum install vsftpd pam* libdb-utils

第二步:配置

#  vim /etc/vsftpd/vsftpd.conf

anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
#anon_upload_enable=YES
#anon_mkdir_write_enable=YES
#anon_other_write_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
chroot_local_user=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd.v
userlist_enable=YES
tcp_wrappers=YES
allow_writeable_chroot=YES

user_config_dir=/etc/vsftpd/user_conf
guest_enable=YES
guest_username=vsftpuser

pasv_enable=YES
pasv_min_port=10000
pasv_max_port=10100

第三步:用户及权限

#  useradd -s /sbin/nologin vsftpuser
#  mkdir -p /home/vsftpuser/rain
#  chown -R vsftpuser:vsftpuser /home/vsftpuser

第四步:设置虚拟帐户

#  vim /etc/vsftpd/vlogin

rain
1234

一行用户名,一行密码,可以添加多个

#  mkdir /etc/vsftpd/user_conf
#  vim /etc/vsftpd/user_conf/rain

local_root=/home/vsftpuser/rain

每个用户一个配置文件,名称要与用户名相同

第五步:配置PAM认证

#  db_load -T -t hash -f /etc/vsftpd/vlogin /etc/vsftpd/vlogin.db
#  chmod 600 /etc/vsftpd/vlogin*
#  vim /etc/pam.d/vsftpd.v

auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vlogin
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vlogin

最后:重启服务后用虚拟用户“rain”及密码“1234”登录,用户根目录为“/home/vsftpuser/rain”



ubuntu


第一步:安装

#  apt install vsftpd pam* db-util

第二步:配置

#  vim /etc/vsftpd.conf

listen=NO
listen_ipv6=YES
local_root=/home/vsftpuser
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd.v
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO
allow_writeable_chroot=YES

guest_enable=YES
guest_username=vsftpuser
user_config_dir=/run/vsftpd/user_conf

pasv_enable=Yes
pasv_min_port=10000
pasv_max_port=10100

第三步:用户及权限

#  useradd -s /sbin/nologin vsftpuser
#  mkdir -p /home/vsftpuser/rain
#  chown -R vsftpuser:vsftpuser /home/vsftpuser

第四步:设置虚拟帐户

#  vim /etc/vsftpd/vlogin

rain
1234

一行用户名,一行密码,可以添加多个

#  mkdir /etc/vsftpd/user_conf
#  vim /etc/vsftpd/user_conf/rain

local_root=/home/vsftpuser/rain

每个用户一个配置文件,名称要与用户名相同

第五步:配置PAM认证

#  db_load -T -t hash -f /run/vsftpd/vlogin /run/vsftpd/vlogin.db
#  chmod 600 /run/vsftpd/vlogin*
#  vim /etc/pam.d/vsftpd.v

auth required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/run/vsftpd/vlogin
account required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/run/vsftpd/vlogin

最后:重启服务后用虚拟用户“rain”及密码“1234”登录,用户根目录为“/home/vsftpuser/rain”



常见问题:


1,530 Login incorrect:登录过程中帐户验证失败。
a,检查‘vsftpd.conf”中的“pam_service_name=vsftpd.v”,
b,检查“/etc/pam.d/vsftpd.v”中的库文件调用

2,500 OOPS:cannot change directory:/home/…
a,检查相关目录及目录权限设置
b,SELinux设置

3,使用windows访问主动模式的vsftpd无法成功
internet选项卡>>"高级"选项卡>>去掉“使用被动FTP”前的勾

你可能感兴趣的:(z04,vsftp 虚拟帐户)