
📌 阅读须知
🕒 本文共1956字,约需5分钟阅读
💡 内容不多,但花了一些精力整理
💬 如有疑问,欢迎评论区留言交流
👍 觉得不错,记得点赞/推荐支持一下~
💗 各位的点赞推荐,是我不断更新的动力哟~
什么是Portal认证
Portal认证,也可以叫做WEB认证
常用在校园网、酒店wifi等需要认证接入网络的场景

在接入了Portal认证的网络中,未认证的用户想上网,其设备会强制将当前接入的用户跳转到特定的登录渠道网站,只有认证通过了,才能访问网络服务
Portal的组成
可以看到上面那个认证模型图
他被分为4个部分组成:认证客户端、接入设备、Portal服务器、认证or计费服务器
顾名思义就对应图上那些设备
Portal交互流程
基本分为5个大致的步骤,稍后我们会详解
【1】 未认证用户访问网络时,发出的HTTP或HTTPS请求,会在进入接入设备时,被重定向到Portal服务器的Web认证主页上
【2】 用户在认证主页上输入对应的认证信息(账号、密码)提交之后,Portal服务器收到后会将认证先传递给接入设备
【3】 接入设备收到之后会与认证/计费服务器进行通信,完成认证和计费
【4】 认证通过之后,接入设备会准许接入网络,如果还接入了安全策略之类的,则还会进行下一步的交互,交给其他安全对象进行处理完成之后,才允许接入网络
Portal认证方式
认证方式分为三层认证方式和非三层认证方式
其中非三层认证方式又细分了直接认证方式和二次地址分配认证方式
直接认证方式:
用户在完成认证前,会由DHCP获取到自己的IP地址,只能访问Portal服务器,或者允许访问的特定地址,通过认证之后,才会运行访问外网
二次地址分配认证方式
用户在认证前会由DHCP分配一个私网地址
只能访问Portal服务器
认证通过后,客户端会分配到一个公网IP地址,供访问外网
未认证的用户只会访问内网
三层认证方式
这个单纯的就是客户端接入设备之间有三层设备
这模式下,客户端获取IP地址方式与直接认证方式类似
直接获取IP地址后
再到 Portal 服务器进行认证
Portal直接认证交互流程

我们以如上图来讲解直接认证的完整交互流程
【1】 首先,客户端向Portal发起访问(被重定向至Portal服务器),用户侧来到Portal认证输入用户密码的地方进行认证
【2】 Portal服务器和接入设备之间进行CHAP认证交互,这里如果采用的PAP交互,则会直接进入下一步
【3】 Portal服务器收到来自客户端的密码后,会重封装成认证请求报文,发往接入设备,同时期间会有计时器参与,等待应答,若没在规定时间内得到报文回复,则会认为认证失败
【4】 接入设备与Radius服务器之间进行认证交互,无误后进入下一步
【5】 接入设备会向Portal服务器发送认证应答报文
【6】 Portal服务器收到后,会向客户端发送认证通过报文,通知客户端认证成功
【7】 并且Portal服务器会向接入设备发送应答确认,确认客户端上线成功,运行访问网络
【8】 如果还有安全策略哪些的,则会进行安全策略设备之间的交互等等
Portal二次地址分配交互流程

二次分配交互流程这里1-6步和直接认证方式中的交互流程都是一样的 从第七步开始不同
【7】 客户端在收到认证通过的报文后,会发送DHCP请求新公网IP地址的报文,并通知Portal服务器,用户获取到新的IP地址
【8】 Portal服务器同样也会通知接入设备客户端获取到新的公网IP
【9】 接入设备通过ARP检测到用户IP发送变化后,会应答来自之前Portal服务器的通知,告知Portal服务器,我已经知道用户的IP发生变化了
【10】 Portal服务器收到应答后,通知客户端上线成功
【11】 接着Portal服务器向接入设备发送IP变化确认报文,双重确认保障
需要注意的是:
Portal服务器不直接参与RADIUS认证,而是作为代理将用户信息传递给RADIUS
双重确认存在于接入设备到Portal服务器之间的IP变更交互中
配置Portal
/*创建Portal服务器*/
[SW]portalserver[名称]
/*配置Portal服务器地址
如果是交换机当做Portal服务器
则为本机上,客户端三层可达的IP地址即可*/
[SW-portal-server-name]ip[地址]
/*配置与Portal服务器通信的端口,默认为50100*/
[SW-portal-server-name]port[端口]
/*配置Portal Web服务器*/
[SW]portalweb-server[名称]
/*指定重定向http报文的地址*/
[SW-portal-websvr-name]url[链接]
/*在对应的接口下开启Poratl认证,认证方式为[直接认证/三层认证/二次地址分配认证]*/
[SW-Vlan-interface100]portalenablemethod[diect/layer3/redhcp]
/*配置Portal Web夫妻的名称*/
[SW-Vlan-interface100]portalapplyweb-server[名称]
如下图所示的案例:

具体的配置脚本
[SWA]portalservernewpt
[SWA-portal-server-newpt]ip 192.168.0.111keysimpleportal
[SWA-portal-server-newpt]port 50100
[SWA]portalweb-servernewpt
[SWA-portal-server-newpt]urlhttp://192.168.0.111/portal
[SWA]interfaceVlan-interface 100
[SWA-Vlan-interface100]portalenablemethoddirect
[SWA-Vlan-interface100]portalapplyweb-servernewpt
总结
如果你觉得这篇文章对你有帮助,欢迎转发给需要的朋友!
如果有写的不好的地方,欢迎各位指正~
我们下期文章见

往期内容:
网络工程师必备:IPv6邻居发现协议(ND)五大报文与状态机详解
现网案例:华为&华三M-LAG场景下部署双活网关与故障切换验证
原文始发于微信公众号(内存泄漏):校园网/酒店Wi-Fi背后的秘密:Portal 认证全流程揭秘
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-


评论