freeradius for pptp

Posted on 2013-09-14 20:19 H2O 阅读(729) 评论(0)  编辑  收藏
freeradius
               freeradius一般用来进行账户认证管理,记账管理,常见的电信运营商的宽带账户,上网账户管理,记账,都是使用的radius服务器进行鉴权记账的。
Freeradius包含一个radius服务器和radius-client,可以对支持radius协议的网络设备进行鉴权记账,常见的开源路由器操作系统:如Openwrt,DD-wrt等,都支持radius协议,对PPPOE,热点,VPN等服务器进行账户管理认证,记账。
freeradius功能十分强大,支持众多的数据库。
Freeradius操作稍显麻烦,内置diaup_admin简单web管理,需要更简单易用的管理功能可以使用第三方的管理程序对Freeradius进行账户管理,系统配置
官网:http://freeradius.org/download.html
下载地址:ftp://ftp.freeradius.org/pub/freeradius/freeradius-server-2.2.0.tar.gz
配置:

tar zxvf freeradius-server-2.2.0.tar.gz
cd
freeradius-server-2.2.0
./configure
make
make install

安装完后,可以使用命令#radiusd -x 进入radiusd服务器的调式,
安装成功后freeradius的配置文件的路径是:usr/local/etc/raddb/
日志文件的路径是:usr/local/var/log
测试freeradius是否安装成功:
取消/etc/raddb/users从steve开始到Framed-Compression = Van-Jacobsen-TCP-IP为止的注释符 # radtest steve testing localhost 1812 testing123 出现Access-Accept字样则说明成功。 测试成功后 把/etc/raddb/users那些去掉的注释符改回去。 
Radiusd.conf  主要是定义环境变量和其他配置文件和日志文件的位置
Clients.conf     用来配置哪些NAS可以访问radius
Eap.conf         用来配置与eap相关的参数,如使用哪种认证方法
Users              包含了每个用户的配置和认证信息
登陆mysql #mysql -u root -p 
创建数据库:creat database radius 
进入usr/local/etc/raddb/sql/mysql下
   
#mysql -u root -p radius <scheme.sql 把表导入到数据库中
导入后,可以在用命令
#use radius
#show tabels;查看到导入的数据库表
修改usr/local/etc/raddb/site_enabled下的defoult文件,把authorize{} 、accounting {}中的sql前面的 #去掉,并把authorize{} 中的files前加#;

修改与mysql数据库连接的配置文件/usr/local/etc/raddb/sql.conf,
   
server = "localhost"
  
login = "root"
   
password = "数据库root的登陆密码111111"
    
radius_db = "radius" //radius为数据库名
修改客户端信息配置文件:/usr/local/etc/raddb/clients.conf
  
添加 
    
Client 127.0.0.1 {
  
 secret          = testing123
  
 shortname       = localhost
    
 nastype         = other
      
}
修改radiusd.conf  去掉#include sql前的注释
建立用户信息:
   
mysql> insert into radcheck (username,attribute,op,value) values (‘zhang','User- Password',':=',‘user');
    
将用户加入组中:
 
mysql> insert into usergroup (username,groupname) values (‘zhang','user');
 
输入命令
#radiusd –X
再打开一个终端输入命令
#radtest zhang user localhost 0 testing123
      
Sending Access-Request of id 222 to 127.0.0.1 port 1812
      
User-Name = “zhang"
      
User-Password = “user"
     
 NAS-IP-Address = 127.0.0.1
     
 NAS-Port = 0
 rad_recv: Access-Accept packet from host 127.0.0.1 port 1812, id=222, length=38
      
Service-Type = Framed-User
      
Framed-IP-Address = 255.255.255.255
      
Framed-IP-Netmask = 255.255.255.0
      
如果显示如上信息,,freeradius和mysql安装配置成功。
1、sql方式测试
用MySQL数据库中加入的用户进行测试
执行命令,启动Freeradius的调试模式:
#Radiusd -X
另开终端执行命令,测试新增的用户: radtest zhang user localhost 0 testing123
测试成功话会收到下面信息
Sending Access-Request of id 113 to 127.0.0.1 port 1812 User-Name = “zhang" User-Password = “user" NAS-IP-Address = 127.0.1.1 NAS-Port = 0 rad_recv: Access-Accept packet from host 127.0.0.1 port 1812, id=113, length=20
2、测试SQL方式的EAP-MD5 
    执行命令
     ( echo "User-Name = /"sqluser/"";   echo "Cleartext-Password = /"it580.com/"";   echo "EAP-Code = Response";   echo "EAP-Id = 210";   echo "EAP-Type-Identity = /"sqluser/"";   echo "Message- Authenticator = 0×00"; ) | /usr/local/bin/radeapclient -x 127.0.0.1 auth testing123
    如果得到下面的结果说明测试成功
    EAP-Id = 211 EAP-Code = Success





只有注册用户登录后才能发表评论。


网站导航:
 

posts - 0, comments - 21, trackbacks - 0, articles - 101

Copyright © H2O