在酒店,机场咖啡厅的networking访问通常由一个强制门户进行门控,强制您首次使用特定的网页,例如付款页面或某个页面接受服务条款或authentication/授权页面。 无线和有线连接都可以看到这一点。
这个怎么用?
无线产品的供应商肯定会有所不同,但根据我的经验,它通常是这样的:
Location:标头进行回复,将您redirect到login/策略页面(例如http://hotelwireless.net/login )。 这可能直接在智能接入点或中央pipe理站上。 至于说什么,我听说它最经常被称为“强制门户”或“无线访问门户”。
首先为了实现redirect,您需要一个内联authentication器(访问控制器)。 在您的话题中,如果您selectAP的集中pipe理,您将需要一个无线局域网控制器。 或者你也可以把一个强制门户types的networking访问控制器与墙花园function。
NAS监视通过混杂模式原始套接字进入下行链路(客户端)的stream量,并且当浏览器为未经身份validation的客户端启动stream量时,会检测到HTTPredirect作为响应。 因此,接收浏览器被redirect到我们的CAPTIVE门户主页,它可以内联在authentication者身上,或者在一些外部的web服务器上开箱。
这个页面的唯一工作是为用户提供一个UI来input凭证。 input的凭证在coova辣椒的情况下被转发回authentication者守护进程,如辣椒,进一步,这些凭据作为半径请求传递到RADIUS服务器,或者可以在本地检查。 成功authentication后,authentication者处的客户端状态被标记为授权,客户端被授予访问权限。
最广泛使用的方法是拦截由用户发起的HTTP请求和302代码作为对客户端的响应。 辣椒是通过下面的function完成的
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 }
这种redirect可以很容易地实现实际控制的客户端接口拦截客户端stream量。 进一步的redirect也可以通过DNS中毒来实现,但是如果响应被caching在客户端浏览器中,有时会导致问题。 更进一步的事情可以根据问题领域更具体地做。 如果你愿意,我可以帮你。