有些是转载别人的啊,大家可以互相参考一下。
Open*** 实现用户名密码验证 module 1
实现了单用户和CA验证 Open*** 实现用户名密码验证.. 由于CA验证对用户管理非常麻烦(只有安全系数高)用户名密码方式是使用数据库 存放账户的!好现在就来说一下我的整个配置架设Open*** 实现了单用户和CA验证
Open*** 实现用户名密码验证..
由于CA验证对用户管理非常麻烦(只有安全系数高)…用户名&密码方式是使用数据库 存放账户的!好现在就来说一下我的整个配置过程(前提条件是CA验证通过)
1.数据库部分:
1.1:安装mysql(自己google)
1.2:新建***数据库+添加表等
以管理员身份登录数据库:
mysql> create database ***;
创建数据库***。
mysql> GRANT ALL ON ***.* TO ***@localhost IDENTIFIED BY ‘***123′;
授权localhost上的用户***(密码***123)有对数据库***的所有操作权 限。
mysql> flush privileges;
更新sql数据库的权限设置。
mysql> use ***;
使用刚创建的的***数据库。
mysql> CREATE TABLE ***user (
-> name char(20) NOT NULL,
-> password char(128) default NULL,
-> active int(10) NOT NULL DEFAULT 1,
-> PRIMARY KEY (name)
-> );
mysql> insert into ***user (name,password) values(’soai’,password(’soai’));
命令解释:
#创建***用户,对***这个database有所有操作权限,密码为***123
#active不为1,无权使用×××
#增加用户 用户名:elm 密码:elm
2.配置pam_mysql模块
创建/etc/pam.d/open***文件,文件内容如下:
auth sufficient pam_mysql.so user=*** passwd=***123 host=localhost db=*** \
table=***user usercolumn=name passwdcolumn=password \
where=active=1 sqllog=0 crypt=2
account required pam_mysql.so user=*** passwd=***123 host=localhost db=*** \
table=***user usercolumn=name passwdcolumn=password \
where=active=1 sqllog=0 crypt=2
crypt(0) — Used to decide to use MySQL’s PASSWORD() function or crypt()
0 = No encryption. Passwords in database in plaintext. NOT recommended!
1 = Use crypt
2 = Use MySQL PASSWORD() function
3.配置server.conf在原基础上添加一下内容
3.1现在把open***-auth-pam.so拷贝到当前目录下..
cp /usr/lib/open***/open***-auth-pam.so /etc/open***/
3.2在server.conf中添加如下内容:
plugin ./open***-auth-pam.so open***
#client-to-client
#duplicate-cn
client-cert-not-required
username-as-common-name
#client-to-client #如果让Client之间可以相互看见,去掉本行的注释掉,否则Client之间无法相互访问
#duplicate-cn #是否允许一个User同时登录多次,去掉本行注释后可以使用同一个用户名登录多次
plugin ./open***-auth-pam.so open*** #说明使用的插件,open***为插件的参数,使用pam的servicesname
client-cert-not-required #不请求客户的CA证书,使用User/Pass验证
username-as-common-name #使用客户提供的UserName作为Common Name
4.现在需要把客户端client.o***修改一下:
原来是CA验证..现在不需要了..
把cert **.crt 和 key **.key 注释掉
添加auth-user-pass
OK
转载于:https://blog.51cto.com/jxwpx/478552