MySQL中怎么利用pam_mysql模块实现vsftpd虚拟用户
发表于:2024-09-27 作者:千家信息网编辑
千家信息网最后更新 2024年09月27日,MySQL中怎么利用pam_mysql模块实现vsftpd虚拟用户,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。一、实验
千家信息网最后更新 2024年09月27日MySQL中怎么利用pam_mysql模块实现vsftpd虚拟用户
MySQL中怎么利用pam_mysql模块实现vsftpd虚拟用户,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
一、实验环境的准备
1. 先下载需要用到的软件和依赖包
[root@localhost ~]# yum -y install mariadb-server mariadb-devel pam-devel gcc-c++ vsftpd
2. 安装pam_mysql模块(Plugable Authentication Module 插件式认证模块)
[root@localhost ~]# tar zxf pam_mysql-0.7RC1.tar.gz [root@localhost ~]# cd pam_mysql-0.7RC1 [root@localhost pam_mysql-0.7RC1]# ./configure --with-mysql=/usr --with-openssl --with-pam-mods-dir=/lib/pam_mysql/ [root@localhost pam_mysql-0.7RC1]# make [root@localhost pam_mysql-0.7RC1]# make install
3. 启动相关服务
[root@localhost ~]# systemctl start mariadb [root@localhost ~]# systemctl start vsftpd [root@localhost ~]# systemctl enable mariadb [root@localhost ~]# systemctl enable vsftpd
4.数据库安全设置
[root@localhost ~]# mysql_secure_installation Set root password? [Y/n] Y Remove anonymous users? [Y/n] Y Disallow root login remotely? [Y/n] Y Remove test database and access to it? [Y/n] Y Reload privilege tables now? [Y/n] Y
二、创建虚拟用户
1.创建数据库和表(用于存储虚拟用户的信息)
[root@localhost ~]# mysql -u root -p Enter password: MariaDB [(none)]> create database testdb; #创建测试数据库 MariaDB [(none)]> grant select on testdb.* to linos@localhost identified by 'linux'; #创建用户 MariaDB [(none)]> flush privileges; MariaDB [(none)]> use testdb; Database changed MariaDB [testdb]> create table users(id int AUTO_INCREMENT NOT NULL,name char(20) binary NOT NULL,password char(20) binary NOT NULL,primary key(id)); #创建存储用户的表
2.添加虚拟用户
MariaDB [testdb]> insert into users(name,password) values('tom','linux'); #创建用户 MariaDB [testdb]> insert into users(name,password) values('sam','linux'); #创建用户 MariaDB [testdb]> flush privileges;
三、配置vsftp服务
1.创建pam认证文件
[root@localhost ~]# cat /etc/pam.d/vsftpd.mysql auth required /lib/pam_mysql/pam_mysql.so user=linos passwd=linux host=localhost db=testdb table=users usercolumn=name passwdcolumn=password crypt=0 account required /lib/pam_mysql/pam_mysql.so user=linos passwd=linux host=localhost db=testdb table=users usercolumn=name passwdcolumn=password crypt=0
2.修改vsftp配置文件,主要需要修改下面的配置
anonymous_enable=NO #不允许匿名用户登录 local_enable=YES #允许系统用户登录 write_enable=YES #允许系统用户有写权限 anon_upload_enable=NO #不允许匿名用户上传文件 anon_mkdir_write_enable=NO #不允许匿名用户创建目录 chroot_local_user=YES #默认情况下用系统用户登录ftp之后,用户可以cd到任何目录,这样会有一定的安全隐患,启用这个选项可以把用户禁锢在自己的家目录 guest_enable=YES #启用这个选项可以开启非匿名用户重映射为系统用户的功能 guest_username=virtuser #映射的系统用户 allow_writeable_chroot=YES #从2.3.5版本之后,vsftpd增强了安全检查,如果用户被限定在了其主目录下,则该用户的主目录不能再具有写权限了!如果检查发现还有写权限,就会报该错误。 要修复这个错误,可以用命令chmod a-w /home/username去除用户主目录的写权限,或者你可以在vsftpd的配置文件中增加下列一项:allow_writeable_chroot=YES pam_service_name=vsftpd.mysql #指定插件pam模块的配置文件
四、验证
1.重启服务
[root@localhost ~]# systemctl restart mariadb [root@localhost ~]# systemctl restart vsftpd
2.添加虚拟用户映射到的系统用户
[root@localhost ~]# useradd -s /sbin/nologin virtuser #指定shell为/sbin/nologin,禁止用户登录系统
3.登录虚拟用户验证
4.验证用户映射
[root@localhost virtuser]# pwd /home/virtuser [root@localhost virtuser]# mkdir pub [root@localhost virtuser]# touch pub/test #virtuser家目录下创建test文件,然后用sam用户登录ftp,可以看到映射到了virtuser用户的家目录
5.配置授权权限
有时候我们需要针对不同的虚拟用户设置不同的权限
[root@localhost ~]# tail -1 /etc/vsftpd/vsftpd.conf user_config_dir=/etc/vsftpd/users_permission/ [root@localhost ~]# mkdir /etc/vsftpd/users_permission/ [root@localhost ~]# cd /etc/vsftpd/users_permission/ [root@localhost users_permission]# echo #anon_upload_enable=YES >> sam [root@localhost home]# chmod -R 777 virtuser/
在启用匿名用户上传权限之前可以看到是禁止上传的,使用sam用户
开启匿名用户上传功能,使用sam用户上传一个文件
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。
用户
目录
文件
权限
系统
登录
配置
模块
安全
数据
数据库
服务
验证
不同
功能
插件
错误
存储
帮助
检查
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
基因组数据库
加强网络安全防护网
常见的计算机网络安全威胁
网络安全保障问世
重庆安卓软件开发一般要多少钱
山西首届网络安全
乡镇政府网络安全汇报材料
智能养老软件开发电话
登录qq服务器链接超时
服务器最大的上市公司
网络安全宣传周思想汇报
深圳市圣达维软件开发
网络安全观影观后感
网易我的世界躲猫猫在哪个服务器
软件开发 组织结构
影梭服务器 密码
计算机专业方向有软件开发吗
武装突袭3搜索服务器慢
合肥龙芯服务器如何挑选
DNS服务器可能故障
中科可控服务器产地是哪
服务器估价
中美网络安全达成协议
闽东畲族青草药数据库
属于网络安全控制技术的是
共建网络安全文明家园图片
华为最新的电脑服务器系统
华为v9网络安全设置
赴国外参加网络安全比赛审批
网络数据库建表