FreeRadius 2.1.6的安装

hansel@163.com

2008-9-7

Linux: RedHat Enterprise Linux AS 5

红帽子企业版安装了freeradius-1.1.3-1.2.el5,先卸载:

# rpm -ev freeradius

1.       下载
http://freeradius.org/download.html
目前的版本是2.1.6,文件名是freeradius-server-2.1.6.tar.bz2

编译
#cd /opt
#mkdir host
#tar xjvf /opt/download/freeradius-server-2.1.6.tar.bz2
#cd freeradius-server-2.1.6
#./configure
#make
#make install

安装的文件所在的系统目录:

1)        /usr/local/sbin: checkrad  radiusd  radmin  radwatch  rc.radiusd

2)         /usr/local/bin:radlast      radtest   randpkt      rlm_dbm_parser  radclient       radsniff     radwho  radeapclient    radsqlrelay  radzap   rlm_dbm_cat

3)         /usr/local/etc/raddb: 配置文件

4)         /usr/local/share/man:man手册

5)         /usr/local/var/run/radiusd:运行时生成的文件存放目录

6)         /usr/local/var/log/radius:日志文件存放目录

7)         /usr/local/var/log/radius/radacct

8)         /usr/local/share/freeradius:存放各个属性定义

9)         /usr/local/lib: freeradius使用的库文件

测试是否安装成功:

1)        #radiusd –Xf
…………..

2)        在另外一个终端上运行:
# radtest test test localhost 0 testing123
Sending Access-Request of id 18 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-Reject packet from host 127.0.0.1 port 1812, id=18, length=20

说明可以正常和radiusd进行通信。

2.       配置radius

1)        修改radius.conf

去掉$INCLUDE sql.conf的注释;

auth_badpass = yes

auth_goodpass = yes

2)        修改sql.conf

server = "localhost"

#port = 3306

login = "radius"

password = "radpass"

3)        修改clients.conf:增加
client 192.168.0.0/16 {
        secret          = testing123
        shortname       = private-network
        nastype         = other
}

4)        修改eap.conf

default_eap_type = peap

5)        修改sites-enable/ default和site-enable/ inner-tunnel

在authorize 、authenticate、accounting和session中去掉sql前面的注释。

去掉auth_log的注释,注释掉unix

6)

这样192.168.x.x的AP都可以访问Radius服务器。

3.       生成证书 (如果使用外部证书可以跳过这步)
生成随机数:
# cd /usr/local/etc/raddb/certs
# make dh
# make random

编辑ca.cnf、server.cnf、client.cnf文件中的"input_password" 和 "output_password"字段,设置密码,分别编辑[certificate_authority], [server], 和[client]字段为证书的信息, default_days字段为证书有效期。

修改Makefile:

a)       不知道为什么对于ca.cnf日期的修改不生效,生成的根证书有效期总是一个月,所以只好在生成根证书的命令行加上一个-days 3650
修改后如下:

#more Makefile

ca.key ca.pem: ca.cnf

openssl req -new -x509 -days 3650 -keyout ca.key -out ca.pem -config ./ca.cnf

b)      由于客户端证书是用server证书签名,增加导出server证书的Make目标:
server.der: server.pem
        openssl x509 -inform PEM -outform DER -in server.pem -out server.der
同时修改:
server: server.der

c)      还可以增加一个删除所有证书的Make 目标:

allclean:

rm -f *.pem *.der *.csr *.crt *.key *.p12 serial* index.txt*

# make ca server client

验证根证书:

# openssl x509 -in ca.pem -text –noout

安装客户端证书:

d)      导入根证书:生成的ca.der为根证书,需要先导入到客户端,注意存放的位置要选受信任的根证书颁发机构。

e)       导入客户端证书:生成的user@example.com.pem是客户端证书(如果更改了client.cnf中的commonName,则不是这个名字),不过使用client.p12文件更容易导入Windows系统。

服务器端配置:

注意,如果修改了server.cnf的input_password,则需要修改eap.conf文件中的tls字段的private_key_password信息。

4.       设置为开机自动启动

# cp freeradius-server-2.1.6/scripts/rc.radiusd /etc/init.d/radiusd

# vi /etc/init.d/radiusd

