当前位置: 首页 > news >正文

Portal认证

Portal认证

  • Portal认证简介
  • Portal认证协议
  • Portal认证方式
  • Portal认证流程
  • Portal认证用户下线

Portal认证简介

定义:
Portal认证通常也称作Web认证,一般将Portal认证网站成为门户网站。用户上网时,必须在门户网站进行认证,如果没有认证成功,仅可以访问特定的网络资源,认证成功之后,才可以访问其它网络资源。
优点:

  • 一般情况下客户端不需要安装额外的软件,直接在Web界面上进行认证,简单方便。
  • 便于运营,可以在Portal页面上进行业务扩展,好比广告推送,企业宣传等。
  • 技术成熟,被广泛运用于运营商,连锁快餐,酒店,学校网络等。
  • 部署位置灵活,可以在接入层或者关键数据的入口作为访问控制。
  • 用户管理灵活,可以基于用户名与VLAN/IP地址/MAC地址的组合进行认证。

认证系统:
Portal认证系统主要包括四个基本要素:客户端、接入设备、Portal服务器与认证服务器。
请添加图片描述

  • 客户端:安装有运行HTTP/HTTPS协议的浏览器的主机。
  • 接入设备:交换机、路由器等接入设备的统称,主要有三个方面的作用。
    • 在认证之前,将认证网段内用户的所有HTTP/HTTPS请求到重定向到Portal服务器。
    • 在认证过程中,与Portal服务器、认证服务器完成交互,完成对用户身份认证、授权与计费的功能。
    • 在认证通过之后,允许用户访问被管理员授权的网络资源。
  • Portal服务器:接收客户端认证请求的服务器系统,提供免费门户服务与认证界面,与接入设备交互客户端的认证信息。
  • 认证服务器:与接入设备进行交互,完成对用户的认证、授权与计费。

Portal认证协议

Portal协议包括Portal接入协议和Portal认证协议。

  • Portal接入协议:HTTP/HTTPS协议,描述了客户端和Portal服务器之间的协议交互。客户端通过HTTP/HTTPS协议依次向Portal服务器发起连接请求和Portal认证请求。
  • Portal认证协议:
  • Portal协议:描述了Portal服务器和接入设备之间的协议交互,可以用来传递用户名和密码等参数。收到客户端的Portal认证请求之后,Portal服务器通过Portal协议向接入设备发起认证请求(携带用户名和密码)。
  • HTTP/HTTPS协议:描述了客户端和接入设备之间的协议交互,可以用来传递用户名和密码等参数。收到客户端的Portal认证请求之后,Portal服务器通过HTTP/HTTPS协议通知客户端向接入设备发起Portal认证请求,然后客户端通过HTTP/HTTPS协议向接入设备发起Pottal认证请求(携带用户名和密码)。

HTTP/HTTPS协议可以作为Portal的接入协议,也可以作为Portal认证协议。

Portal认证方式

按照网络中实施Portal认证的网络层次来分,Portal认证方式分为两种:二层认证和三层认证。

  • 当客户端与接入设备之间为二层网络时,就是说客户端与接入设备直连(或者之间只有二层设备存在),接入设备可以学习到客户端的MAC地址,则接入设备可以利用IP地址和MAC地址来识别用户,此时可配置Portal认证为二层认证方式。二层认证流程简单,安全性高,但是由于限制了用户只能与接入设备在同一网段,所以组网灵活性不高。
  • 当客户端与接入设备之间包含三层网络时,就是客户端与接入设备之间存在三层转发设备,接入设备不能获取到认证客户端的MAC地址,只能以IP地址作为唯一的标识,此时需要将Portal认证配置为三层认证方式。三层认证组网灵活,容易实现远程控制,但是由于只能以IP地址作为用户的唯一标识,所以安全性不高。

Portal认证流程

认证的第一件事情就是发起认证,有两种认证触发方式:

  • 主动认证

用户通过浏览器主动访问Portal认证网站时,就是在浏览器中直接输入Portal服务器的网络地址,然后再显示的页面中输入用户名和密码进行认证,这种开始Portal认证过程的方式即为主动认证,就是由用户自己主动访问Portal服务器发起的身份认证。

  • 重定向认证

