freeradus fedora

来源:互联网 发布:mac上配置jenkins 编辑:程序博客网 时间:2024/05/21 21:02

FreeRadius安装已被广泛应用但是也在不断的更新,这里介绍FreeRadius安装设置使用,帮助大家安装更新FreeRadius安装系统。涉及文件管理、磁盘管理、用户与组群管理、man帮助、软件包管理、文件压缩和打印机管理。

FreeRadius配置说明

本文档记录了在Fedora Core 4 Linux环境下,FreeRadius安装以及Mysql的连接的配置记录,并运行FreeRadius管理界面 Dialup_Admin与 ASN公司的ARA - a FreeRADIUS web interface的FreeRadius安装的管理界面。

涉及的软件列面如下:
Fedora Core 4
Mysql
Apache
PHP
FreeRadius
Dialup_Admin
ARA

Fedora Core 4下基本软件的配置

在Fedora Core 4 环境下,可以将Mysql,Apache与PHP先通过Fedora Core 4安装好,若在初始安装时,没有安装这些软件,可以通过命令 system-config-packages 来进行安装(注意:此命令要在Fedora Core图形界面下由root权限运行)。安装界面如下图:
1 选择万维网服务器,并选择细节中有关PHP相关的组件。
2 选择SQL数据库。 更改后点击更新即可,安装向导会提示插入相对应的Fedora Core 4 的光盘以进行安装。

FreeRadius安装

首先解压缩FreeRadius安装,后configure后make安装。如下:
tar xvfz freeradius-1.1.0.tar.gz
cd freeradius-1.1.0
./configure
make
make install

整个过程大概需要半小时到一小时。
安装后,FreeRadius安装的主要配置文件都放在 /usr/local/etc/raddb/ 下
而 radiusd 运行文件放置在 /usr/local/sbin/ 目录下
安装完后可运行 radiusd –X , 进行debug模式启动,若看到最后出现
Listening on authentication *:1812
Listening on accounting *:1813
Ready to process requests.
则表示可正常运行。

FreeRadius安装与Mysql的连接配置

首先进行Mysql的一些配置,更改root密码,然后连接数据库建立FreeRadius安装所需要的radius数据库。
mysqladmin –uroot password <您的root密码>
mysql -uroot –p<密码>
mysql> create database radius;
mysql>/q
cd /home/changsure/freeradius-1.1.0
cd src/modules/rlm_sql/drivers/rlm_sql_mysql
mysql -uroot -p<密码> radius < db_mysql.sql
然后更改FreeRadius安装的配置文件,找到/usr/local/etc/raddb 下,分别更改 radiusd.conf,sql.conf,client.conf

