redhat5.8+pam+mysql+vsftp(提供软件包可以到 百度云盘下载 账号 pankuo1@sina.cn 密码pk492940446)

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

              vsftp+pam+mysql


vsftpd是目前在linux系统环境下表现最为优越的安全,稳定,快速的性能,加上vsftpd的可读性强、易配置,受到更为广泛的应用。vsftpd有三种实现的形式,分别为:

1、匿名用户形式:在默认安装的情况下,系统只提供匿名用户访问;


2本地用户形式:以/etc/passwd中的用户名为认证方式;


3、虚拟用户形式:支持将用户名和口令保存在数据库文件或数据库服务器中。


这次运用第三种虚拟用户形式在数据库中保存vsftp的登陆的账号和密码。用pam验证登陆


1.安装pam_mysql-0.7RC1.tar.gz

# tar xfpam_mysql-0.7RC1.tar.gz

# cd pam_mysql-0.7RC1

# ./configure--with-openssl

# make && makeinstall        #如果报错,安装mysql-devel

# ls /usr/lib/security/

classpath.securitypam_mysql.la pam_mysql.so

# ln -s/usr/lib/security/pam_mysql.so /lib/security/pam_mysql.so

2.创建一个必要的本地用户虽说是虚拟用户,不过,由于虚拟用户的信息存储在MySQL数据库中,所以还是需要一个能够读取MySQL数据库的本地用户.

# useradd -s/sbin/nologin virtual

# mysql -u root -p

Enter password:

mysql> CREATE DATABASEvsftpd;

Query OK, 1 row affected(0.02 sec)

mysql> USE vsftpd;

Database changed

3.创建用于存储虚拟用户信息的表users

mysql> CREATE TABLEusers (username varchar(20) NOT NULL,password varchar(40) NOT NULL,PRIMARY KEY(username)) TYPE=MyISAM;

Query OK, 0 rows affected,1 warning (0.01 sec)

4.让本地用户virtual能读取vsftpd数据库的users表的内容

mysql> grant selecton vsftpd.users to virtual@localhost identified by '123456';

Query OK, 0 rowsaffected (0.00 sec)

mysql> flushprivileges;

Query OK, 0 rowsaffected (0.00 sec)

5.建立虚拟用户

mysql> insert intousers values ('vu1','123');

Query OK, 1 row affected(0.00 sec)

mysql> insert intousers values ('vu2','123');

Query OK, 1 row affected(0.00 sec)

mysql> insert intousers values ('vu3','123');

Query OK, 1 row affected(0.00 sec)

mysql> quit

Bye

6.配置vsftpdPAM验证

# vim/etc/pam.d/vsftpd_mysql

auth requiredpam_mysql.so user=virtual passwd=123456 host=localhost db=vsftpd table=usersusercolumn=username passwdcolumn=password crypt=0

account requiredpam_mysql.so user=virtual passwd=123456 host=localhost db=vsftpd table=usersusercolumn=username passwdcolumn=password crypt=0

7.配置ftp/etc/vsftpd/vsftpd.conf

pam_service_name=vsftpd_mysql#pam_service_name=vsftpd_mysql  要与/etc/pam.d/配置文件的文件名相同

guest_enable=YES               #guest_enable=YES 开启虚拟用户功能

guest_username=virtual            #guest_username=virtual 指定虚拟用户使用的系统用户

virtual_use_local_privs=YES       #virtual_use_local_privs 为虚拟用户设置不同权限设置为 YES 时,虚拟用户使用与本地用相同权限设置为 NO 时,虚拟用户使用与匿名用户相同权限


wKioL1M1Ts3jMbGZAAC8GblGFYU164.jpg

可以到 百度云盘下载 账号 pankuo1@sina.cn密码pk492940446




      本文转自潘阔 51CTO博客,原文链接:http://blog.51cto.com/pankuo/1386205,如需转载请自行联系原作者






相关文章
|
17天前
|
关系型数据库 MySQL 数据库
mysql卸载、下载、安装(window版本)
mysql卸载、下载、安装(window版本)
|
1月前
|
关系型数据库 MySQL 数据库
MySQL忘记root密码、远程无法连接的解决方法
MySQL忘记root密码、远程无法连接的解决方法
|
3月前
|
Ubuntu 关系型数据库 MySQL
百度搜索:蓝易云【ubuntu下Mysql安装与root密码重置教程】
请注意,以上步骤是针对Ubuntu系统的。如果你使用的是其他Linux发行版,请相应地调整命令。
110 1
|
3月前
|
安全 Linux 网络安全
百度搜索:蓝易云【centos7系统添加用户、密码,以及修改端口教程】
请牢记,对系统进行任何更改都需要谨慎行事。在执行这些操作之前,最好备份重要的数据和配置文件,并确保您具有足够的权限和知识来进行这些更改。如果在操作过程中遇到任何问题,请务必小心并及时修复,以免影响系统的稳定性和安全性。
69 2
|
4月前
|
Java 数据安全/隐私保护 Spring
Spring案例:百度网盘密码数据兼容处理
Spring案例:百度网盘密码数据兼容处理
42 0
|
1月前
|
SQL 关系型数据库 MySQL
阿里云MySQL数据库价格、购买、创建账号密码和连接数据库教程
阿里云数据库使用指南:购买MySQL、SQL Server等RDS实例,选择配置和地区,完成支付。创建数据库和账号,设置权限。通过DMS登录数据库,使用账号密码访问。同地域VPC内的ECS需将IP加入白名单以实现内网连接。参考链接提供详细步骤。
371 3
|
3月前
|
Ubuntu Shell 数据安全/隐私保护
百度搜索:蓝易云【Ubuntu密码忘记怎么办 Ubuntu重置root密码方法】
完成上述步骤后,Ubuntu系统的root密码应该已经被成功重置为你设置的新密码。请确保在重置密码后牢记新密码。
51 0
|
4月前
|
Java Linux 数据安全/隐私保护
百度搜索:蓝易云【centos7系统安装elasticsearch8.7.0,并设置密码访问教程。】
现在,您已经成功安装并设置密码访问Elasticsearch 8.7.0。您可以使用设置的密码来访问和管理Elasticsearch实例。
163 1
|
1月前
|
关系型数据库 MySQL
一键下载MySQL安装包-batch脚本
一键下载MySQL安装包-batch脚本
33 2
|
1月前
|
关系型数据库 MySQL 数据库
【MySQL】——忘记密码后如何修改密码
【MySQL】——忘记密码后如何修改密码
44 0

推荐镜像

更多