基于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安装
yum -y install mariadb-serversystemctl 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; "

基于MySql验证的vsftpd虚拟用户
文章图片


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-develwget http://prdownloads.sourceforge.net/pam-mysql/pam_mysql-0.7RC1.tar.gztar xf pam_mysql-0.7RC1.tar.gzcd pam_mysql-0.7RC1/./configure --with-pam-mods-dir=/lib64/security make install


2.2 建立pam认证所需文件
cat > /etc/pam.d/vsftpd.mysql<
注意:以上参考 README文档
crypt 加密方式:
0表示不加密
1表示crypt(3)加密
2表示使用mysql password()函数加密
3表示md5加密
4表示sha1加密

2.3 建立vsftpd用户
mkdir -pv /data/ftproot/uploaduseradd -d /data/ftproot -s /sbin/nologin -r vusersetfacl -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.confecho "guest_enable=YES" >> /etc/vsftpd/vsftpd.confecho "guest_username=vuser" >> /etc/vsftpd/vsftpd.conf


2.5 重启vsftpd服务
systemctl enable --now vsftpd

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

    推荐阅读