欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

架设freeradius+mysql 的radius服务器_MySQL

程序员文章站 2022-04-11 17:57:29
...
FreeRadius
  本文献给广大linux的爱好者
  有人居然说设置radius要卖钱,本人花了几天的功夫,看了些资料,终于成功设置radius服务器,现在贴出来和大家分享。
  笔者用的平台是RedHat Linux 7.2
  一、安装mysql
  本人用的是光盘上的RPM包
  rpm –ivh mysql-3.23.41.1.i386.rpm
  rpm –ivh mysql-devel-3.23.41.1.i386.rpm
  rpm –ivh mysql-server-3.23.41.1.i386.rpm
  rpm –ivh mysqlclient9-3.23.22-6.i386.rpm
  启动mysql服务
  service mysqld start
  更改mysql的root密码(注意:mysql的root 和系统的root是2个不用的概念)
  mysql –uroot –p
  创建radius数据库
  creat database radius;
  use mysql;
  update user set password=password(‘你的密码’) where user=’root’;
  允许远程机器连接
  update user set host=’%’ where user=’root’;
  退出及重新启动mysql
  quit
  service mysqld restart
  二、安装openSSL
  本人也是用的光盘上的RPM包
  rpm –ivh openssl095a-0.9.5a-11.i386.rpm
  rpm –ivh openssl096-0.9.6-6.i386.rpm
  三、安装freeradius
  从www.freeradius.org上下载freeraidus,本文版本是0.8.1
  编译和安装
  tar xvfz freeradius.tar.gz
  cd xvfz freeradius-0.8.1
  ./configure
  make
  make install
  建立mysql的数据库raius的表
  cd src/modules/rlm_sql/drivers/rlm_sql_mysql
  mysql –uroot –p密码 radius   更改freeradius的设置
  cd /usr/local/etc/raddb
  更改radiusd.conf,让其支持sql (如下面所说)
  authorize {
  preprocess
  chap
  mschap
  suffix
  sql
  }
  accouting {
  ….
  sql
  …
  }
  更改sql.conf
  server=”localhost”
  login=”root”
  password=”mysql的root的密码”
  radius_db=”radius”
  更改 client.conf支持所用的NAS具体可以看该文档,要注意的是secret是NAS和radius服务器的共享密码
  数据库加入测试账号
  加入组
  mysql –uroot –p密码 radius
  insert into radgroupreply (groupname,attribute,op,values) values (‘user’,‘Auth-Type’,’:=’,’Local’);
  insert into radgroupreply (groupname,attribute,op,values) values (‘user’,‘Service-Type’,’:=’,’Framed-User’);
  insert into radgroupreply (groupname,attribute,op,values) values (‘user’,‘Framed-IP-Address’,’:=’,’255.255.255.254’);
  insert into radgroupreply (groupname,attribute,op,values) values (‘user’,‘Framed-IP-Netmask’,’:=’,’255.255.255.0’);
  加入测试账号
  insert into radcheck (username,attribute,op,value) values (‘test’,’User-Password’,’:=’,’test’)
  测试账号加入组
  insert into usergroup (username,groupname) values (‘test’,’user’);
  四、启动radius服务、测试账号
  启动到debug模式
  radiusd –X
  有时候会报找不到文件rlm_sql_mysql这个时候只要把库文件加入系统搜索的目录里
  比如:
  cp /usr/local/lib/* /usr/lib
  测试账号
  radtest test teset localhost 0 testing123
  如果能看到radius的应答,恭喜服务器设置成功了。
  本人才疏,如果本文有错误,请大家指正,并欢迎一起讨论。
  本文作者:余旭东
  Email: netwolf@163.com