您的位置:首页 > 运维架构 > Linux

Centos+Freeradius+Mysql+daloRADIUS进行ROS PPPOE验证(实验)

2016-01-15 16:30 996 查看
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 r
d8ff
adius < /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拨号

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  FreeRadius ROS daloRADIUS