用户输入的访问地址不是Portal认证网站地址时,将被强制访问Portal认证网站(通常成为重定向),从而开始认证过程,这种方式称作重定向认证。

Portal认证用户下线

当用户已经下线,但是接入设备,RADIUS服务器和Portal服务器没有感知到这个用户已经下线的时候,会产生以下问题:

  • RADIUS服务器仍然会对用户进行计费,造成误计费。
  • 存在非法用户仿冒合法用户IP地址和MAC地址接入网络的风险。
  • 已经下线的用户数量过多的情况下,还会占用设备用户规格,可能导致其他用户无法接入网络。

因此,接入设备要能及时感知到用户已经下线,删除用户的表项,并且通知RADIUS服务器停止对该用户进行计费。
用户下线分为客户端主动下线,接入设备控制用户下线,认证服务器强制用户下线,和Portal服务器强制用户下线。

  • 客户端主动下线
    Portal协议:
    由用户发起的主动下线,好比用户点击了注销按钮,客户端向Portal服务器发送用户注销请求。
    对于Portal协议,Portal服务器收到用户的下线请求之后,会通知客户端下线成功,但是不需要等待接入设备对下线的确认。对于HTTP/HTTPS协议,Portal服务器收到用户的下线请求之后,会通知客户端向设备发送用户下线通知。
    请添加图片描述
  1. 客户端向Portal服务器发送用户注销请求。
  2. Portal服务器向客户端发送用户注销相应,并且向接入设备发送用户下线通知报文。
  3. 接入设备向RADIUS服务器发送停止计费的请求报文,并将用户进行下线。同时,介入是设备向Portal服务器发送用户下线响应报文,Portal服务器收到用户下线相应之后,将用户下线。
  4. RADIUS服务器返回停止计费相应报文,并将用户下线。

HTTP/HTTPS协议:
请添加图片描述


  1. 客户端向Portal服务器发送用户注销请求。
  2. Portal服务器通知客户端向接入设备发送用户注销请求,并将用户下线。
  3. 客户端向接入设备发送用户注销请求。
  4. 接入设备向RADIUS服务器发送停止计费报文,并将用户下线,同时,接入设备向客户端发送用户注销响应报文。
  5. RADIUS服务器返回停止计费相应报文,并将用户下线。

相关文章:

Portal认证

Portal认证Portal认证简介Portal认证协议Portal认证方式Portal认证流程Portal认证用户下线Portal认证简介 定义: Portal认证通常也称作Web认证,一般将Portal认证网站成为门户网站。用户上网时,必须在门户网站进行认证,如果没有认…...

论文解读:ChangeFormer | A TRANSFORMER-BASED SIAMESE NETWORK FOR CHANGE DETECTION

论文地址:https://arxiv.org/pdf/2201.01293.pdf 项目代码:https://github.com/wgcban/ChangeFormer 发表时间:2022 本文提出了一种基于transformer的siamese网络架构(ChangeFormer),用于一对共配准遥感图…...

Redis 内存优化技巧

这次跟大家分享一些优化神技如何用更少的内存保存更多的数据?我们应该从 Redis 是如何保存数据的原理展开,分析键值对的存储结构和原理。从而继续延展出每种数据类型底层的数据结构,针对不同场景使用更恰当的数据结构和编码实现更少的内存占用…...

【java】笔试强训Day2【​倒置字符串​与排序子序列】

目录 ⛳选择题 1.A 派生出子类 B , B 派生出子类 C ,并且在 java 源代码有如下声明: 2.下面代码将输出什么内容:( ) 3.阅读如下代码。 请问,对语句行 test.hello(). 描述正确的有&…...

【Linux】基础IO(一) :文件描述符,文件流指针,重定向

🍎作者:阿润菜菜 📖专栏:Linux系统编程 码字不易,请多多支持😘😘 这是目录重新认识文件系统内部的文件操作我们C语言的文件操作系统内部的文件操作OS一般会如何让用户给自己传递标志位的&#x…...

【C语言】通讯录的实现(静态版)

