Centos+Freeradius+Mysql+daloRADIUS进行ROS PPPOE验证

Linux 星雨 1962℃ 0评论

freeradius简介:

freeradius一般用来进行账户认证管理,记账管理,常见的电信运营商的宽带账户,上网账户管理,记账,都是使用的radius服务器进行鉴权记账的。

daloradius简介:

一个FreeRADIUS的Web挂历程序。

准备工作(我这里是虚拟机):

主机地址为172.17.250.177

1,一台Centos系统的计算机#地址是172.17.250.189

2,一台ROS#第一个地址是172.17.250.190
第二个地址是内网地址。

3,一台客户机#地址是内网地址

第一步,安装Freeradius

1,安装需求包

yum -y install httpd MySQL mysql-devel mysql-server PHP php-mysql php-gd php-imap php-odbc php-pear php-xml php-xmlrpc

yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel

2,简单设置下http和mysql

chkconfig httpd on             #将http设置永久开启

chkconfig mysql on            #将mysql设置永久开启

/etc/init.d/httpd start           #启动http

/etc/init.d/mysqld start        #启动mysql

mysqladmin -u root password yuzhijian              #设置mysql的root密码是yuzhijian

vi /var/www/html/test.php#建立php测试文件,保存退出

<?php  phpinfo();  ?>

setenforce 0 #关闭selinux

service iptables stop#关闭防火墙

用主机访问http://172.17.250.189/test.php

出现这个页面就可以了。

第二步,安装raidus,并配置mysql

1,安装并测试raidus

yum install -y freeradius freeradius-mysql freeradius-utils      #安装radius

vi /etc/raddb/users      #配置本地用户测试

radius  testuser Cleartext-Password := “testpassword”     #在文件的最后一行加入 ,保存退出

/etc/init.d/radiusd restart       #重启radius服务

radtest testuser testpassword localhost 1812 testing123

#测试radius服务器的配置,如果看到下面内容,说明服务器配置成功

2,radius配置mysql验证

cp /etc/raddb/clients.conf /etc/raddb/clients.conf.bak      #备份radius的客户端配置文件

grep -v \# /etc/raddb/clients.conf.bak > /etc/raddb/clients.conf    #将clients.conf.bak 中的注释行过滤掉,并输出到clients.conf中

vi /etc/raddb/clients.conf      #编辑客户端文件,内容如下

vi /etc/raddb/users   #编辑用户文件,注释掉刚才添加的测试用户

# testuser Cleartext-Password := “testpassword”    #将该测试用户注释掉

cp /etc/raddb/sql/mysql/admin.sql /etc/raddb/sql/mysql/admin.sql.bak    #备份admin.sql文件

grep -v ^# /etc/raddb/sql/mysql/admin.sql.bak > /etc/raddb/sql/mysql/admin.sql     #将admin.sql.bak 中的注释行过滤掉并输出到admin.sql中

vi /etc/raddb/sql/mysql/admin.sql         #修改admin.sql文件,内容如下

CREATE USER ‘radius’@’localhost’;

SET PASSWORD FOR ‘radius’@’localhost’ = PASSWORD(‘radpass’);

GRANT ALL ON radius.* TO ‘radius’@’localhost’;

#以上内说明“ 数据库为radius,密码为radpass”如果要自己设置,设置完成后还要修改sql.conf把密码改为自己设置的

vi /etc/raddb/sql.conf #找到

#login = “radius”   —> 登录用户名,可以在这里修改登录radius数据库的用户名

#password = “radpass”   —>登录用户密码 ,可以在这里修改登录radius数据库的密码

3,导入radius数据库 

mysql -u root -p                         #登录mysql数据库,输入之前设置的root密码。

create database radius;             # 创建radius表

exit;       #退出mysql数据库

mysql -u root -p radius < /etc/raddb/sql/mysql/admin.sql

#输入这行的时候,可能会出现

“   ERROR 1396 (HY000) at line 2: Operation CREATE USER failed for ‘radius’@’localhost’   ”

这个表示radius帐号已经存在,可以不用理会。

mysql -u root -p radius < /etc/raddb/sql/mysql/schema.sql   #导入schema.sql 文件

mysql -u root -p radius < /etc/raddb/sql/mysql/nas.sql  #导入nas.sql文件

mysql -u root -p radius < /etc/raddb/sql/mysql/ippool.sql   #导入ippool.sql文件

mysql -u root -p #登录mysql数据库。

flush privileges; #使刚才导入的配置生效

#

使刚才导入的配置生效

vi /etc/raddb/radiusd.conf            #编辑radius配置文件,使其使用sql认证,去掉前面的#号

