现在几乎每个小工具都“智能”且能远程办公,它们正在改变我们的工作方式,并且使得管理企业网络变得前所未有的困难。但是幸运的是,随着网络愈加复杂,网络管理员可用的工具范围也在不断扩大。在 Ubiquiti,我们不断努力使我们的产品与技术集成,从而增强我们客户的操作能力。

在这些工具中,我们能够更好地与 UniFi 产品集成的是 RADIUS 认证。虽然这绝不是一项新技术,但近年来它的实用性有所提高。许多公司网络使用 RADIUS,这是有原因的。由于 BYOD 的普及,因此很难想象没有 RADIUS 身份验证的世界会如何。

UniFi 与 RADIUS 配合默契。UniFi 允许您在每一处站点管理网络,无论远在何处,使用RADIUS 都可以在每个站点使用相同的登录名。

在这篇博客中,我将解释 RADIUS 的工作原理,然后向您展示如何将其与 UniFi 集成。

什么是 RADIUS 身份验证?

RADIUS(远程用户拨号认证服务)是一种流行的网络协议,用于满足现代 IT 环境的 AAA(身份验证、授权和计费)需求。RADIUS 通过提供更高程度的安全、控制和监控,为管理员提供更好地管理网络访问的方法。简单地说,RADIUS 允许连接到无线网络的远程用户识别自己的身份,然后获得所需的访问权限。

radius2-768x480-cn

在启用 RADIUS 支持的身份验证后,身份验证请求和凭据将从用户的设备发送到 RADIUS 客户端。RADIUS 客户端将此请求转发到 RADIUS 身份验证服务器,以检查预定义规则/用户帐号数据库。如果请求通过,则将接受响应通过客户端发送回至用户设备。计费功能(如果启用)可为管理员提供其他信息,例如会话长度和带宽。

通过 UniFi,AP/ UniFi 交换机经过配置,还可以充当 RADIUS 客户端,以帮助使用 RADIUS 身份验证服务器对用户/设备进行身份验证。在网络上配置 RADIUS 可能会花费很多时间,但将其合并到 UniFi 中很简单。

我在家庭网络上设置了两台服务器(Linux 和 Windows)作为身份验证服务器,并且确认将 RADIUS 配置与 UniFi 管理的网络集成仅需要两个步骤:

  1. 在 RADIUS 服务器上将 AP/ UniFi 交换机定义为 RADIUS 客户端,并创建要添加到UniFi 设置中的共享机密/密码。
  2. 将 RADIUS 服务器/ RADIUS 代理服务器添加到 UniFi 控制器中的网络。

我将向您展示如何通过 NPS 的 Windows 服务器 RADIUS 配置以及 Ubuntu Linux 身份验证服务器来进行详细操作。

微软 Windows 服务器 2012 R2

可以通过网络策略服务器(NPS)进行 Windows 中的 RADIUS 配置,该功能可以通过 NAP 添加到 Windows Server 安装中。在许多网络中,Windows NPS 是一个不错的选择,因为它与动态目录关联的用户/权限集成在一起。

NAP-1024x323

为了演示,我设置了一个新的 Windows 服务器 2012 R2 VM作为身份验证服务器。

将 NPS 服务器配置为 RADIUS 服务器后,右键单击“ RADIUS客户端”并选择“新建”,将 UAP /US 添加为 RADIUS 客户端。

为了将 UAP-AC-PRO 添加为客户端,首先我输入了设备的 IP 地址,并给它起了用户友好名称“ apradius1”,然后手动输入了“共享密钥”。共享密钥用于验证是否允许 RADIUS 客户端通过 RADIUS 服务器处理身份验证请求。在较大的环境中,明智的做法是设置“共享密钥模板”以节省一些时间,而不是单独添加每个模板。

为了完成服务器配置,我确认已打开必需端口(用于授权的端口1812,用于计费的端口1813)以允许服务器接收请求。

注意:如果使用 PEAP 对无线网络进行身份验证时遇到任何问题,就像我所做的那样,只需将证书导入到我的服务器以进行服务器身份验证。这样就会顺利运行了。

