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管理软件
#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
注意:点后面有空格
#./clean-all
#./build-ca
#./build-key-server server
#./build-dh
#open*** --genkey --secret ta.key
编辑服务端的server.conf,以及客户端的client.o***
在后面的附件中,需要的请各位下载。
启动服务器
service open*** start 正常可以看到:
添加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
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
注释:
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'); 开启两个终端测试下:
出现以上信息为成功
加入启动项:
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
导入
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
重启open***
service open*** restart 六.测试
登陆web测试
连接测试
IP测试
|