千家信息网

Centos 7安装配置 vsftp服务 (虚拟用户登录)

发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,一、实验环境操作系统: CentOS 7二、安装关闭SELINUX:vim /etc/selinux/configSELINUX=disable临时关闭:setenforce 0三、安装vsftpd服
千家信息网最后更新 2025年12月02日Centos 7安装配置 vsftp服务 (虚拟用户登录)

一、实验环境
操作系统: CentOS 7

二、安装

关闭SELINUX:

vim /etc/selinux/configSELINUX=disable

临时关闭:

setenforce 0

三、安装vsftpd服务:

1.使用安装yum安装vsftp:

yum -y install vsftp

2.备份vsftp主配置文件:

cp /etc/vsftpd/vsftpd.conf{,.bak}

四、配置虚拟用户访问vsftp服务:

1.创建虚拟用户密码文件:

user1password1user2password2

2.生成虚拟用户数据库:

yum -y install libdb-utilsdb_load -T -t hash -f /etc/vsftpd/vir_user /etc/vsftpd/vir_user.dbchmod 700 /etc/vsftpd/vir_user.db

3.配置验证文件:

修改前先配置文件

cp /etc/pam.d/vsftpd{,.bak}

将auth及account的所有配置行均注释掉,添加如下两行

vim /etc/pam.d/vsftpdauth                 required     pam_userdb.so   db=/etc/vsftpd/vir_user account              required     pam_userdb.so   db=/etc/vsftpd/vir_user

4.增加一个系统用户:

mkdir /ftprootuseradd -d /ftproot -s /sbin/nologin virftpchown -R virftp:virftp /ftproot

5.配置vsftp主配置文件:

vim /etc/vsftpd/vsftpd.conf

#禁止匿名用户登录

anonymous_enable=NO#允许本地用户登录local_enable=YES#启用虚拟账户 guest_enable=YES#把虚拟账户映射到系统账户virftp               guest_username=virftp#使用虚拟用户验证(PAM验证)pam_service_name=vsftpd#设置存放各虚拟用户配置文件的目录(此目录下与虚拟用户名相同的文件为他的配置文件)user_config_dir=/etc/vsftpd/vsftpd_viruser#启用chroot时,虚拟用户根目录允许写入allow_writeable_chroot=YES
  1. 配置虚拟用户各自的配置文件:

创建'虚拟用户配置文件'的存放目录

mkdir /etc/vsftpd/vsftpd_viruser/

创建和配置虚拟用户各自的配置文件,文件名称是'虚拟用户名

vim /etc/vsftpd/vsftpd_viruser/user1#允许写入write_enable=YES#允许浏览FTP目录和下载anon_world_readable_only=NO#允许虚拟用户上传文件anon_upload_enable=YES#允许虚拟用户创建目录anon_mkdir_write_enable=YES#允许虚拟用户执行其他操作(如改名、删除)anon_other_write_enable=YES#上传文件的掩码,如022时,上传目录权限为755,文件权限为644anon_umask=022#指定虚拟用户的虚拟目录(虚拟用户登录后的主目录)local_root=/ftproot/admin/

创建虚拟用户的根目录,要保证虚拟用户映射的系统用户,对这个根目录有读写权限

mkdir -p /ftproot/admin/chown -R virftp.virftp /ftproot/admin/

里面内容全部注销掉

vim /etc/vsftpd/ftpusers

五、测试配置结果:

1.重启vsftpd服务

systemctl restart vsftpdsystemctl enable vsftpd

2.关闭防火墙:

setenforce 0systemctl stop firewalld

3.利用FileZilla工具连接测试

六、各配置文件说明:

/etc/vsftpd/vsftpd.conf                             :vsftpd的主配置文件/etc/vsftpd/vir_user                                   :虚拟用户的账号密码文件  /etc/vsftpd/vsftpd_viruser/user1            :虚拟用户'user1'的配置文件/etc/pam.d/vsftpd                                     :启用虚拟用户验证功能的配置文件
0