Ubuntu下配置FreeRADIUS + PPTP/L2TP + Mysql + daloRADIUS

时间:11-08-11 栏目:技术 作者:liva 评论:0 点击: 9,275 次

这几天刚刚配置好,因此总结下,虽然现在配置成功,依然感觉还有很多需要去深入研究。

PPTP/L2TP安装方法就不写了,前面好多文章都介绍了安装方法。

下面先安装FreeRADIUS-server

由于要用到数据库,这里采用mysql,因此先安装mysql,我在没有安装mysql的机器上安装freeradius会出问题,因此先把mysql安装好。

修改配置文件radius.conf

修改主配置文件/etc/freeradius/radiusd.conf。其他系统的相应配置文件可能在/etc/raddb/*下。
对listen字段配置,按需要进行监听

对modules字段配置,选择需要的模块

找到authorize {}模块,注释掉files(152行),去掉sql前的#号(159行)。
找到preacct {}模块,注释掉files(354行)。
找到accounting {}模块,注释掉radutmp(378行),去掉sql前面的#号(388行)。
找到session {}模块,注释掉radutmp(432行),去掉sql前面的#号(436行)。
找到post-auth {}模块,去掉sql前的#号(457行),去掉sql前的#号(545行)。

freeradius2.1.3 防止用户帐号重复登录
一、修改 etc/raddb/sites-enabled 目录中的default 及inner-tunnel 这两个文件中的

#  Session database, used for checking Simultaneous-Use. Either the radutmp
#  or rlm_sql module can handle this.
#  The rlm_sql module is *much* faster
session {
#radutmp
#原来使用的是radutmp文档
#  See "Simultaneous Use Checking Querie" in sql.conf
sql
#现在采用sql数据库验证
}
二、修改etc/raddb/sql/mysql 目录下的 dialup.conf

# Uncomment simul_count_query to enable simultaneous use checking
把     simul_count_query 这一组前的#号去掉     如下
simul_count_query = "SELECT COUNT(*) \
FROM ${acct_table1} \
WHERE username = '%{SQL-User-Name}' \
AND acctstoptime IS NULL"

三、进入MYSQL在radgroupcheck添加Simultaneous-Use:=1  命令如下
INSERT INTO radgroupcheck ( id , GroupName , Attribute , op , Value )
VALUES (
NULL , ’user’, ’Simultaneous-Use’, ’:=’, ’1’
);

注意user 为组名,这个改成你自己用的组名

限制VPN流量的方法

# vi  /etc/freeradius/radiusd.conf
取消注释695行, $INCLUDE sql/mysql/counter.conf
# vi  /etc/freeradius/sql/mysql/counter.conf
最底行加入

这里,也可以将radiusd.conf的clients.conf注释掉
#$INCLUDE clients.conf

并将sql.conf的readclients反注释

这样就不会使用配置文件clients.conf,而使用数据库里的nas表读取客户端信息。

接下来对authorize字段和accounting字段进行配置。需要注意的是,Ubuntu下这两个字段的内容移到了/etc/freeradius/sites-avaible/default下 :
为了启动对mysql的支持,在authorize字段里,注释files,反注释sql

在accounting字段里,反注释sql

数据库配置文件sql.conf

修改访问数据库的配置文件/etc/freeradius/sql.conf

这里假定在MySQL里,root用户的密码为radpass,预定为FreeRADIUS建立的新数据库名为radius。

在MySQL建立数据库

在MySQL里面创建FreeRADIUS使用的数据库:

还可以一开始就用/etc/freeradius/sql/mysql/admin.sql来生成MySQL新用户,专门用来访问FreeRADIUS的数据库。

FreeRADIUS-client 客户端安装

服务端已经好了,下一步就开始安装客户端。

修改客户端的配置文件
/usr/local/etc/radiusclient/servers
加入

增加字典
这一步很重要!否则windows客户端无法连接服务器。

客户端配置结束。
与PPTP/L2TP整合

下面与XL2TPD整合

基于Web管理FreeRADIUS

http服务器的架设就不介绍了,下面直接进入正题。

修改主配置文件/etc/freeradius-dialupadmin/admin.conf

在apache的配置文件httpd.conf加上该路径:

继续导入freeradius-dialupadmin中用到的几个表:

这里,自己在导入userinfo时提示有错误

ERROR 1067 (42000): Invalid default value for 'id'

于是将userinfo.sql里的

改为

下面给数据库添加一些基本信息。先进入radius数据库

添加用户信息:

添加组信息:

然后把用户加到组里:

客户端安装方法2:
首先下载并安装daloRADIUS,其中需要安装一个Pear-DB的包:

这里关于Pear-DB,搞了好长时间才搞定,我用的是lnmp安装包,对于安装这个东西,用如下方法:

按提示安装设置
执行:安装目录/pear install db

 

wget http://sourceforge.net/projects/daloradius/files/daloradius/daloradius0.9-9/daloradius-0.9-9.tar.gz

pear install DB

mkdir /usr/share/daloRadius
tar zxvf daloradius-0.9-8.tar.gz
mv daloradius-0.9-8/* /usr/share/daloRadius/
rm -r daloradius-0.9-8

但是,这样有时候还会出问题,如果你们可以正常访问控制页面可以无视下面的操作,如果不能访问,拷贝/usr/share/php目录下所有文件到daloradius的目录下即可解决,该目录中有PHP-DB的插件。

这样弄好以后,就可以将管理系统的数据导入到数据库中了,执行下面这条命令

此外还要修改配置文件:

/var/www/daloradius/library/daloradius.conf.php

可能要修改下面这些地方:

到此管理系统已经配置完成了。

测试

参考资料:

1. https://tomem.info/blog/2011/04/562
2. https://tomem.info/blog/2011/04/577
3. http://www.xtgly.com/2011/01/05/...
4. http://ichinihachi.blogspot.com/2011/02/ubuntufreeradius.html
5、http://www.deepvps.com/poptop-freeradius-daloradius-setup.html
6、http://www.gjia.cn/2011/06/20/daloradius%E5%AE%89%E8%A3%85%E5%90%8E%E7%99%BB%E5%BD%95%E5%87%BA%E7%8E%B0%E7%A9%BA%E7%99%BD%E9%A1%B5%E6%88%96500%E9%94%99%E8%AF%AF/

7、http://dayanjia.com/2011/03/configure-freeradius-and-daloradius-on-pptp-vpn-server.html

8、http://www.deepvps.com/poptop-freeradius-daloradius-setup.html

9、http://code.google.com/p/tuo/wiki/Radius_MySQL_daloRadius

10、http://ihipop.info/2011/05/2332.html

11、https://wangyan.org/blog/freeradius-pptp-l2tp-html.html

12、http://ichinihachi.blogspot.com/2011/02/ubuntufreeradius.html

声明: 本文由( liva )原创编译,转载请保留链接: Ubuntu下配置FreeRADIUS + PPTP/L2TP + Mysql + daloRADIUS

Ubuntu下配置FreeRADIUS + PPTP/L2TP + Mysql + daloRADIUS:等您坐沙发呢!

发表评论


购物推荐

赞助商

© 2013 enjoydiy.com. Design by zijiao. 59 queries in 0.665 seconds, using 21.53MB memory