评论

收藏

[MySQL] open***+mysql+freeradius+daloradius认证

数据库 数据库 发布于:2021-07-04 13:18 | 阅读数:520 | 评论:0

Open***提供了多种身份验证方式,用以确认参与连接双方的身份,,包括:预享私钥,第三方证书以及用户名/密码组合。预享密钥最为简单,但同时它只能用于建立点对点的***;基于PKI的第三方证书提供了最完善的功能,但是需要额外的精力去维护一个PKI证书体系。Open***2.0后引入了用户名/口令组合的身份验证方式,它可以省略客户端证书,但是仍有一份服务器证书需要被用作加密。

在open***中现有的用户名/口令认证方式的文档比较少,今天就来用笔记的方式介绍给大家,在此谢谢CU上的热心人士帮助,才能使文档通俗易懂。

一. 安装所需的软件以及环境:
1.LAMP/LNMP都是可以的,为了节约时间,环境就不一一讲解了,本人的其他博文中也有写到。
2.所需软件:
wget http://www.oberhumer.com/opensource/lzo/download/lzo-2.02.tar.gz 
wget http://open***.net/release/open***-2.0.5.tar.gz 
wget ftp://ftp.freeradius.org/pub/radius/freeradius-1.1.8.tar.bz2 
wget http://jaist.dl.sourceforge.net/sourceforge/daloradius/daloradius-0.9-8.tar.gz
lzo:     支持open***的压缩功能
open***:***主软件
freeradius:非常好的开源radius软件
daloradius:radius的web管理软件
DSC0000.jpg
二.Open***的安装
#tar zxvf lzo-2.02.tar.gz 
#cd lzo-2.02 
#./configure 
#make && make install 
#cd .. 
#tar zxvf open***-2.0.5.tar.gz 
#cd open***-2.0.5 
#./configure --with-lzo-headers=/usr/local/include/ --with-lzo-lib=/usr/local/lib --with-ssl-headers=/usr/include/openssl/ --with-ssl-lib=/usr/local/lib 
#make && make install
#cd easy-rsa/
#vi  vars
#. vars
DSC0001.jpg


注意:点后面有空格
#./clean-all 
#./build-ca 
#./build-key-server server 
#./build-dh 
#open*** --genkey --secret ta.key
DSC0002.jpg

编辑服务端的server.conf,以及客户端的client.o***
在后面的附件中,需要的请各位下载。
启动服务器
service open*** start
正常可以看到:
DSC0003.jpg

添加iptables SNAT规则,实现nat功能
#iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j SNAT --to-source XX.XX.XX.XX
二.编译安装freeradius
#tar jxvf freeradius-1.1.8.tar.bz2 
#cd freeradius-1.1.8 
#./configure
#cp libltdl/ltdl.h src/include/
#make && make install
#vi /etc/ld.so.conf
加入以下:
/usr/local/lib
#ldconfig
#mysql -p 
#create database radius; 
#grant all on radius.* to radius@'%' identified by 'www'; 
#flush privleges; 
#quit
导入数据库
mysql -uroot -pwww radius < ./doc/examples/mysql.sql
vi /usr/local/etc/raddb/radiusd.conf
DSC0004.jpg
authorize中去掉sql前的注释,注释掉file
preacct { 
        preprocess 
        acct_unique 
        suffix 
#       files 
} 
accounting { 
      detail 
      unix 
      radutmp 
      sql 
}       
vi  /usr/local/etc/raddb/sql.conf
vi /usr/local/etc/raddb/clients.conf
DSC0005.jpg


DSC0006.jpg
注释:
secret 这里是针对client 127.0.0.1通讯密匙
插入mysql 数据
mysql -p
建立组信息
mysql> insert into radgroupreply (groupname,attribute,op,value) values ('user','Auth-Type',':=','Local'); 
mysql> insert into radgroupreply (groupname,attribute,op,value) values ('user','Service-Type',':=','Framed-User'); 
mysql> insert into radgroupreply (groupname,attribute,op,value) values ('user','Framed-IP- Address',':=','255.255.255.255'); 
mysql> insert into radgroupreply (groupname,attribute,op,value) values ('user','Framed-IP- Netmask',':=','255.255.255.0');
建立用户信息
mysql> insert into radcheck (username,attribute,op,value) values ('test','User-Password',':=','test');
mysql> insert into radcheck (username,attribute,op,value) values ('sense','User-Password',':=','123456');
将用户加入组中:
mysql> insert into usergroup (username,groupname) values ('test','user');
开启两个终端测试下:
DSC0007.jpg

出现以上信息为成功
加入启动项:
radiusd -x &
三.安装Daloradius
#tar zxvf daloradius-0.9-8.tar.gz 
#cp -rf daloradius-0.9-8/* /var/www/html/radius/ 
vi /var/www/html/radius/library/daloradius.conf.php
DSC0008.jpg

导入
mysql -u root -pwww radius < /var/www/html/radius/contrib/db/mysql-daloradius.sql
四.安装RadiusPlugin
1.下载radiusplugin
wget http://www.nongnu.org/radiusplugin/radiusplugin_v2.0b_beta2.tar.gz
2.安装radiuspligin
#tar zxvf #radiusplugin_v2.0b_beta2.tar.gz 
#cd radiusplugin_v2.0b_beta2 
#make 
#cp /usr/local/src/radiusplugin_v2.0b_beta2/radiusplugin.so /etc/open***/ 
#cp /usr/local/src/radiusplugin_v2.0b_beta2/radiusplugin.cnf /etc/open***/ 
vi /usr/local/open***/radiusplugin.cnf
DSC0009.jpg
DSC00010.jpg

重启open***
service open*** restart
六.测试
登陆web测试
DSC00011.jpg

DSC00012.jpg

连接测试
DSC00013.jpg

IP测试
DSC00014.jpg


关注下面的标签,发现更多相似文章