截至目前,我们已经将MSR810-W配置在胖AP模式下,介绍了如何配置无线Portal认证(H3C MSR810配置无线Portal认证)、有线Portal认证(H3C MSR810配置有线Portal认证)和结合iMC的AAA认证(MSR810使用iMC做认证服务器配置Portal认证)。又将其配置为AC设备,结合两台WA5530搭建了WLAN网络(400元自建企业级Wi-Fi!零基础搭建AC+瘦AP环境,全网最简组网指南),并介绍了如何配置本地无线802.1X认证(MAC认证总失效?H3C无线802.1X认证从配置到上线的全攻略)和结合iMC进行AAA认证的802.1X认证(H3C网络认证进阶:iMC联动配置无线802.1X认证全攻略)。
虽然iMC可以免费使用且功能强大(iMC认证管理利器:手把手教你安装EIA(UAM/TAM)组件),但许多场景下我们更需要开源的轻量级方案。本文将展示如何使用FreeRADIUS这一专业开源系统,替代iMC实现无线的Portal认证。。
部署环境我这里用的是Ubuntu 24.04,应该同样适用于Ubuntu 20.04和Ubuntu 22.04系统。
首先,Ubuntu的软件仓库中包含了FreeRADIUS软件,我们直接执行命令即可安装FreeRADIUS及其常用组件。
apt-get update
apt-get install freeradius freeradius-utils -y
安装完成后,可以使用以下命令检查软件版本:
freeradius -v
从iMC配置AAA认证的过程中,我们可以看出radius认证包含认证接入设备和认证接入用户,其中接入设备就是NAS设备,接入用户就是终端设备的登录信息。
在FreeRADIUS中,使用客户端配置文件/etc/freeradius/3.0/clients.conf定义接入设备,这个文件用于定义哪些网络设备(NAS)被允许作为客户端来访问FreeRADIUS服务器,相当于在iMC中添加接入设备。
客户端需要指定为ipaddr、ipv4addr和ipv6addr中的一个,一般情况下使用ipaddr即可;再配置一个共享秘钥用于在NAS和FreeRADIUS之间“加密”和“签名”数据包,共享秘钥的长度需满足至少为8个字符。
例如,我添加本地AC作为NAS设备的配置如下:
nano /etc/freeradius/3.0/clients.conf
client msr810 {
ipaddr = 192.168.0.0/23
secret = tiejunge
}
接下来,我们再从用户配置文件/etc/freeradius/3.0/users中添加一个测试用户。Cleartext-Password表示使用明文密码,适用于测试。生产环境建议使用更安全的NT-Password(MD4哈希)等格式进行存储。
nano /etc/freeradius/3.0/users
tiejunge Cleartext-Password := "tiejunge"
貌似到这里我们就完成了接入设备和接入用户的配置了,检查一下FreeRADIUS的服务状态,确保处于运行状态,并设置为开机自启。
在设备上进行应用之前,我们可以使用radtest命令进行本地认证测试。
回显中的Received Access-Accept就表示认证测试成功!
使用netstat命令检查一下FreeRADIUS的端口监听情况。
可以看到,FreeRADIUS同时监听了IPv4和IPv6的认证端口1812和计费端口1813,不过我们没有配置计费策略,后面设备对接也不用配置。
接下来,我们继续在AC+AP的测试环境中(400元自建企业级Wi-Fi!零基础搭建AC+瘦AP环境,全网最简组网指南),配置无线Portal测试一下FreeRADIUS的认证是否能够正常使用。
首先,配置一个radius认证策略,调用FreeRADIUS进行认证。
#
radius scheme freeradius
primary authentication 192.168.1.73
key authentication simple tiejunge
user-name-format without-domain
nas-ip 192.168.1.81
然后,创建一个认证域,调用radius认证策略。
#
domain freeradius
authentication portal radius-scheme freeradius
authorization portal radius-scheme freeradius
接着配置本地Portal Web服务器。
#
portal local-web-server http
default-logon-page bendi.zip
user-password modify enable
#
portal web-server freeradius
url http://172.17.17.1/portal
captive-bypass ios enable
然后,我们就可以创建一个无线服务模板并调用Portal认证了,再将无线服务模板绑定到射频口上面。
#
wlan service-template protal
ssid portal
vlan 17
portal enable method direct
portal domain freeradius
portal apply web-server freeradius
portal fail-permit web-server
service-template enable
#
wlan ap AP2 model WA5530
radio 2
radio enable
service-template protal
除此之外,还需要配置一下DHCP(网络之路22:DHCP基础实验)。
#
dhcp server ip-pool freeradius
gateway-list 172.17.17.1
network 172.17.17.0 mask 255.255.255.0
dns-list 223.5.5.5
配置完成之后,我们在终端上测试一下Portal认证。
连接网络之后可以自动弹出Portal认证页面,输入预配置的测试账号,单击【登录】。
然后就登录成功了。
这样,我们就实现了对无线网络的Portal认证了,可以通过执行命令可查看Portal配置应用状态。
查看设备上的在线Portal用户信息,可以看到用户的接入信息。
各位看官,把iMC换成FreeRADIUS作为radius服务器,也能轻松实现AAA认证,这种方式你觉得怎么样呢?