Linux上搭建FreeRadius服务器

FreeRadius是一个开源的radius服务器,一般工作在Linux系统上。本文主要是描述FreeRadius的安装和使用过程,所以文中出现的相关软件版本仅供参考。

1、安装CentOS 6.6系统

CentOS 是RHEL(Red Hat Enterprise Linux)源代码再编译的产物,而且在RHEL的基础上修正了不少已知的 Bug ,相对于其他 Linux 发行版,其稳定性值得信赖。为什么我会选择CentOS,是因为我选择了相信别人。

2、下载安装freeradius-server-release_2_2_0

首先,下载下来的freeradius-server-release_2_2_0是一个压缩包,linux中关于解压文件的命令请自行百度。

Linux上搭建FreeRadius服务器_第1张图片

然后,进入解压目录配置./configure

最后,编译make && make install

查看服务器安装位置,一般在/usr/local/etc/raddb下面。

在安装的这个环节我遇到缺少编译环境gcc、安装其他radius服务器版本make失败的问题。

3、本地验证freeradius服务器是否安装成功

安装完成后,通过命令radiusd -X启动freeradius服务器,出现如下图的监听状态说明启动成功了。如果要停止radius服务器可以使用“ctrl+c”,也可以使用命令killall -9 radiusd。

Linux上搭建FreeRadius服务器_第2张图片

启动freeradius自测试:radtest steve testing 127.0.0.1 1812 testing123,如果提示找不到host的ip地址的话,请在host文件中添加host—ip的映射关系。如下图,第一次本地自测试被拒绝了,第二次在user文件中添加了steve这个用户名和密码后接受了。

Linux上搭建FreeRadius服务器_第3张图片

4、搭建IPv4和IPv6的radius测试环境

freeradius三个比较重要的文件radius.conf、clients.conf、users,改动这三个文件中的相关参数来实现radius服务器正常工作。

radius.conf文件用来配置radius服务器的属性,采用ipv4还是ipv6地址,因为freeradius服务器不能同时支持ipv4和ipv6地址认证,所以需要编辑到此文件来满足不同的ip版本认证。

clients.conf文件主要用来增加客户端的通信地址和通信密钥。

client 2013::4{

   secret = testing123

}

client 2013::6{

   secret = testing123

}

users文件用来增加用户的名字和密码

Linux上搭建FreeRadius服务器_第4张图片

freeradius服务器的ipv4和ipv6认证切换过程请参考百度https://wenku.baidu.com/view/5fa35e948762caaedd33d43b.html###

TW交换机上的radius服务器的配置如下,主要是将服务器的地址设置为ipv6格式的。

Linux上搭建FreeRadius服务器_第5张图片

由于交换机上802.1X基于ipv6radius服务器认证的bug未解,所以一直认证不成功。使用H3C交换机测试是可以完整认证的。下面这段报文是抓的服务器上的,可以发现交换机貌似没有收到服务器发过去的challenge报文,一直在发送request。

Linux上搭建FreeRadius服务器_第6张图片

在测试过程中,还出现了交换机发送的access-request报文后,服务器确回的是icmp目的不可达报文。后来参考了资料发现是linux防火墙的原因,然后我就一股脑儿的将ipv4和ipv6的防火墙全部关闭掉了。

Linux上搭建FreeRadius服务器_第7张图片

人生第一次使用linux系统,感觉很高大上。

你可能感兴趣的:(Linux上搭建FreeRadius服务器)