一、mysql数据库安装
1.安装相关软件包
mysql服务器
PAM组件(pam_mysql)
sasl
2.创建Open×××使用的数据库与表
3.创建测试用户
4.配置PAM mysql认证模块
5.测试pam_mysql是否工作正常
6.配置Open×××服务器及客户端配置文件
7.测试连接
二、具体配置过程
1.安装相关软件包
mysql服务器
PAM组件(pam_mysql)
sasl
yum install -y mysql mysql-devel mysql-server
yum install -y pam_krb5 pam_mysql pam pam-devel
yum install -y cyrus-sasl cyrus-sasl-plain cyrus-sasl-devel cyrus-sasl-lib cyrus-sasl-gssapi
2.创建Open×××使用的数据库与表
1 rowin set (0.00 sec)
mysql>grant all on *.* to '***'@'localhost' identified by '***123';
mysql>flush privileges;
#为数据库创建管理员用户密码;
3.创建测试用户
注,我这里创建三个测试用户。
4.配置PAM mysql认证模块
#2 = Use MySQL PASSWORD() function
5.测试pam_mysql是否工作正常
注,如果出现: 0: OK “Success.”, 表示测试成功。如果出现错误可以从系统日志及安全日志里看到出错信息,系统日志: /var/log/messages与安全日志: /var/log/secure。
6.配置Open×××服务器及客户端配置文件
1).增加open***认证模块,模块需要下载源码编译后会生成,再将生成的模块拷贝到/etc/open***目录下
2).修改server.conf配置文件
3).修改客户端配置文件
auth-user-pass#在客户端配置文件中加入中加入这一行,重新启动客户端连接到*** server时就需要输入用户名和密码了。
7.测试连接
四、总结
在yum安装时,由于依赖软件较多,落掉mysql-server没有安装,导致启用mysql服务时失败。。
在第一次进入数据库是没有密码的,我们需要配置一个用户密码用于管理。
在CREATE TABLE ***user创建数据库表格的时候,命令敲错,mysql> CREATE TABLE ***user ( name char(20) NOT NULL, password char(128) default NULL, active int(10) NOT NULL DEFAULT 1, PRIMARY KEY (name));标红的部分未输入,导致后面再测试pam_mysql总是失败。并且查看***user表时,active列均为NULL。
最后配置完成后,用客户端连接时,总是认证失败,最后发现是open***-auth-pam.so版本的问题,Open××× 2.1以上的Open×××的open***-auth-pam.so都会出现验证错误的问题,这里需要我们重新编译一个低版本的,我这里用2.0.7的,大家也可以使用2.0.9版本的。