How*_*amp 8 wifi internet captive-portal
酒店、机场咖啡馆的 Internet 访问通常由强制门户控制,强制您在首次使用时访问特定网页,例如支付页面或接受服务条款或身份验证/授权页面的某些页面。您可以通过无线和有线连接看到这一点。
这是如何运作的?
Kyl*_*ith 14
它当然因无线产品的供应商而异,但根据我的经验,它通常是这样工作的:
Location:
标题,将您重定向到登录/策略页面(例如http://hotelwireless.net/login)。这可能直接存在于智能接入点或中央管理站上。关于如何称呼它,我听说它最常被称为“强制门户”或“无线访问门户”。
小智 6
首先,为了实现重定向,您需要一个内联身份验证器(访问控制器)。在您的主题中,如果您选择集中管理 AP,您将需要一个无线局域网控制器。或者,您还可以放置具有墙花园功能的强制门户类型的网络访问控制器。
NAS 通过混杂模式原始套接字监视进入下行链路(客户端)的流量,当检测到浏览器发起的未经身份验证的客户端流量时,将向其提供 HTTP 重定向作为响应。因此,接收到的浏览器会被重定向到我们的 CAPTIVE 门户主页,该主页可以内联托管在身份验证器上,也可以开箱即用地托管在某些外部 Web 服务器上。
此页面的唯一工作是为用户提供一个用于输入凭据的 UI。输入的凭据将转发回身份验证器守护进程,如 coova chili 中的 chili,此外,这些凭据将作为 Radius 请求传递到 RADIUS 服务器,或者可以在本地进行检查。身份验证成功后,身份验证器处的客户端状态将被标记为已授权,并且客户端将被授予访问权限。
最广泛使用的方法是拦截用户发起的HTTP请求,并返回302代码作为对客户端的响应。在辣椒中,它是通过以下函数完成的
http_redirect2() {
cat < < EOF
HTTP/1.1 302 Redirect
Location: $1
Set-Cookie: PORTAL_SESSIONID=$PORTAL_SESSIONID
Set-Cookie: COOVA_USERURL=$COOVA_USERURL
Connection: close
EOF
exit
}
Run Code Online (Sandbox Code Playgroud)
这种重定向可以通过实用控制的 tun tap 接口轻松实现到拦截客户端流量的客户端接口。进一步的重定向也可以通过 DNS 中毒来实现,但如果响应缓存在客户端浏览器中,有时可能会导致问题。进一步的事情可以根据问题域做更具体的事情。如果你愿意的话我可以帮你。
https://www.arubanetworks.com/vrd/GuestAccessAppNote/wwhelp/wwhimpl/js/html/wwhelp.htm对此有很好的描述。
\n\n这是其中的一部分:
\n\n\n\n强制门户认证流程
\n\nCaptive Portal 是一种三层认证,要求设备连接到网络并获取 IP 地址和相关 DNS 信息,然后才能通过 Captive Portal 进行身份验证。以下步骤说明了使用本机 ArubaOS 进行强制门户身份验证时的整个强制门户流程:
\n\n1.\n 关联到访客 SSID 的设备被分配初始角色(示例配置中的访客登录角色)。此初始角色允许 DHCP,因此用户可以获得 IP 地址。
\n\n2.\n 用户打开浏览器并向某个目标(例如 www.bbc.com)发出 HTTP(或 HTTPS)请求。
\n\n3.\n 设备中的解析器发送 DNS 请求来解析 www.bbc.com。初始角色(来宾登录角色)允许 DNS 服务,因此解析器可以与 DNS 服务器进行通信。
\n\n4.\n DNS 服务器以正确的地址回复 www.bbc.com。
\n\n5.\n 解析器根据 DNS 回复告诉浏览器要使用哪个 IP 地址。
\n\n6.\n 浏览器向 www.bbc.com 地址的端口 80 发起 TCP 连接。
\n\n7.\n 控制器拦截连接并欺骗 HTTP 进程的初始 TCP 握手。此时,客户端浏览器认为正在与bbc.com服务器进行通信。
\n\n8.\n 当浏览器发送网页的 HTTP GET 请求时,控制器回复说 bbc.com 已将 \xe2\x80\x9c 临时移动\xe2\x80\x9d 到 。
\n\n9.\n 浏览器关闭连接。
\n\n10.\n 浏览器尝试连接 ,但它首先需要发送该地址的 DNS 请求。
\n\n11.\n 实际的 DNS 服务器响应它无法解析 \n https://securelogin.arubanetworks.com,但控制器拦截该回复并更改数据包以表明 securelogin.arubanetworks.com 位于该服务器的 IP 地址控制器本身。请记住,DNS 服务器发回查询回复至关重要。只有这样,控制器才能欺骗 DNS 服务器返回的回复。发送 DNS 请求而不收到回复是不够的,因为如果没有回复,控制器将永远不会帮助客户端解析 securelogin.arubanetworks.com。
\n\n12.\n 浏览器启动到控制器地址的 HTTPS 连接,该连接以强制门户登录页面进行响应,访客在该页面进行身份验证。
\n\n13.\n 身份验证成功后,将为用户分配身份验证后角色(示例配置中的 auth-guest 角色)。这是强制网络门户配置文件中的默认角色。
\n\n14.\n 身份验证后,浏览器将重定向至 DNS 最初解析的地址 bbc.com。或者,如果配置了欢迎页面,则浏览器将重定向到欢迎页面。
\n\n15.\n 为了成功重定向到原始网页,控制器欺骗来自 bbc.com 的回复,告诉客户端 bbc.com 已将 \xe2\x80\x9c 永久移动\xe2\x80\x9d 到 bbc.com。此步骤更正作为强制门户登录的一部分而发生的 \xe2\x80\x9c 临时重定位\xe2\x80\x9d。
\n\n16.\n 这会导致客户端重新向 DNS 查询 www.bbc.com 的地址。
\n\n17.\n 浏览器开始与实际的 bbc.com 服务器通信。
\n