测试RADIUS配置方法

时间:2017-08-14 11:35:42

标签: radius freeradius radius-protocol

我正在开发一种需要与RADIUS服务器集成的产品作为身份验证方法。 在配置RADIUS服务器(IP地址,端口,共享密钥)时,我想做一个"测试"为了检查配置是否有效 - 服务器是否可用,它确实是一个RADIUS服务器,共享密钥是可以的。

我做了一些关于如何做的研究, 我的选择是:

  1. 将带有虚构用户名和密码的Access-Request消息发送到RADIUS服务器
  2. 将状态 - 服务器消息发送到RADIUS服务器
  3. RFC 5997介绍了在RADIUS协议中使用状态服务器数据包。 此数据包扩展使客户端可以查询RADIUS服务器的状态。 Status-Server被标记为实验性和信息性RFC而不是标准跟踪RFC

    我的问题是:

    1. 哪些是最常用的使用RADIUS服务器供应商? MS NPS,FreeRADIUS,其他?
    2. 这些供应商是否支持Status-Server请求 - 他们是否实现了此数据包类型?
    3. 如果我将使用Access-Request,我将收到" Access-Reject"在"回复消息"中有失败消息属性。我可以理解拒绝该短信的原因吗?是否有任何错误代码\消息列表是标准的一部分?
    4. 非常感谢,

      Yossi Zrahia

1 个答案:

答案 0 :(得分:3)

广告1)确切(甚至估计)的数字很难获得,但您应该会遇到FreeRADIUS,Microsoft NPS,Radiator和Cisco ACS / ISE。

Ad 2)FreeRADIUS,Radiator支持它。 Microsoft NPS和Cisco ACS / ISE没有。如果你的“测试”被使用一次(在配置时)我将使用选项1和访问请求。如果您希望定期检查RADIUS服务器的可用性和配置,我建议实施这两个选项,并允许在RADIUS配置中配置检查:

    IP: 1.2.3.4
    Port: 1812
    Shared Secret: U7tr453cur3
    Servercheck: [x] Status-Server
                 [ ] Access-Request

广告3)来自RFC2865,section 5.18 (Reply-Message)

“[...]此属性表示可以向用户显示的文本。[...]在Access-Reject中使用时,它是失败消息。它可以指示提示用户的对话框消息在另一个Access-Request尝试之前。[...] Text字段是一个或多个八位字节,其内容是依赖于实现的。它是人类可读的,并且不得影响协议的操作。建议消息包含UTF-8编码的10646 [7]个字符。“

显然没有指定标准消息;但是,如果IP,端口或共享密钥配置不正确,则根本不应得到响应,因为RFC 2865指定:

“来自客户端的请求,其中RADIUS服务器没有共享密钥必须被静默丢弃。”