各位用户为了找寻关于基于MySql验证的vsftpd虚拟用户的资料费劲了很多周折。这里教程网为您整理了关于基于MySql验证的vsftpd虚拟用户的相关资料,仅供查阅,以下为您介绍关于基于MySql验证的vsftpd虚拟用户的详细内容
目录
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安装
? 1 2yum -y install mariadb-server
systemctl enable
--now mariadb.service
1.2 建表建库建用户
? 1 2 3 4 5 6 7mysql -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 创建远程连接账户
? 1 2mysql -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
? 1yum install -y vsftpd
2.2 安装pam_mysql
? 1 2 3 4 5 6yum -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认证所需文件
? 1 2 3 4cat > /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用户
? 1 2 3mkdir -pv /data/ftproot/upload
useradd -d /data/ftproot -s /sbin/nologin -r vuser
setfacl -m u:vuser:rwx /data/ftproot/upload
2.4 修改vsftpd配置文件
? 1 2 3 4mkdir /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服务
? 1systemctl enable
--now vsftpd
到此这篇关于基于mysql验证的vsftpd虚拟用户的文章就介绍到这了,更多相关mysql vsftpd虚拟用户内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
原文链接:https://blog.csdn.net/qq_29974229/article/details/121098471