在 #!/bin/sh 一行后面加入:

# radiusd      This shell script takes care of starting and stopping

#             standalone radiusd.

#

# chkconfig: - 70 70

# description: free radius server.

# processname: /usr/local/sbin/radiusd

# config: /usr/local/etc/raddb

使用命令:

#chkconfig --add radiusd

#chkconfig radiusd on

5.       配置apache HTTP server

允许在没有index.html等文件时列出目录

# vi /etc/httpd/conf.d/welcome.conf

去掉Indexes前面的减号

<LocationMatch "^/+$">

Options Indexes

ErrorDocument 403 /error/noindex.html

</LocationMatch>

6.       配置mysql

a)       安装phpMyadmin (如果使用命令行方式配置,可以省略该步骤)

下载:phpMyAdmin-2.11.9.5-all-languages.tar.bz2  高版本的需要php-5.2以上版本,RHEL 5只带了php-5.1.6

解压:tar xjvf phpMyAdmin-2.11.9.5-all-languages.tar.bz2

创建一个config目录 mkdir config ; chmod o+rw config

做符号链接到httpd目录: ln phpMyAdmin-2.11.9.5-all-languages /var/www/html/phpMyAdmin

设置:http://localhost/phpMyAdmin/ /scripts/setup.php

设置认证方式为cookie,配置完并保存后,移动config /config.in.php到上一级目录。

解决phpMyAdmin的警告:

i)安装mbstring

rpm -Uvh php-mbstring-5.1.6-20.el5.i386.rpm

ii)使用phpMyAdmin管理mysql,如果出现以下提示

Cannot load mcrypt extension

在rpmfind.net下载以下RPM包即可解决上述问题

php-mcrypt

php-mhash

libmcrypt

libmcrypt-devel

libmhash

libmhash-devel

修改/etc/php.ini

增加:

;;;;;;;;;;;;;;;;;;;;;;

; Dynamic Extensions ;

;;;;;;;;;;;;;;;;;;;;;;

extension=mbstring.so

extension=mcrypt.so

b)      创建并配置数据库radius (可以使用phpMyAdmin来配置,下同)

# mysqladmin -u root -p create radius

# cd /usr/local/etc/raddb/sql/mysql

# mysql -u root -p radius < admin.sql

# mysql -u radius -p radius < schema.sql

可选创建其他表,可以使用的SQL脚本:ippool.sql, nas.sql, wimax.sql

7.       配置freeradius的管理WEB页面dialup_admin

a)       复制dialup_admin到/usr/local/opt/

# cp  freeradius-server-2.1.6/dialup_admin/ dialup_admin/ -a

b)      创建符号链接

# ln -s /usr/local/opt/dialup_admin/htdocs/   /var/www/html/dialup_admin

c)      创建mysql 数据表

#cd dialup_admin/sql

# mysql -u radius -p radius < badusers.sql

还有mtotacct.sql, totacct.sql, userinfo.sql

导入userinfo.sql出错:

ERROR 1067 (42000) at line 4: Invalid default value for 'id'

在userinfo.sql文件中去掉DEFAULT ‘0’

d)      修改配置文件

修改admin.conf中以下设置:

general_base_dir: /usr/local/opt/dialup_admin

general_radius_server_auth_proto: chap   //将pap改成chap

general_encryption_method: clear        //将crypt改成clear

general_radiusd_base_dir: /usr/local

general_domain: xxxx

sql_username: xxxx

sql_password: xxxx

sql_usergroup_table: radusergroup

sql_debug: false

e)       修改apache的php.conf配置文件

# vi /etc/httpd/conf.d/php.conf

在未尾添加

AddType application/x-httpd-php .php .php3

重启httpd

# service httpd restart

8.       参考文档

a) 红帽RHEL5U3平台实现pppoe接入记账认证服务器http://linux.chinaunix.net/ebook/doc/2009/06/05/1116103.shtml

