用户接入和认证技术
一、用户接入和认证配置
称为网络接入控制,通过对接入网络的客NAC (Network Admission Control)户端和用户的认证保证网络的安全,是一种“端到端”的安全技术。包括802.1x认证、MAC认证与Portal认证。
二、三种认证方式简介
1、Portal认证
Portal认证通常也称为Web认证一般将Portal认证网站称为门户网站。用户上网时,必须在门户网站进行认证,只有认证通过后才可以使用网络资源。用户可以主动访问已知的Portal认证网站,输入用户名和密码进行认证,这种开始Portal认证的方式称作主动认证。反之,如果用户试图通过HTTP访问其他外网,将被强制访问Portal认证网站,从而开始Portal认证过程,这种方式称作强制认证。
2、MAC认证
MAC认证是一种基于接口和MAC地址对用户的网络访问权限进行控制的认证方法它不需要用户安装任何客户端软件。设备在启动了MAC认证的接口上首次检测到用户的MAC地址以后,即启动对该用户的认证操作。认证过程中,不需要用户手动输入用户名或者密码。
3、802.1x认证
802.1x协议是一种基于接口的网络接入控制协议。“基于接口的网络接入控制"是指在局域网接入设备的接口这一级,对所接入的用户设备通过认证来控制对网络资源的访问。IEEE802 LAN/WAN委员会为解决无线局域网网络安全问题,提出了802.1x协议。后来,802.1x协议作为局域网接口的一个普通接入控制机制在以太网中被广泛应用,主要解决以太网内认证和安全方面的问题。802.1x系统为典型的Client/Server结构,包括三个实体:客户端、接入设备和认证服务器。
三、认证方式比较
NAC认证方式包括:802.1X认证、MAC认证、Portal认证。由于多种认证方式认证原理不同,各自适合的场景也有所差异,实际应用中,可以根据场景部署某一种合适的认证方式,也可以部署几种认证方式组成的混合认证。
四、配置案例
配置通过多种认证方式控制企业内部用户访问网络示例如图1所示,某公司内终端通过Switch接入公司内部网络。如果该公司内存在非法接入和非授权访问的状况,将会导致企业业务系统的破坏以及关键信息资产的泄露,因此管理员希望Switch能够对用户的网络访问权限进行控制,以保证公司内网的安全。
采用如下的思路在Switch上进行配置
1、创建并配置RADIUS服务器模板、AAA方案以及认证域,并在认证域下绑定RADIUS服务器模板与AAA方案,以便Switch通过RADIUS服务器对接入用户进行身份认证。
2、使能802.1x认证、MAC认证以及Portal认证,以实现对公司内部员工、哑终端以及访客的网络访问权限进行控制;同时,由于员工数量较多,因此需要配置802.1x认证优先生效。
3、配置用户接入模式为多用户单独认证接入模式、最大接入用户数为100以实现对每个用户网络访问权限的单独控制。
4、配置Portal服务器模板,以实现设备与Portal服务器互通
1、创建VLAN并配置接口允许通过的VLAN,保证网络通畅
# 创建VLAN10、VLAN20。
<HUAWEl> system-view
[HUAWEl] sysname Switch
[Switch] vlan batch 10 20
# 配置Switch与用户连接的接口GE0/0/1为Access类型接口,并将其加入VLAN10。
[Switch] interface gigabitethernet 0/0/1
[Switch-GigabitEthernet0/0/1] port link-type access
[Switch-GigabitEthernet0/0/1] port default vlan 10
[Switch-GigabitEthernet0/0/1]quit
[Switch] interface vlanif 10
[Switch-Vlanif10] ip address 192.168.1.10 24
[Switch-Vlanif10] quit
# 配置Switch连接RADIUS服务器的接口GE0/0/2为Access类型接口,并将其加入VLAN20。
[Switch] interface gigabitethernet 0/0/2
[Switch-GigabitEthernet0/0/2] port link-type access
[Switch-GigabitEthernet0/0/2] port default vlan 20
[Switch-GigabitEthernet0/0/2] quit
2、创建并配置RADIUS服务器模板、AAA认证方案以及认证域。
# 创建并配置RADIUS服务器模板“rd1”
[Switch]radius-server template rd1
[Switch-radius-rd1]radius-server authentication 192.168.2.30 1812
[Switch-radius-rd1]radius-serer shared-key cipher Huawei@2012
[Switch-radius-rd1] quit
# 创建AAA认证方案“abc”并配置认证方式为RADIUS,
[Switch] aaa
[Switch-aaa] authentication-scheme abc
[Switch-aaa-authen-abc] authentication-mode radius
[Switch-aaa-authen-abc] quit
# 创建认证域“isp1”,并在其上绑定AAA认证方案“abc"与RADIUS服务器模板“rd1”。
[Switch-aaa] domain isp1
[Switch-aaa-domain-isp1]authentication-scheme abc
[Switch-aaa-domain-isp1]radius-server rd1
[Switch-aaa-domain-isp1]quit
[Switch-aaal quit
# 配置全局默认域为“isp1”。用户进行接入认证时,以格式“user@isp1”输入用户名即可在isp1域下进行aaa认证。如果用户名中不携带域名或携带的域名不存在,用户将会在默认域中进行认证。
[Switchl domain isp1
# 测试用户是否能够通过RADIUS模板的认证。(已在RADIUS服务器上配置了测试用户test@huawei.com,用户密码Huawei2012)
[Switch]test-aaa test@huawei.com Huawei2012 radius-template rd1
Info: Account test succeed.
3、在Switch上配置802.1x认证、MAC认证以及Portal认证。
# 将NAC配置模式切换成统一模式
[Switch] authentication unified-mode
#在接口GE0/0/1上使能802.1x认证、MAC认证以及Portal认证,
[Switch] interface gigabitethernet 0/0/1
[Switch-GigabitEthernet0/0/1] authentication dot1x mac-authen porta
[Switch-GigabitEthernet0/0/1]authentication mode multi-authen max-user 100
[Switch-GigabitEthernet0/0/1]quit
# 创建并配置Portal服务器模板“abc”。
[Switch]web-auth-server abc
[Switch-web-auth-server-abc] server-ip 192.168.2.20
[Switch-web-auth-server-abc] port 50200
[Switch-web-auth-server-abc] url http://192.168.2.20:8080/webagent
[Switch-web-auth-server-abc] shared-key cipher Huawei@123
[Switch-web-auth-server-abc] quit
# 在接口GE0/0/1上绑定Portal服务器模板“abc”。
[Switch]interface gigabitethernet 0/0/1
[Switch-GigabitEthernet0/0/1]web-auth-server abc direct
[Switch-GigabitEthernet0/0/1]quit
(推荐配置)配置指定VLAN内用户下线探测报文的源IP地址和源MAC地址
#建议用户下线探测报文的源IP地址和源MAC地址配置为用户网关的IP地址和MAC地址。
[Switch]access-user arp-detect vlan 10 ip-address 192.168.1.10 mac-address2222-1111-1234
4、验证配置结果。
1、执行命令display dot1x、display mac-authen、display portal和displayweb-auth-server configuration能够查看到在接口GE0/0/1上已使能了802.1x认证、MAC认证以及Portal认证。
2、用户通过802.1x认证、MAC认证或Portal认证中的任意一种即可接入网络
3、用户上线后,管理员可在设备上执行命令display access-userinterface gigabitethernet 0/0/1查看接口下所有在线用户信息
相关文章:
用户接入和认证技术
一、用户接入和认证配置 称为网络接入控制,通过对接入网络的客NAC (Network Admission Control)户端和用户的认证保证网络的安全,是一种“端到端”的安全技术。包括802.1x认证、MAC认证与Portal认证。 二、三种认证方式简介 1、Portal认证 Portal认证通…...
【面试】Java虚拟机的生命周期
目录 1. 说明2. 启动(Initialization)3. 运行(Running)4. 服务(Servicing)5. 终止(Termination) 1. 说明 1.Java虚拟机(JVM)的生命周期通常指的是JVM实例从启…...
Nginx高可用性架构:实现负载均衡与故障转移的探索
随着网络应用的不断发展和用户访问量的增长,如何确保系统的高可用性、实现负载均衡以及快速响应故障转移成为了每个运维和开发团队必须面对的挑战。Nginx作为一款高性能的HTTP和反向代理服务器,凭借其强大的功能和灵活的配置,成为了实现这些目…...
计算机网络-运输层
运输层 网络层在两个端系统之间的交付服务拓展到运行在两个不同端系统上的应用层进程之间的交付服务。 概述和运输层服务 运输层协议为运行在不同主机上的引用进程之间提供了逻辑通信功能。通过逻辑通信,运行在不同进程之间的主机好像直接连接一样。 运输层协议…...
网络通信(一)
网络编程 1.网络编程概念及相关名词 : 网络编程是计算机科学中一个重要的领域,它涉及到在不同计算机之间通过计算机网络进行通信和数据交换的程序设计。网络编程的核心是实现网络通信协议,这些协议定义了数据如何在网络上发送、接收和解释。…...
Linux环境中部署docker私有仓库Registry与远程访问详细流程
目录 前言 1. 部署Docker Registry 2. 本地测试推送镜像 3. Linux 安装cpolar 4. 配置Docker Registry公网访问地址 5. 公网远程推送Docker Registry 6. 固定Docker Registry公网地址 前言 作者简介: 懒大王敲代码,计算机专业应届生 今天给大家聊…...
springboot项目使用validated参数校验框架
目录 前言 一、validated是什么? 二、使用步骤 1.引入maven依赖 2.使用实现 总结 前言 当谈到Spring的参数校验功能时,Validated注解无疑是一个重要的利器。它为我们提供了一种简单而又强大的方式来验证请求参数的合法性,保证了系统的稳…...
Azure Chatgpt demo部署——本地CentOS Docker
参见上一篇 http://t.csdnimg.cn/JcyfM 由于本地部署环境,与之前系统、网络、配置等环境不同,可能会遇见一些新的问题。 取2023年8月27日代码 git checkout -b a02796b063381c10ca9ca8189590b289a4d09129 由于本地情况的网络等环境不太一样,…...
MybatisPlus中自定义sql
背景 在开发过程中,可能会出现除了where条件,其它sql比较复杂,这时候就需要用到自定义sql了。 问题 如:用户状态为正常的数据年龄加一(所有用户年龄加一) 数据库中sql: UPDATE USER SET…...
HCIA--DHCP: 动态主机配置协议 (复习)
DHCP: 动态主机配置协议 -- 同一分发管理ip地址 基于UDP 67/68端口工作 网络中存在DHCP的服务器为需要自动生成ip地址的设备分配ip地址;--C/S模型 成为DHCP服务器的条件: 该设备存在接口或网卡连接到所要分发ip地址的广播域内该接口或网卡必须已经配置…...
MySQL select for update 加锁
背景 当多人操作同一个客户下账号的时候,希望顺序执行,某个时刻只有一个人在操作;当然可以通过引入redis这种中间件实现,但考虑到并发不会很多,所以不想再引入别的中间件。 表结构 create table jiankunking_accoun…...
MongoDB CRUD操作:投影Project详解
MongoDB CRUD操作:投影Project详解 文章目录 MongoDB CRUD操作:投影Project详解返回文档的全部字段返回指定的字段和_id字段不输出_id字段指定排除的字段返回内嵌文档中的指定字段禁止内嵌文档中的特定字段数组中内嵌文档的投影聚合表达式的投影字段 默认…...
redis 集群 底层原理以及实操
前言 上篇我们讲解了哨兵集群是怎么回事 也说了对应的leader选举raft算法 也说了对应的slave节点是怎么被leader提拔的 主要是比较优先级 比较同步偏移量 比较runid等等 今天我们再说说,其实哨兵也有很多缺点 虽然在master挂了之后能很快帮我们选举出新的master 但是对于单个ma…...
MVC架构中的servlet层重定向404小坑
servlet层中的UserLoginServlet.java package com.mhys.servlet; /*** ClassName: ${NAME}* Description:** Author 数开_11* Create 2024-05-29 20:32* Version 1.0*/import com.mhys.pojo.User; import com.mhys.service.UserService; import com.mhys.service.impl.UserSer…...
Java-RabbitMQ
RabbitMQ使用场景 1、跨系统异步通信 2、多应用之间解耦 3、应用内流程同步变异步 4、整体架构即采用消息驱动 5、应用内部解耦 RabbitMQ内部角色 角色简介生产者消息创建者消费者消息接收者代理RabbitMQ本身,用于存储转发消息,快递功能 RabbitMQ有哪…...
ABAP 在增强中COMMIT
前言 呃,又是很磨人的需求,正常情况下是不允许在增强中COMMIT的,会影响源程序本身的逻辑,但是这个需求就得这么干… 就是在交货单增强里面要再调用一次交货单BAPI,通过SO的交货单自动创建STO的交货单,如果…...
【UML用户指南】-02-UML的14种图
1、结构图 1、类图(class diagram) 展现了一组类、接口、协作和它们之间的关系。 在面向对象系统的建模中所建立的最常见的图就是类图。类图给出系统的静态设计视图。 包含主动类的类图给出系统的静态进程视图。构件图是类图的变体。 2、对象图&a…...
Linux驱动开发笔记(二) 基于字符设备驱动的I/O操作
文章目录 前言一、设备驱动的作用与本质1. 驱动的作用2. 有无操作系统的区别 二、内存管理单元MMU三、相关函数1. ioremap( )2. iounmap( )3. class_create( )4. class_destroy( ) 四、GPIO的基本知识1. GPIO的寄存器进行读写操作流程2. 引脚复用2. 定义GPIO寄存器物理地址 五、…...
三品软件:打造高效安全的图文档管理体系
在数字化转型的浪潮中,工程设计单位和企业设计部门面临着电子图文档管理的巨大挑战。随着电子图纸和文档数量的激增,如何有效组织、管理和共享这些资源,成为提升工作效率和保障信息安全的关键。本文将探讨当前图文档管理面临的问题࿰…...
N1 one-hot编码
🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊# 前言 前言 onehot编码在机器学习比较常见,例如推荐系统中类别变量的处理等。 onehot 编码简介 One-hot编码(one-hot encoding&…...
C++_核心编程_多态案例二-制作饮品
#include <iostream> #include <string> using namespace std;/*制作饮品的大致流程为:煮水 - 冲泡 - 倒入杯中 - 加入辅料 利用多态技术实现本案例,提供抽象制作饮品基类,提供子类制作咖啡和茶叶*//*基类*/ class AbstractDr…...
SciencePlots——绘制论文中的图片
文章目录 安装一、风格二、1 资源 安装 # 安装最新版 pip install githttps://github.com/garrettj403/SciencePlots.git# 安装稳定版 pip install SciencePlots一、风格 简单好用的深度学习论文绘图专用工具包–Science Plot 二、 1 资源 论文绘图神器来了:一行…...
关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案
问题描述:iview使用table 中type: "index",分页之后 ,索引还是从1开始,试过绑定后台返回数据的id, 这种方法可行,就是后台返回数据的每个页面id都不完全是按照从1开始的升序,因此百度了下,找到了…...
ESP32 I2S音频总线学习笔记(四): INMP441采集音频并实时播放
简介 前面两期文章我们介绍了I2S的读取和写入,一个是通过INMP441麦克风模块采集音频,一个是通过PCM5102A模块播放音频,那如果我们将两者结合起来,将麦克风采集到的音频通过PCM5102A播放,是不是就可以做一个扩音器了呢…...
C# 类和继承(抽象类)
抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...
【C语言练习】080. 使用C语言实现简单的数据库操作
080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...
C++ 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...
多种风格导航菜单 HTML 实现(附源码)
下面我将为您展示 6 种不同风格的导航菜单实现,每种都包含完整 HTML、CSS 和 JavaScript 代码。 1. 简约水平导航栏 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport&qu…...
自然语言处理——循环神经网络
自然语言处理——循环神经网络 循环神经网络应用到基于机器学习的自然语言处理任务序列到类别同步的序列到序列模式异步的序列到序列模式 参数学习和长程依赖问题基于门控的循环神经网络门控循环单元(GRU)长短期记忆神经网络(LSTM)…...
python报错No module named ‘tensorflow.keras‘
是由于不同版本的tensorflow下的keras所在的路径不同,结合所安装的tensorflow的目录结构修改from语句即可。 原语句: from tensorflow.keras.layers import Conv1D, MaxPooling1D, LSTM, Dense 修改后: from tensorflow.python.keras.lay…...
