验证,授权和会计与FreeRadius和MySQL后端和基于Web的管理与Daloradius

认证,授权和会计使用FreeRadius和MySQL后端和基于Web的管理与Daloradius

本教程介绍如何在CentOS 5.x上使用Daloradius与基于mysql和web的管理结合使用WiFi身份验证,授权和计费的FreeRadius 2.x服务器。 生产部署也可以通过微调。 但像往常一样,我不保证任何责任。

(有关基础知识,请参考https://www.youcl.com/info/6474

当然,对于微弱的这个交钥匙解决方案可以随时使用。 https://www.youcl.com/info/6623

涉及以下步骤:

1-建筑Centos 5.x二进制rpms

2-安装二进制包

3-配置带有mysql的FR

4-使用Daloradius设置Web管理

第1步-构建Centos 5.X包

http://rpmfind.net//linux/RPM/fedora/devel/src/freeradius-2.0.5-1.fc10.src.html获取src.rpms

rpm -Uvh freeradius-2.0.5-1.fc10.src

注意:建议您在非生产服务器上携带此构建过程,并将最终的二进制rpms转移到produtions服务器。 但是如果你知道你在做什么,这不是强制性的。

cd /usr/src/redhat/RPMS/SPECS
rpmbuild -bb freeradius.spec

注意:您可能需要一些这些包。 他们并重新运行重建过程。 (我得到以下提示)

beecrypt-devel,sqlite-devel,unixODBC,unixODBC-devel,
python-devel,pam-devel,elfutils-libelf-devel,
elfutils-libelf-devel-static,rpm-devel,elfutils-devel,
elfutils-devel-static,net-snmp-devel,mysql,cyrus-sasl-devel,
mysql-devel,openldap-devel,gdbm-devel,libtool-ltdl-devel,
postgresql,postgresql-devel

一段时间(取决于您的系统规格),您应该在以下位置创建rpms(如果使用x86):

cd /usr/src/redhat/RPMS/i386

如果这是您的开发工作站,请将其移动到生产服务器。

第2步-安装二进制包

rpm -Uvh freeradius-libs-2.0.5-1.i386.rpm
rpm -Uvh freeradius-2.0.5-1.i386.rpm
rpm -Uvh freeradius-utils-2.0.5-1.i386.rpm
rpm -Uvh freeradius-mysql-2.0.5-1.i386.rpm

使用开箱即用的配置运行后,验证本地用户。

例如:在调试模式下运行半径:

radiusd -X

在另一个shell运行时,这个半径-X正在运行:

radtest abc 123 localhost 1812 testing123

确保在/ etc / raddb / user的文件中设置了具有密码'123'的用户'abc'。

第3步-使用MySQL配置FR

打开radiusd.conf中的sql认证

vi /etc/raddb/radiusd.conf

搜索并取消注释此行$ INCLUDE sql.conf

保存并退出

现在MySQL位(创建数据库及其管理员用户)。 从你的shell中执行以下操作。

mysqladmin -u root password 123456
mysql -u root -p

在MySQL shell上键入以下内容:

CREATE DATABASE radiusdb;
GRANT ALL ON radiusdb.* TO radius@localhost IDENTIFIED BY "radpass";
exit;

现在将文件mysql-dalo-and-fr2x.sql模式导入到以下压缩文件的radiusdb中,该文件还包含daloradius的daloradius.conf文件,这将在Web管理部分稍后讨论。

下载sql_schema&daloradius.conf压缩

unzip daloradius.zip
mysql -u root -p radiusdb < /root/mysql-dalo-fr2x.sql

要查看db模式,请执行以下操作:

mysql -u root -p
use database radiusdb;
show tables;
quit;

现在编辑你的/etc/raddb/sql.conf

重置用户/密码/数据库参数以反映更改(例如:login = radius,password = radpass&radius_db = radiusdb); 把NAS管理从MySQL开始搜索

readclients = no

并将其更改为:

readclients = yes

编辑文件/ etc / raddb / sites-enabled / default ,并将一行“sql”添加到authorize {}部分( 即向文件末尾)。 还要向accounting {}部分添加一条说'sql'的行来告诉FreeRadius在SQL中存储会计记录。 如果要同时使用检测,可以选择将“sql”添加到会话{}部分。 如果要将所有身份验证尝试记录到SQL,可以选择将'sql'添加到post-auth {}部分。

以下是授权部分:

authorize {
          preprocess
          chap
          mschap
          suffix
          eap
          sql
          pap
}

会计科:

accounting {
          detail
          sql
}

要在数据库中插入测试用户,请转到MySQL shell并运行:

mysql -u root -p
mysql> use database radiusdb;
mysql> INSERT INTO radcheck (UserName, Attribute, Value) VALUES ('sqltest', 'Password', 'testpwd');
mysql> select * from radcheck where UserName='sqltest';
mysql> exit

在调试模式下启动半径:

radiusd -X

去另一个shell并运行测试:

radtest sqltest testpwd localhost 1812 testing123

此时,您应该会看到包含类似... Accept-Accept ...的消息,这表明您的用户正在获得身份验证。

恭喜! 您的FreeRadius + MySQL安装程序正在运行。

4-使用Daloradius设置Web管理

最新的稳定版本是0.9-7版本。

http://sourceforge.net/projects/dalo​​radius获取它。

tar -zxvf daloradius-0.9-7.tar.gz

下载以下必备软件包:

yum install install httpd -y
yum install php php-mysql php-pear php-gd php-pear-DB -y
cp daloradius-0.9-7/ /var/www -vr

更改所有权:

chown apache:apache /var/www/daloradius-0.9-7 -R

Daloradius需要的几张表已经在之前创建了。

从下载的压缩文件中复制已经解压缩的文件 daloradius.conf。

cp /root/daloradius.conf /var/www/daloradius-0.9-7/library/

注意:这个文件daloradius.conf已被修改为freeradius 2.x,至今尚未被daloradius打包。

现在,只需调整DaloRadius配置文件中的MySQL数据库信息。

vi /var/www/daloradius-0.9-7/library/daloradius.conf

填写数据库详细信息,下列几个重要参数如下:

       ...........
       ......................
       CONFIG_DB_ENGINE = mysql
       CONFIG_DB_HOST = 127.0.0.1
       CONFIG_DB_USER = radius
       CONFIG_DB_PASS = radpass
       CONFIG_DB_NAME = radiusdb
       .......................
       ............

更改所有权和许可:

chown apache.apache /var/ww/daloradius-0.9-7/library/daloradius.conf
chmod 644 /var/www/daloradius-0.9-7/library/daloradius.conf
touch /tmp/daloradius.log
chown apache.apache /tmp/daloradius.log

设置apache服务器。

编辑/etc/httpd/conf/httpd.conf文件并将其附加到文件的末尾(自定义为您的喜好):

Alias /myradius "/var/www/daloradius-0.9-7/"
<Directory /var/www/daloradius-0.9-7/>
      Options None
      order deny,allow
      deny from all
      allow from 127.0.0.1
      allow from <my management system's ip which has a web-browser>
</Directory>

保存并退出。

重新启动httpd服务器:

/etc/init.d/httpd restart

启动Firefox(或任何其他borowser)并转到URL http:// <localhost或managemet系统的ip> / myradius

登录管理员进行管理:

用户名: administrator
密码: radius

为了安全起见,首先更改此信息(信息位于操作员表中)。

取Daloradius旋转。 您应该更早地创建了一个sqltest用户。 您还可以尝试从Daloradius前端添加新用户并测试连接。

恭喜你完成了

FreeRadius,MySQL和Daloradius的开发人员再次接受我对您所有努力的谦虚的赞赏。 开源社区,一如以往,你摇滚,thanx。

注意:在本文中,我没有提到关于设置eap / ttls的任何内容,因此,只需按照下面提到的youcl链接设置证书和eap.conf部分。)

参考文献:

http://freeradius.org/

http://wiki.freeradius.org/SQL_HOWTO

http://sourceforge.net/projects/dalo​​radius

https://www.youcl.com/info/6474

http://rpmfind.net//linux/RPM/fedora/devel/src/freeradius-2.0.5-1.fc10.src.html

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