• freeradiusd (mysql)配置与说明(ubuntu)


    特别声明及经验:有不知道的,或出现未知问题请参考官网——http://freeradius.org/

    1. 安装mysql

      本人用的是光盘上的RPM包 -如果会用apt-get的话可以获取更新的。
      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

      2. 安装openSSL 

      本人也是用的光盘上的RPM包 -(用于远程)如果会用apt-get的话可以获取更新的。


      rpm -ivh openssl095a-0.9.5a-11.i386.rpm
      rpm -ivh openssl096-0.9.6-6.i386.rpm

      3. 安装freeradius

      从www.freeradius.org上下载freeraidus,本文版本是0.8.1 不同的系统版本,略有不同不过步骤是样的
      编译和安装

      如果必要可以用安装对应的库文件:apt-get install libmysqlclient15-dev
      tar xvfz freeradius.tar.gz
      cd xvfz freeradius-0.8.1
      ./configure
      make
      make install

      【ldconfig】

      建立mysql的数据库raius的表
      cd src/modules/rlm_sql/drivers/rlm_sql_mysql
      mysql -uroot -p密码 radius < db_mysql.sql

      更改freeradius的设置
      cd /usr/local/etc/raddb     freeradius所有的配置文件都在这里;如果不会,一定要仔细看文档说明

      radiusd.conf 下面含了:proxy.conf  clients.conf(允许radiusclient的ip)  eap.conf  sql.conf(数据库设计,下面包含:sql/mysql/dialup.conf主要是select语句,所以和前面的表,列名相关)  policy.conf

      不同的也许略有不同,但主要看radiusd.conf的设定了
      更改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');

      4. 启动radius服务、测试账号

      启动到debug模式

      radiusd -X

      有时候会报找不到文件rlm_sql_mysql这个时候只要把库文件加入系统搜索的目录里

      比如:

      cp /usr/local/lib/* /usr/lib

      测试账号

      radtest test teset localhost 0 testing123

      如果能看到radius的应答,恭喜服务器设置成功了。

  • 相关阅读:
    C标准库函数实现
    每天一句话
    移植数码相框到arm开发板上
    数据管理
    perl 分割文件路径和文件名
    恶补英语 拿 The C programming language 练功
    英语学习 chapter1
    uboot 烧写过程
    MVC,去掉字符串中的html代码
    排序之希尔排序
  • 原文地址:https://www.cnblogs.com/upendi/p/2455594.html
Copyright © 2020-2023  润新知