基于MySql验证的vsftpd虚拟用户

吾爱主题 阅读:146 2024-04-02 08:06:56 评论:0
目录
  • 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 2 yum -y install mariadb-server systemctl enable --now mariadb.service

1.2 建表建库建用户

?
1 2 3 4 5 6 7 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 创建远程连接账户

?
1 2 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

?
1 yum install -y vsftpd

2.2 安装pam_mysql

?
1 2 3 4 5 6 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认证所需文件

?
1 2 3 4 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用户

?
1 2 3 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配置文件

?
1 2 3 4 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服务

?
1 systemctl enable --now vsftpd

到此这篇关于基于mysql验证的vsftpd虚拟用户的文章就介绍到这了,更多相关mysql vsftpd虚拟用户内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/qq_29974229/article/details/121098471

可以去百度分享获取分享代码输入这里。
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

【腾讯云】云服务器产品特惠热卖中
搜索
标签列表
    关注我们

    了解等多精彩内容