FreeRadius 2.1.6的安装相关推荐

  1. freeradius 在centos上的安装和调试

    1.使用yum安装即可,确定安装的是freeradius2,而不是1.如果以前又freeradius,先卸载      yum remove freeradius      安装      yum i ...

  2. rlm sql mysql.so_找了好久,终于找到一篇关于FREERADIUS新版的安装说明。和以前的1.X.X还是有很大不同的。...

    一.安装openssl 二.安装mysql 直接用命令#yun groupinstall "MySQL Database"安装MySQL数据库. 安装好后,#service mys ...

  3. pptp mysql 认证_CentOS6.5搭建PPTP+Freeradius整合***管理系统

    1.搭建PPTP服务php 一.安装yum源mysql [root@Node ~]# cd /etc/yum.repos.d [root@Node ~]# wget http://mirrors.16 ...

  4. freeradius+mysql+交换机认证

    一.关闭防火墙和Selinux [root@master raddb]# service iptables stop [root@master raddb]# vim /etc/selinux/con ...

  5. Ubuntu中使用freeradius配置RADIUS,并在RADIUS中配置LDAP

    安装RADIUS Remote Authentication Dial In User Service,远程用户拨号认证系统由RFC2865,RFC2866定义,是目前应用最广泛的AAA协议.AAA是 ...

  6. 基于OpenWRT+FreeRadius+TinyRadius+Daloradius实现portal加radius安全认证

    OpenWRT+FreeRadius+TinyRadius+Daloradius实现portal加radius认证 想要实现的需求是:当接入网络时,需要跳转到自定义的portal认证页面,输入用户名和 ...

  7. Freeradius服务器的搭建流程

    Radius.Firewall 安装配置 1.说明 使用 freeradius 和 mariadb 配置 Radius 认证服务器 2.安装命令 使用在线 yum 源安装,保证网络畅通,执行以下命令等 ...

  8. 在 SUSE 11 sp2 上安装 freeradius

    国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html 内部邀请码:C8E245J (不写邀请码,没有现金送) 国 ...

  9. rlm sql mysql.so_UBUUTU7.10上安装配置freeradius+mysql+rp-pppoe手记

    5.安装freeradius1.1.2 将源码包解压缩: # tar –zxvf freeradius_version 进入生成的目录中进行编译安装: 编译之前,先处理一下MySQL的库,freera ...

最新文章

  1. Swift类与结构、存储属性、计算属性、函数与方法、附属脚本等
  2. 说一说安装sklearn遇到的坑
  3. oracle9i解密rewrap,ORACLE9I+DATAGUARD+RMAN
  4. 百度智能云拿下MTCS最高安全评级,企业出海再添安全通道
  5. 2017年程序媛和工程狮绝对不能忽视的编程语言、框架和工具
  6. Node+Express+Vue2.x+Mongodb结合muse-ui、less、rem等实现简易博客
  7. Linux下配置MySQL需要注意的几点
  8. JAVA进阶教学之(Object类中的hashCode方法)
  9. [设计纹理素材]可爱手绘淡雅清新图案花样背景素材
  10. 基于matlab的音乐合成论文,基于matlab软件的音乐合成毕业论文.doc
  11. 今日头条成锤子“接盘侠”?“是真的!”
  12. AutoIt:工具栏中没有其它工具,eg,Koda
  13. 海康DS-2DY5223IW-DM
  14. python菜鸟教程w-【读书】Django教程(菜鸟教程)
  15. MAC下安装yarn方法
  16. java程序猿面试问缺点怎么回答_当程序员面试被问“你的缺点是什么?”你该怎么回答?...
  17. 用bootstrap实现的,三种风格的登录界面网页源码
  18. java 日程安排_Java实现 LeetCode 731 我的日程安排表 II(二叉树)
  19. 如何用计算机恢复出厂设置,告诉你电脑如何恢复出厂设置
  20. github+hexo+butterfly 搭建个人博客

热门文章

  1. ibm T60 笔记本开机显示PXE-E05
  2. Linux上的Shebang符号
  3. python如何自动生成流程图
  4. 没有美术基础也可以学习3D模型吗?| 零基础学建模
  5. html5常见语义化新元素_HTML 5中的新元素
  6. switch case 、循环结构
  7. duilib学习笔记
  8. 数据结构——优先级队列(堆)
  9. 为 Python Server Pages 和 Oracle 构建快速 Web 开发环境。
  10. Emotet银行木马传播特制感恩节“祝福”