radiusd.conf 在authorize { sql(去掉前面的#)}
在accouting { sql (去掉前面的#) }
sql.conf
server=”localhost”
login=”root”
password=”<mysql的root的密码>”
radius_db=”radius”
clients.conf

中已经包含了关于本机测试的内容, NAS连接secret为 testing123 ,可以修改。在数据库的radcheck表中添加测试用户内容,
UserName -test
Attribute-User-Password’
Op-:= Value-test
然后可以开两个终端进行测试,一边开 radiusd –X 另一边开radtest test test localhost 0 testing123 看到类似如下内容表示测试通过
rad_recv: Access-Accept packet from host 127.0.0.1:1812, id=95, length=20

 

 

-----------------------------------------------------------------------------------------------------------------------------------------------

--------------------------------------------------------------------分割线--------------------------------------------------------------------

-----------------------------------------------------------------------------------------------------------------------------------------------

 

Fedora8+MySQL+Freeradius安装过程
2008-11-18 20:07

因为是回想的,不是边安装边记录,所以有些细节可能不够详细,还请见谅。

一、安装openssl
二、安装mysql

       本来是打算安装最新的3.23.58,去http://download.softagency.net/MySQL/Downloads/MySQL_3.23下载了client、devel等RPM包,逐个安装的时候出了问题,只好卸载掉。

      放弃安装最新版的想法,FC8下直接用命令#yun   groupinstall "MySQL Database"安装MySQL数据库。

     安装好后,#service mysqld start 启动数据库。

     使用#netstat -nax查看3306端口是否在使用,从而确定安装是否成功。

     #mysqladmin -u root password 'password' 修改root的密码
     #mysql -u root -p
     Enter password:

       进入mysql,查看数据库是正常使用。正常使用则退出。

三,安装freeradius

      最新的freeradius的版本是2.1.1。

     下载后解压缩,进入解压缩后的目录:

     #./config

     #make

    #make install

    安装完后,可以使用命令#radiusd -x 进入radiusd服务器的调试模式,如果能进入则安装成功。

   安装成功后freeradius的配置文件的路径是:usr/local/etc/raddb/

   日志文件的路径是:usr/local/var/log

   一般以上过程不会出问题,主要的问题在于配置。

四、配置过程

    登陆mysql:

    #mysql -u root -p
     Enter password:

    创建数据库:creat database radius;

    exit退出数据库。

     进入usr/local/etc/raddb/sql/mysql下

     #mysql -u root -p radius <scheme.sql 把表导入到数据库中

(注意,2.1.1版本的数据库文件是scheme.sql ,这跟其他版本不同,1.1.7版本之前的数据库文件是mysql.sql ,或者rlm_mysql.sql,而且存放路径不同)

    导入后,可以在用命令

      #use radius

     #show tabels;看到以下数据库表:

    +------------------+
    | Tables_in_radius |
   +------------------+
   | radacct            |
   | radcheck         |
   | radgroupcheck    |
   | radgroupreply    |
   | radpostauth      |
   | radreply         |
   | radusergroup     |
   +------------------+

    修改usr/local/etc/raddb/site_enabled下的defoult文件(2.1.1与1.1.7不同,radius.conf被分成了几个部分,authorize 被放在了defoult文件下,请注意),把authorize{} 、accounting {}中的sql前面的#去掉,并把authorize{} 中的files前加#;如下示:

    authorize {
          chap
        mschap
        suffix
         eap

        #files
        sql
       pap
    }
     accounting {
          detail
         unix
         radutmp
         sql
    }

     修改与mysql数据库连接的配置文件/usr/local/etc/raddb/sql.conf,
     server = "localhost"
     login = "root"
     password = "数据库root的登陆密码"

     radius_db = "radius" //radius为数据库名

      修改客户端信息配置文件:/usr/local/etc/raddb/clients.conf

     client 127.0.0.1 {
           secret          = testing123
            shortname       = localhost
           nastype         = other
        }

     在数据库中加入测试帐号
     #mysql -u root -p
        Enter password:
       mysql> use radius;
     建立组信息:
     mysql> insert into radgroupreply (groupname,attribute,op,value) values ('user','Auth-Type',':=','Local');
      Query OK, 1 row affected (0.01 sec)
      mysql> insert into radgroupreply (groupname,attribute,op,value) values ('user','Service-Type',':=','Framed-User');
Query OK, 1 row affected (0.00 sec)
      mysql> insert into radgroupreply (groupname,attribute,op,value) values ('user','Framed-IP-Address',':=','255.255.255.255');
Query OK, 1 row affected (0.00 sec)
      mysql> insert into radgroupreply (groupname,attribute,op,value) values ('user','Framed-IP-Netmask',':=','255.255.255.0');
Query OK, 1 row affected (0.01 sec)

建立用户信息:
      mysql> insert into radcheck (username,attribute,op,value) values ('test','User-Password',':=','test');
Query OK, 1 row affected (0.00 sec)
      将用户加入组中:
mysql> insert into usergroup (username,groupname) values ('test','user');
Query OK, 1 row affected (0.01 sec)

      mysql>exit;退出数据库

      测试radius
      #radiusd -X
      #radtest test test localhost 0 testing123


     Sending Access-Request of id 222 to 127.0.0.1 port 1812
        User-Name = "test"
        User-Password = "test"
        NAS-IP-Address = 127.0.0.1
        NAS-Port = 0
rad_recv: Access-Accept packet from host 127.0.0.1 port 1812, id=222, length=38
        Service-Type = Framed-User
        Framed-IP-Address = 255.255.255.255
        Framed-IP-Netmask = 255.255.255.0

       如果显示如上信息,则恭喜,freeradius安装配置成功。

      心得:

      如果接收到类似于这样的信息:rad_recv: Access-Reject packet from host 127.0.0.1 port 1812, id=222, length=38。
      可以到usr/local/var/log去查看freeradius的日志。在安装过程我就接收到这样的信息,百思不得其解,以为是安装出了问题,后来是查看日志,发现如下信息:

     141 WARNING: Found User-Password == "...".
    142 WARNING: Are you sure you don't mean Cleartext-Password?
    143 WARNING: See "man rlm_pap" for more information.
    144 rlm_sql: Failed to create the pair: Invalid octet string "Yes,Good!" for attribute name "Repley-Message"
    145 rlm_sql (sql): Error getting data from database
    146 [sql] SQL query error; rejecting user
    147 rlm_sql (sql): Released sql socket id: 1

     从而发现我在表radrepley中的数据记录内容是错误的,删除这条记录后,问题得到解决