标签 wifi 下的文章


玩下认证门户的RFC标准


认证门户(Captive Portal)是生活中非常常见的上网准入方式。当我们连上一个开放式(不需要密码即可连接)的 Wi-Fi 接入点以后,几乎都不能直接访问互联网,而是需要在一个网页上进行一些认证后才可以访问,这就是认证门户。

从这种 Wi-Fi 接入点的准入方式来说,我们很容易就发现一个问题:需要访问网页才能让用户开始准入认证,但怎么才能让用户去访问呢?目前通行的一种做法是直接劫持 DNS 请求或者 HTTP 请求,重定向到认证页面。这种做法在 HTTPS 时代之前很容易做到,但是 HTTPS 时代之后就遇到了困难:由于认证门户并没有用户访问的网站的证书,要劫持用户就势必要用假的证书来进行,这样一来二去也会给用户带来信任不安全证书的坏习惯。

当然,现在的系统也都有自己的做法。比如 Windows 就会尝试用 http 连接 www.msftconnecttest.com,如果请求被重定向了,那么就会弹出页面让用户进行登录。这虽然解决了一部分问题,但是怎么看怎么不清真对吧,所以在 2015 年,RFC 7710 规定了一种方式:如果 DHCP 或 RA 在指定的 option 中发送了一个 URL,那么就引导用户前往该页面进行认证。

RFC 7710 看起来确实解决了一些问题,但是如果用户此前已经登录,其实是没必要再次登录的。这样系统还是绕不开一次互联网连通性的测试,当然 DHCP 服务器可以在通过认证的情况下不发送有关 option,然而 DHCP 服务器并不一定和计费系统是耦合的,做这种耦合也是复杂且不合适的。所以 capport 工作组设计了一套认证门户的标准,也就是 RFC 8908RFC 8910(代替 RFC 7710)。

我了解到 capport 工作组的这些内容,是因为前两天名为菜色狼的群友去了澳门,在澳门线下赌场看完性感荷官在线发牌之后回到了他下榻的喜来登酒店,连上 Wi-Fi 后发现了名为“到期时间”的内容。

csl-android.jpg

// 点开我,里面还有许多内容!