仅限 LAN 和 802.1x 网络上的 Internet 用户使用相同的 VLAN,并使用 pfSense 作为网关

仅限 LAN 和 802.1x 网络上的 Internet 用户使用相同的 VLAN,并使用 pfSense 作为网关

我正在为学生宿舍创建 ISP。局域网已经建好并开始工作,配有几台 CISCO 交换机。我想通过安全且自动的方式为付费用户(按月)提供互联网。在不久的将来,可能还会在“不太私密”的地方(主要是学生,但他们可能不住在宿舍)设置接入点(还是 CISCO)来连接网络,因此连接必须是安全的,并且仅限于住户(如果只有付费用户无线访问网络,这是可以接受的)。

我的愿望如下:

  1. 登录应该简单易懂,并适应不断变化的社区(每年 150-200 次出发/到达)
  2. 在订阅结束后自动断开用户的互联网连接(用户仍然可以使用局域网)
  3. 互联网网关的管理接口(带宽、连接用户……)
  4. 当非付费用户想要访问互联网时,强制门户(或其他方式)用于解释如何订阅

但是我有一个很大的限制:人们(付费用户或非付费用户)必须能够在他们之间进行通信(同一个 VLAN)。

对于 1. 我认为 802.1x PEAP 是正确的解决方案,它在服务器上使用证书,在客户端部分仅使用用户名/密码。我不必在每个设备上都放置证书。对于 2. 我考虑使用 LDAP radiusProfile objectClass 中的“expiration”,并在用户订阅时更新此值。对于 3. 和 4. 解决方案之一可能是 pfSense。

由于 802.1x 和用户位于同一 LAN 上的限制,除了让非付费用户拥有 RADIUS“用户帐户”之外,还有其他可能性吗?我认为不是。

据我了解,802.1x 配置在网络设备(AP 或交换机)上,并直接与 RADIUS 服务器通信,因此pfSense 如何知道用户何时在某个网络设备上通过身份验证,以便绕过强制门户?我不希望我的用户必须在他们的设备上登录并再次登录强制门户,它必须是透明的。

我看到的实现方式如下:

User NP: non-paying user = access to LAN but not to Internet; access to captive portal when asking for Internet;
User P: paying user = access to LAN and Internet until suscription expires;

User NP User P
  |       |          _______  same     ________                 _________
  |       |   802.1x |RADIUS| VLAN    |pfSense| User P requests |        |
---------------------|Client|---------|Net    |-----------------|INTERNET|
                     |______|         |Getaway|                 |________|
                                          |
                                          |User NP requests
                                      ____|___
                                     |Captive|
                                     |portal |
                                     |_______|

问题是,我不知道 pfSense 如何知道用户 P 是否被允许连接到互联网,而无需询问用户的 RADIUS 用户名和密码以绕过强制门户。有没有办法,pfSense 可以自动检索有关 802.1x 连接的信息而无需重新登录?或者也许我遗漏了一些东西,或者我误解了 802.1x 的工作原理?

我愿意接受任何建议、改变或任何事情,但它必须满足关键标准:约束和愿望 1 到 3。

相关内容