centos 7.6实现基于mysql数据库验证的vsftpd虚拟用户-超简单版本

news/2024/8/26 3:25:49

环境: 两台服务器:
一台vsftpd服务器:192.168.6.129 一台数据库服务器:192.168.6.130
开始:

1.在192.168.6.130上安装Mariadb_server 数据库

yum install Mariadb-server -y

2.进入数据库

[root@Centos7 ~]# mysql -uroot -p123456
2.1创建数据库
  MariaDB [(none)]> create database vsftpd;
  2.2创建数据表
  MariaDB [vsftpd]> CREATE TABLE users (
    -> id INT AUTO_INCREMENT NOT NULL PRIMARY KEY,
    -> name CHAR(50) BINARY NOT NULL,
    -> password CHAR(48) BINARY NOT NULL
-> );
  2.3 创建对应的用户名以及授权192.168.6.%网段IP访问
#添加FTP用户
insert users (name,password) value('tom',password(123456)); 
#添加FTP用户
insert users (name,password) value('ftpuser2',password('magedu'));
#创建授权用户
grant all on *.* to vsftpd@'192.168.6.%' identified by 'centos';
#刷新
flush privileges;

3.在192.168.6.129vsftpd主机服务器上安装

[root@Centos7 ~]# yum install -y vsftpd

编译安装pam_mysql-0.7RC1.tar.gz
在这里插入图片描述

[root@Centos7 pam_mysql-0.7RC1]# tar -xvf pam_mysql-0.7RC1.tar.gz

安装对应的源码依赖包

[root@Centos7 data]# cd pam_mysql-0.7RC1/
[root@Centos7 pam_mysql-0.7RC1]# ./configure  --with-pam-mods-dir=/lib64/security/
[root@Centos7 pam_mysql-0.7RC1]# make install

安装完成之后会在/lib64/security/ 目录下生成如图所示,即表示成功
在这里插入图片描述4.创建pam认证文件,允许192.168.6.130数据库服务器连接

[root@Centos7 pam.d]# vim vsftpd.mysql

auth required pam_mysql.so user=vsftpd passwd=centos host=192.168.6.130 db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2

account required pam_mysql.so user=vsftpd passwd=centos host=192.168.6.130 db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2

5.创建FTP虚拟用户与共享目录,并修改 /etc/vsftpd/vsftpd.conf

 创建虚拟用户
[root@Centos7 pam.d]# useradd -d /data/ftproot -s /sbin/nologin vuser
  设置FTP目录权限
[root@Centos7 data]# chmod 555 /data/ftproot/
创建ftproot/upload目录
[root@Centos7 ftproot]# mkdir upload

在这里插入图片描述
设置上传目录权限

[root@Centos7 data]# setfacl -m u:vuser:rwx  /data/ftproot/upload

修改/etc/vsftpd/vsftpd.conf

 [root@Centos7 data]# vim /etc/vsftpd/vsftpd.conf

	pam_service_name=vsftpd.mysql    #修改此项
	#添加以下三项
	guest_enable=YES
	guest_username=vuser
	user_config_dir=/etc/vsftpd/vusers.d/    #独立用户配置目录

在这里插入图片描述连接成功和访问目录正常
在这里插入图片描述注意问题:
在这里插入图片描述参考:https://www.cnblogs.com/qiuhom-1874/p/12317903.html

参考网址:https://www.cnblogs.com/FengGeBlog/p/13032353.html


http://www.niftyadmin.cn/n/2199340.html

相关文章

小白练习篇-centos 7.6通过NFS实现服务器/www的共享访问功能

实验环境: 系统:centos 7.6 NFS服务器192.168.6.129 客户机192.168.6.130 1.在192.168.6.129安装nfs-utils [rootCentos7 /]# yum install -y nfs-utils2.配置nfs共享/www目录 [rootCentos7 /]# vim /etc/exports /www 192.168.6.130(rw,root_squash,…

20189312任方园 网络攻防第一次作业

first homework for 网络攻防 作业一:你对于师生关系的理解,希望是哪种关系? 我认为老师就像辛勤的园丁,在自己的岗位上为学生奉献自己的知识。我希望的师生关系是:学生从内心尊重老师,不仅是学习老师传授给…

NFS共享服务练习之配置samba共享并且实现/www目录共享

实验环境: 系统:centos 7.6 配置: Smb服务器192.168.6.129 客户机192.168.6.130 简介: 创建/www共享目录 [rootCentos7 ~]# mkdir /www1.安装samba 192.168.6.129 [rootCentos7 ~]# yum install -y samba2.配置samba共享/www目…

小白练习篇之使用rsync+inotify实现/www目录实时同步

实验环境: rsync服务器是192.168.6.129,客户机上192.168.6.130 1.在192.168.6.129服务器上安装inotify-tools [rootCentos7 /]# yum install inotify-tools -y备注:inotify是内核的一个功能,我们要使用内核的功能,必…

LVS相关知识点

LVS专有名词定义 Director/VS:负责调度集群的主机;也简称调度器、分发器 DIP:与内部主机RIP通信的IP,在Director主机上 RS:Real Server(lvs),真正的服务器,集群中各节点 RIP:RealSe…

Linux 通俗易懂的LVS-DR原理以及实现方法

主机:四台,一台VS服务器,二台RS服务器,一台客户端服务器 网络配置: 调度器: dr 192.168.6.129 VIP:192.168.6.100(lo:1) 真实后端服务器 RIP:rs1 192.168.6.130 rs2:192.168.6.…

centos 7.6 实现LVS+Keepalived高可用性能

环境需求: 主机:四台, 两台LVSKeepalived的主备服务器 lvs1:192.168.6.129 lvs2:192.168.6.133 两台RS服务器 RS1:192.168.6.131 RS2:192.168.6.132 客户端:192.168.6.130 软件包:keepalived,ipvsadm&…

vue项目引用font-awesome字体打包路径报错

正常引入font-awesome字体,打包后字体引用路径报错。 字体文件放在static/fonts目录下,但是浏览器中显示的引用路径是: static/css/static/fonts/... 在项目build/utils.js文件中,找到 ExtractTextPlugin.extract({use: loaders,f…