【C语言】通讯录的实现(静态版一.前言1.前期准备a.菜单实现b.联系人结构体的构建c.菜单选项的功能d.#define 的定义2.功能的实现a.初始化通讯录b.增加联系人c.显示通讯录d.查找联系人e.修改联系人d.删除联系人3. 总代码test.ccontact.ccontact.h一.前言 本文将会用c语言实现一…...

IDEA一键构建Docker镜像

效果 Idea右击Dockerfile文件,直接在服务器构建docker镜像 开整 1、下载docker插件 2、编写Dockerfile文件 # 基础镜像 FROM openjdk:8-jdk-alpine # 工作目录 WORKDIR /opt/apps/gateway/logs/ # 文件拷贝,把target目录下的jar报拷贝到镜像的/APP/目录下 ADD…...

QT的使用3:鼠标事件

鼠标事件0 事件1 需求2 查看控件的事件处理函数3 UI设计4 新建一个类,继承QLabel5 对已有对象进行类型提升6 重写事件处理函数7 项目进一步拓展(1)获取鼠标按键(2)鼠标移动(3)显示多个按键&…...

线程安全之单例模式

文章目录前言一.什么是单例模式二.在java中的单例模式2.1 饿汉式的介绍2.2 懒汉式的介绍三 懒汉式的单例模式,线程不安全的解决方式3.1 造成线程不安全的原因3.2 解决方案3.3 总结前言 这篇文章,我们会介绍一下单例模式,但这里的单例模式,不是我们所说的设计模式,当然听到设计…...

“二分”带来“十分”快感——二分思想的奥秘解析

文章目录无处不在的二分思想二分查找惊人的查找速度二分查找的递归与非递归实现1.循环退出条件2.mid的取值3.low和high的更新最后说一句🐱‍🐉作者简介:大家好,我是黑洞晓威,一名大二学生,希望和大家一起进…...

一台服务器最大能支持多少条 TCP 连接?问倒一大片。。。

一台服务器最大能打开的文件数 限制参数 我们知道在Linux中一切皆文件,那么一台服务器最大能打开多少个文件呢?Linux上能打开的最大文件数量受三个参数影响,分别是: fs.file-max (系统级别参数)&#xf…...

蓝桥杯嵌入式RTC实时时钟

文章目录 前言一、RTC是什么二、cubemx的配置三、函数的使用总结前言 本篇文章将给大家介绍RTC实时时钟。 一、RTC是什么 STM32的实时时钟RTC是一个独立的定时器,RTC时钟内部依靠BCD码计数。RTC实时时钟提高时钟、闹钟、日历功能。RTC功耗较低,可以使用在低功耗设备上。 …...

Centos7 挂载 ISO镜像

切到mnt目录:cd /mnt mkdir iso确保centos镜像在服务上存在,磁盘挂载mount -o loop /home/xx.iso /mnt/iso查看是否挂载成功df -h出现红色的部分表示挂载成功修改源切目录并修改yum源:cd /etc/yum.repos.dllvim Centos-Base.repo修改后yum clean allyum list安装lrz…...

三级数据库备考--数据库应用系统开发方法第一次练习(刷题库知识点记录)

1.数据库的三级模式由外模式、模式、内模式构成。外模式是用户可见的部分数据的存在形式;模式可以等价为全体数据的逻辑结构且用户不可见,是三级模式的中间部分;内模式对应数据库的物理结构和存储方式。当模式改变时,由数据库管理…...

免费空间主机是什么?怎么申请免费空间主机

随着网络的普及,越来越多的人开始使用免费空间。这种新的商业模式也让一些商家得以获利。 1:免费空间的概念 免费空间是指允许您自由使用的网络服务。这意味着它可以被任何人用来创建、编辑和发布网站内容或应用程序,而无需考虑任何付费业务协…...

网络安全文章汇总导航(持续更新)

网络安全文章汇总导航(持续更新)1.基础篇(已完结):2.工具篇(持续更新):3.靶场安装(持续更新,但不确定):4.权限提升(持续更…...

AI-TestOps —— 软件测试工程师的一把利剑

写在前面软件测试的前世今生测试工具开始盛行AI-TestOps 云平台● AI-TestOps 功能模块● AI-TestOps 自动化测试流程写在前面 最近偶然间看到一句话:“软件测试是整个 IT 行业中最差的岗位”。这顿时激起了我对软件测试领域的兴趣,虽然之前未涉及过软件…...

Linux内核进程管理原理详解

前言:Linux内核里大部分都是C语言。建议先看《Linux内核设计与实现(Linux Kernel Development)》,Robert Love,也就是LKD。Linux是一种动态系统,能够适应不断变化的计算需求。Linux计算需求的表现是以进程的通用抽象为中心的。进程可以是短期…...

通过Linux串口实现树莓派与电脑通信

目录 一 串口说明 二 USB—TTL模块 ● usb-ttl模块接口 三 串口通信常用的API 四 修改串口的配置文件 五 串口通信代码验证 ● 发送一个字符/字符串到串口 ● 树莓读取串口数据(字符) ● 代码拓展(双方) 一 串口…...

全球变暖 蓝桥杯 178

题目描述你有一张某海域 NxN 像素的照片,"."表示海洋、"#"表示陆地,如下所示:........##.....##........##...####....###........其中"上下左右"四个方向上连在一起的一片陆地组成一座岛屿。例如上图就有 2 座…...

React 第五十五节 Router 中 useAsyncError的使用详解

前言 useAsyncError 是 React Router v6.4 引入的一个钩子,用于处理异步操作(如数据加载)中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误:捕获在 loader 或 action 中发生的异步错误替…...

C++:std::is_convertible

C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...

Objective-C常用命名规范总结

【OC】常用命名规范总结 文章目录 【OC】常用命名规范总结1.类名&#xff08;Class Name)2.协议名&#xff08;Protocol Name)3.方法名&#xff08;Method Name)4.属性名&#xff08;Property Name&#xff09;5.局部变量/实例变量&#xff08;Local / Instance Variables&…...

BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践

6月5日&#xff0c;2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席&#xff0c;并作《智能体在安全领域的应用实践》主题演讲&#xff0c;分享了在智能体在安全领域的突破性实践。他指出&#xff0c;百度通过将安全能力…...

Xen Server服务器释放磁盘空间

disk.sh #!/bin/bashcd /run/sr-mount/e54f0646-ae11-0457-b64f-eba4673b824c # 全部虚拟机物理磁盘文件存储 a$(ls -l | awk {print $NF} | cut -d. -f1) # 使用中的虚拟机物理磁盘文件 b$(xe vm-disk-list --multiple | grep uuid | awk {print $NF})printf "%s\n"…...

push [特殊字符] present

push &#x1f19a; present 前言present和dismiss特点代码演示 push和pop特点代码演示 前言 在 iOS 开发中&#xff0c;push 和 present 是两种不同的视图控制器切换方式&#xff0c;它们有着显著的区别。 present和dismiss 特点 在当前控制器上方新建视图层级需要手动调用…...

Selenium常用函数介绍

目录 一&#xff0c;元素定位 1.1 cssSeector 1.2 xpath 二&#xff0c;操作测试对象 三&#xff0c;窗口 3.1 案例 3.2 窗口切换 3.3 窗口大小 3.4 屏幕截图 3.5 关闭窗口 四&#xff0c;弹窗 五&#xff0c;等待 六&#xff0c;导航 七&#xff0c;文件上传 …...

免费数学几何作图web平台

光锐软件免费数学工具&#xff0c;maths,数学制图&#xff0c;数学作图&#xff0c;几何作图&#xff0c;几何&#xff0c;AR开发,AR教育,增强现实,软件公司,XR,MR,VR,虚拟仿真,虚拟现实,混合现实,教育科技产品,职业模拟培训,高保真VR场景,结构互动课件,元宇宙http://xaglare.c…...

解读《网络安全法》最新修订,把握网络安全新趋势

《网络安全法》自2017年施行以来&#xff0c;在维护网络空间安全方面发挥了重要作用。但随着网络环境的日益复杂&#xff0c;网络攻击、数据泄露等事件频发&#xff0c;现行法律已难以完全适应新的风险挑战。 2025年3月28日&#xff0c;国家网信办会同相关部门起草了《网络安全…...

C# 表达式和运算符(求值顺序)

求值顺序 表达式可以由许多嵌套的子表达式构成。子表达式的求值顺序可以使表达式的最终值发生 变化。 例如&#xff0c;已知表达式3*52&#xff0c;依照子表达式的求值顺序&#xff0c;有两种可能的结果&#xff0c;如图9-3所示。 如果乘法先执行&#xff0c;结果是17。如果5…...