PHP小丑 发表于 2021-12-2 10:52:52

基于MySql验证的vsftpd虚拟用户

这篇文章主要介绍了基于MySql验证的vsftpd虚拟用户,文章包括mysql安装及ftp服务器安装过程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
目录

[*]1. mysql安装

[*]1.2 建表建库建用户
[*]1.3 创建远程连接账户

[*]2. 安装ftp服务器

[*]2.1 安装vsftpd
[*]2.2 安装pam_mysql
[*]2.2 建立pam认证所需文件
[*]2.3 建立vsftpd用户
[*]2.4 修改vsftpd配置文件
[*]2.5 重启vsftpd服务


1. mysql安装


yum -y install mariadb-server
systemctl enable --now mariadb.service

1.2 建表建库建用户


mysql -e "create database vsftpd;use vsftpd;
create table users (id int auto_increment not null primary key,
name char(50) binary not null,
password char(48) binary not null);
insert into users(name,password) values('qiu',password('123456'));
insert into users(name,password) values('zhang',password('654321'));"
mysql -e "select * from vsftpd.users;"


1.3 创建远程连接账户


mysql -e "create user vsftpd@'192.168.31.%' identified by 'pana#123';"
mysql -e "grant all on vsftpd.* to vsftpd@'192.168.31.%';"

2. 安装ftp服务器

2.1 安装vsftpd


yum install -y vsftpd

2.2 安装pam_mysql


yum -y install vsftpd gcc gcc-c++ make mariadb-devel pam-devel
wget http://prdownloads.sourceforge.net/pam-mysql/pam_mysql-0.7rc1.tar.gz
tar xf pam_mysql-0.7rc1.tar.gz
cd pam_mysql-0.7rc1/
./configure --with-pam-mods-dir=/lib64/security
make install

2.2 建立pam认证所需文件


cat > /etc/pam.d/vsftpd.mysql<<eof
auth required pam_mysql.so user=vsftpd passwd=pana#123 host=mysqlserver db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2
account required pam_mysql.so user=vsftpd passwd=pana#123 host=mysqlserver db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2
eof
注意:以上参考 readme文档
crypt 加密方式:
0表示不加密
1表示crypt(3)加密
2表示使用mysql password()函数加密
3表示md5加密
4表示sha1加密

2.3 建立vsftpd用户


mkdir -pv /data/ftproot/upload
useradd -d /data/ftproot -s /sbin/nologin -r vuser
setfacl -m u:vuser:rwx /data/ftproot/upload

2.4 修改vsftpd配置文件


mkdir /etc/vsftpd/conf.d/
sed -eri "s#(pam_service_name=vsftpd)#\1.mysql#" /etc/vsftpd/vsftpd.conf
echo "guest_enable=yes" >> /etc/vsftpd/vsftpd.conf
echo "guest_username=vuser" >> /etc/vsftpd/vsftpd.conf

2.5 重启vsftpd服务


systemctl enable --now vsftpd
到此这篇关于基于mysql验证的vsftpd虚拟用户的文章就介绍到这了,更多相关mysql vsftpd虚拟用户内容请搜索CodeAE代码之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持CodeAE代码之家!
原文链接:https://blog.csdn.net/qq_29974229/article/details/121098471

http://www.zzvips.com/article/209028.html
页: [1]
查看完整版本: 基于MySql验证的vsftpd虚拟用户