Linux FreeRADIUS 配置

为了配置和测试 Linux RADIUS 身份验证服务器,我在 VM 上安装了最新版本的 Ubuntu(16.10)。尽管 Ubuntu 本身并不支持 RADIUS 功能,但是 Linux 管理员可以使用二进制软件包轻松提供一个强大的开源选择 FreeRADIUS。FreeRADIUS 是目前最受欢迎的选择之一,而且意义非凡,它是免费的,即使对于像我这样的 Linux 业余爱好者,设置也非常容易。(请在此处查看更深层次的帮助指南

下面是 Ubuntu FreeRADIUS 服务器在网络中使用 UniFi AP 所必须采取的简单步骤。

首先,我使用以下命令安装了 FreeRADIUS:

$ sudo apt-get install freeradius

接下来,我打开了用于 RADIUS 身份验证(1812)和计费(1813)的默认端口。

创建了这些必要的例外防火墙之后,我准备配置服务器。我的 clients.conf 文件位于/etc/freeradius目录中。

我按照此文件中的说明进行操作,添加 AP。我添加了 UAP-AC-PRO,再次将其命名为“ apradius1”。添加到此客户端后,我提供了 AP 的 IP 地址以及密码。 这是我放入Clients.conf文件中的内容:

client apradius1 {
    ipaddr = 192.168.1.139
    secret = secret1234
}

我唯一需要编辑的其他文件是同一目录中的 Users 文件,以提供用于测试的帐户凭据。如果不是出于测试目的,则管理员可能不希望创建帐户并输入纯文本密码。

许多模块可用于针对加密的用户数据库检查用户凭据。例如,许多管理员通过将 LDAP 组件添加到 FreeRADIUS 来将 FreeRADIUS 与 LDAP 集成在一起(请参考此处操作指南)。但是,为简单起见,我只是添加了一个虚假的用户凭据,以允许我测试 RADIUS 功能。

将 RADIUS 服务器添加到 UniFi 设置中

要配置您的 UniFi 托管网络,只需打开控制器并完成以下步骤:

  • 转到设置>无线网络
  • 通过单击“编辑”来创建新网络或修改现有网络。
  • 在安全性选项下选择“ WPA Enterprise”
  • 在“ RADIUS 身份验证服务器”下,输入 RADIUS 或 RADIUS 代理服务器的IP 地址
  • 输入 RADIUS 服务器用于授权的端口,默认情况下为 1812
  • 在密码字段中,输入您指定为 Radius 客户端的访问点的共享密钥。

可选步骤-仅对于 RADIUS 计费功能需要:

  • 点击“ + RADIUS 计费服务器”
  • 添加 IP,端口(默认情况下为 1813)和共享密钥,以在 RADIUS 服务器上进行计费。

unifi-settings-1024x580

若要在 UniFi 控制器中完成 RADIUS 配置,请按照以下步骤操作:选择网络“ TurtleRA1”,在安全性选项下选择“ WPA Enterprise”,在“ RADIUS Auth 服务器”下添加我的 RADIUS 认证服务器的 IP 地址。输入端口 1812,在“密码”字段中输入之前创建的共享密钥。 单击“保存”以应用更改。

使用 EAP 方法验证客户端设备

完成配置后,将设备连接到 RADIUS 网络来测试是否一切正常。勾选启用 RADIUS 功能的AP 将提示您选择 EAP 方法,并且检查您在 RADIUS 服务器上授权的任何方法。

为了测试新的 RADIUS 设置,我将手机连接到了新网络“ TurtleRA1”。

我选择了 PEAP(受保护的可扩展身份验证协议),因为经过验证,它在 RADIUS 服务器上是启用的。

进入测试凭证后,点击“保存”。AP 通过 RADIUS 服务器认证,允许我的设备成功连接。

使用 UniFi 设置 RADIUS 从未如此简单。我们将在 RADIUS 相关文档中添加内容,敬请期待。这些文章将提供有关设置计费、故障诊断失败的身份验证请求等方面的附加指南。

其他资料