Radius feedback from AP to WiFi client

Radius feedback from AP to WiFi client

我们公司有以下设置:一台装有 CentOS (gw) 的网关 PC,运行 Radius 和一些流量过滤程序。我们所有的员工都通过无线方式连接,并且我们已部署 WPA2 Enterprise 加密。用户位于 gw 上的 MySQL 数据库中,并且在那里定义了他们的用户角色 - 决定哪个用户可以访问哪个 SSID。我们有 4 个 SSID(因此有 4 个 VLAN),因此目前有 4 个用户组 - 每个用户组都有自己的 QoS、带宽限制等规则。

网络运行良好,除了一个问题 - 当用户错误验证时,他得不到任何反馈。WiFi 客户端(每个人都在使用 iMac 和 Macbook,IT 部门只有几台 Windows/Linux 机器)陷入了某种困境,他说他已连接,但没有有效的 IP,因此无法访问互联网。由于 MacOS 默认记住密码,他得出结论,他已成功连接,并且再也不会要求输入密码。这意味着任何进行无效登录的人都会被困在这种状态,直到他们从档案中删除记住的密码。你可以想象,对于一家拥有 80 多名员工的快速增长的公司来说,这是非常繁琐的。

我们的 AP 是 WRT54GL,安装了 DD-WRT 作为固件。

似乎 AP 上的 radius 客户端没有向员工计算机上的 WiFi 客户端发送任何正确的反馈。有人有这种设置的经验吗?如何解决这个无反馈问题?更好的 AP 会是答案吗?我一直在研究思科的 WAP2000。成本不是问题。

这是我们的 eap.conf 文件中 mschapv2 上方的注释:

  #
                #  This takes no configuration.
                #
                #  Note that it is the EAP MS-CHAPv2 sub-module, not
                #  the main 'mschap' module.
                #
                #  Note also that in order for this sub-module to work,
                #  the main 'mschap' module MUST ALSO be configured.
                #
                #  This module is the *Microsoft* implementation of MS-CHAPv2
                #  in EAP.  There is another (incompatible) implementation
                #  of MS-CHAPv2 in EAP by Cisco, which FreeRADIUS does not
                #  currently support.
                #

答案1

  1. 获取支持“监控”或“rfmon”模式的无线网卡,并将其与 Wireshark 结合使用,以查看网络流量中的 802.11 标头。这在很大程度上取决于芯片组、操作系统和驱动程序,但 Wireshark 有一些不错的文档为您指明正确的方向。您正在寻找的是实际的 802.11 管理标头,而不仅仅是“翻译的”以太网第 2 层信息(再次参见 Wireshark 文档)。听起来您的网络主要通过 802.11,因此花在弄清楚这一点上的时间以后可能是值得的 - 您需要查看实际的 802.11 标头最终以进行故障排除。

  2. 确认这实际上是您的接入点的问题(很可能是)。使用“802.11”作为链路层类型启动 Wireshark,然后针对接入点进行身份验证并故意输入错误的密码。看看会发生什么。您可能还需要查看 Radius 服务器和接入点之间发生了什么。如果您在解释结果数据时遇到问题,您可以随时将其保存为 pcap 并在此处提供。您可能只是想在花费大量资金购买接入点之前确认这是 radius 客户端的问题。

  3. 一旦你确认这是接入点的问题,就去购买一些不错的“企业级”接入点。我们使用 D-Link DWL3200,就接入点而言,这是一个相当中庸的接入点。我唯一真正的抱怨是他们的命令行界面糟透了但另一方面,它们每个只需 300 美元左右,所以我不能期望太多。

底线:在你开始花钱解决问题之前(即使你有很多钱可以花),先弄清楚什么是实际上错了先。

答案2

You didn't mention which authentication protocol you are using. "WPA2 Enterprise" is an umbrella term. Are you using EAP-TLS? Or PEAP-MSCHAPv2? Do you have client certificates in place or just the CA certificate + username/password? Depending on the actual protocol, the authentication error happens at a different protocol stack level.

If you are using PEAP-MSCHAPv2 (most likely given your hint at passwords), make sure the Radius server is configured to send the MS-CHAP-Error message back to the client. I think it's disabled by default in some versions of freeradius. Look for this in eap.conf:

           mschapv2 {
                    #  Prior to version 2.1.11, the module never
                    #  sent the MS-CHAP-Error message to the
                    #  client.  This worked, but it had issues
                    #  when the cached password was wrong.  The
                    #  server *should* send "E=691 R=0" to the
                    #  client, which tells it to prompt the user
                    #  for a new password.
                    #
                    #  The default is to behave as in 2.1.10 and
                    #  earlier, which is known to work.  If you
                    #  set "send_error = yes", then the error
                    #  message will be sent back to the client.
                    #  This *may* help some clients work better,
                    #  but *may* also cause other clients to stop
                    #  working.
                    #
                    #send_error = no
            }

and change it to yes.

答案3

If you are sure about that cost is not an issue then get a real Cisco access point (like cisco aironet) avoid linksys if you can.

http://www.cisco.com/en/US/products/hw/wireless/index.html

Linksys is ok for home and small offices. It is not recommended for anything bigger however.

You can even get a WLC (wireless lan controller). It's a bigger investment, but it worth it. You can manage your aps from a central place and the wireless clients can also benefit as it manages your channel settings, antenna power levels and client roaming.

Update (reply to comment): I use wrt54gl at home it works great in general, but if I download with high speed the wireless part can die (which is fixable with a reboot). The switch fuction is implemented in CPU. If you copy a large file from one machine to another cpu usage goes up significantly. With high cpu usage it is not that stable.

update2: No WLC is not strictly necessary. I do not even have one at work, but I would like to because it just makes things easier. To test if your AP is causing the trouble get a Cisco (standalone) Aironet AP (just one) and test it with the same setup to see if it solves your problem. I am sure you can get a test drive from a decent vendor.

答案4

I think may be a problem with MacOSX as I have a similar issue but it's not using radius or Linksys gear.

Have you got a another OS to test it with? see if it does it with an iphone or windows pc.

相关内容