$INCLUDE sql.conf  #保存退出

vi /etc/raddb/sql.conf  #修改sql.conf,只修改下面的内容

server = “localhost”

port = 3306

login = “radius”

password = “radpass”

radius_db = “radius”

readclients = yes #保存退出

4,修改认证的方式。

vi /etc/raddb/sites-enabled/default   #编辑radius默认的认证文件

# authorize  {     —>找到这一行,将其注释掉,并把结束的“}”也注释掉 # }

# accounting {   —->找到这一行,将其注释掉,并把结束的“}”也注释掉 # }

# session {         —->找到这一行,将其注释掉,并把结束的“}”也注释掉  # }

#然后到文件的末尾添加如下内容,保存退出

authorize {  preprocess

chap

mschap

suffix

eap

sql

pap }

accounting {  detail

sql }

session {  radutmp

sql }

5,插入测试数据 。

mysql -u root -p     #登录mysql数据库

use radius;           #使用radius库
INSERT INTO radcheck (UserName, Attribute, Value) VALUES (‘user1’, ‘Password’,’password1′);   #插入测试帐号“user1”和“password1”

exit;      #退出mysql数据库

radtest user1 password1 localhost 1812 testing123   #用测试帐号测试一下radius的mysql认证是否成功,如果看到下图的内容,则说明已经配置成功了

第三步,安装daloradius。

wget http://download.pear.php.NET/package/DB-1.7.14RC2.tgz  #下载软件包

pear install DB-1.7.14RC2.tgz     #安装软件包

wget  http://nchc.dl.sourceforge.Net/project/daloradius/daloradius/daloradius0.9-9/daloradius-0.9-9.tar.gz   #下载软件包

tar -zxvf daloradius-0.9-9.tar.gz   #安装软件包

mv daloradius-0.9-9 daloradius    #将文件daloraidus-0.9-9重命名

cp -rf daloradius/* /var/www/html/  #复制daloradius/*所有文件到html下

chown apache:apache -R /var/www/html/    #将html文件夹极其下面的所有文件设置为apache组和apache用户所拥有

chmod 644 /var/www/html/library/daloradius.conf.php      #将daloraidus.conf.php文件的权限设置为rw-r–r–

cd /var/www/html/contrib/db/     #进入/var/www/html/contrib/db/目录

mysql -u root -p radius < mysql-daloradius.sql   #将mysql-daloradius.sql  导入到mqsql中radius数据库中

vi /var/www/html/library/daloradius.conf.php    #修改daloradius.conf.php ,将以下涉及到的内容更改,其他的别动

$configValues[‘CONFIG_MAINT_TEST_USER_RADIUSSECRET’] = ‘testing123’;#最重要这条·,保存退出。

touch /tmp/daloradius.log     #建立daloraidus的日志文件

chown apache.apache /tmp/daloradius.log    #将其文件设置为apache组及apache用户拥有

安装完后打开Http://172.17.250.189 就可以看到daloradius了,登录的用户名密码为  username: administrator password: radius

第四步,进行ROS PPPOE验证

1,添加RADIUS客户端:

vi /etc/raddb/clients.conf#新加一个客户端

2,ROS下PPPOE服务器配置

ip pool add name=pppoe ranges=192.168.2.2-192.168.2.254 #新建PPPOE客户端IP池
ppp profile set default local-address=pppoe remote-address=pppoe dns-server=8.8.8.8,4.4.4.4 #新建PPPOE模板
interface pppoe-server server add service-name=pppoe interface=ether2 authentication=pap \

default-profile=default one-session-per-host=yes keepalive-timeout=10 disabled=no#开启并设置PPPOE服务器
ppp secret add name=user password=passwd service=pppoe #使用本地pap验证,新建PPPOE用户

3,ROS端配置使用RADIUS验证:

ppp aaa set use-radius=yes #允许使用RADIUS认证
radius add address=192.168.1.22 secret=root service=ppp authentication-port=1812 \
accounting-port=1813 disabled=no  #设置RADIUS服务器地址,验证端口,验证服务
radius incoming set accept=yes port=1700  #允许RADIUS端断开用户PPP连接

4.daloRADIUS端配置,新建NAS,即ROS客户端:

Management——Nas

5,新建用户,即PPPOE客户:

Management——users

6,下面的xp客户机连接ros拨号

转载请注明:星雨小站 » Centos+Freeradius+Mysql+daloRADIUS进行ROS PPPOE验证

如果你觉得这篇文章对你有帮助,请支持我继续更新网站!捐赠本站
喜欢 (0)or分享 (0)

您必须 登录 才能发表评论!