网络安全性——基于MAC地址的端口接入认证

简介:

前面小编写过一篇基于802.1x协议的接入认证,这是实现网络安全性的一种常用手段,但是前提是客户机需要通过相应的媒介(认证软件)来实现接入认证,那么万一客户并不想那么费事,希望一切都由服务提供商来解决呢,这个当然不是问题,今天小编我就来介绍一种让用户省事的接入型认证,那就是基于用户MAC地址来进行接入认证,其原理就是使用用户的MAC地址作为用户的用户名和密码,当用户接入网络的时候,会发送数据帧,而网络设备通过获取用户的用户名和密码来进行相应的认证,当然这种认证可以是网络设备本身负责认证工作,也可以将认证任务交给AAA服务器来完成,小编这里将这两种方式都实现一下,整体的实现比较的简单,小编这里细细说来。

网络设备本地认证实验拓扑:

clip_image002

实验设备:华为S2000交换机一台,PC机两台

Step 1:

给两台PC机设置IP,PC1——192.168.102.100

PC2——192.168.102.200

测试在未设置接入认证前,两机通信情况PC1上Ping PC2

clip_image004

Setp 2:在交换机上设置接入认证机制,但先不设置本地信任账户,所以会导致两台主机无法通信

交换机配置:

[sw]mac-authentication //交换机在全局配置模式下开启MAC认证

[sw]int eth 1/0/1 //进入接口1

[sw-Ethernet1/0/1]mac-authentication //开启接口1的MAC认证

[sw]int eth 1/0/2 //进入接口1

[sw-Ethernet1/0/2]mac-authentication //开启接口1的MAC认证

在测试两机的网络连通性再PC1上Ping PC2

clip_image006

Setp 3:在交换机上添加两个合法的本地登录账号和密码(两台PC的MAC),让两台PC通过认证

PC1的MAC 000C29F4C65A

PC2的MAC 3CE5A6CE1891

[sw]local-user 000C29F4C65A //添加账户一

[sw-luser-000c29f4c65a]password simple 000c29f4c65a //明文密码一定要是小写

[sw-luser-000c29f4c65a]service-type lan-access //设置本地登录

[sw]local-user 3CE5A6CE1891 //添加本地账户二

[sw-luser-3ce5a6ce1891]password simple 3ce5a6ce1891 //明文密码一定要是小写

[sw-luser-3ce5a6ce1891]service-type lan-access //设置本地登录

再次测试两台PC的连通性

clip_image008

     这样一来小编的实验也就完成了,可是这种方式只能够针对于一些小型企业,针对与通信运营商来说,不可能把账户信息存放于网络设备中的,因此会借助于AAA认证来完成一系列的工作的,对于认证服务器,小编这里给出了两种,一种是微软的IAS,还有就是思科的ACS(相当强大)

下面就是小编要实现的拓扑:

clip_image010

实验设备:华为S2000交换机一台,PC机两台,radius服务器一台(使用windows server 2003 搭建的)

IP地址规划:

PC1——192.168.102.100

PC2——192.168.102.200

SW vlan1——192.168.102.253

Radius服务器——192.168.102.254

PC1的MAC 3CE5A6583E7E

PC2的MAC 3CE5A6CE1891

Setp 1:配置sw

[sw]mac-authentication //交换机在全局配置模式下开启MAC认证

[sw]int eth 1/0/1 //进入接口1

[sw-Ethernet1/0/1]mac-authentication //开启接口1的MAC认证

[sw]int eth 1/0/2 //进入接口1

[sw-Ethernet1/0/2]mac-authentication //开启接口1的MAC认证

[sw]int vlan 1 //进入vlan接口模式

[sw-Vlan-interface1]ip address 192.168.102.253 255.255.255.0 //设置IP地址

[sw]radius scheme radius //建立radius认证模式,模式名为radius

[sw-radius-radius]primary authentication 192.168.102.254 //设置主验证服务器地址

[sw-radius-radius]key authentication 123456 //设置验证预共享密钥

[sw-radius-radius]accounting optional //设置审计可选

[sw-radius-radius]server-type standard //设置服务类型为标准

对于认证用户有一个区域的概念,小编这里就当主机PC都在一个区域里吧,交换机自带有一个默认区域system,那么小编就直接用就是了

[sw]domain system //进入区域

[sw-isp-system]radius-scheme radius //设置radius认证模式为小编自己建的radius

[sw-isp-system]accounting optional //设置审计可选

[sw-isp-system]access-limit enable 10 //设置同时接入认证用户为10个,可以自由修改啦

Step 2:radius服务器的搭建与配置,这里有两种分别是IAS和ACS

IAS 的搭建配置,小编这里以截图来演示

clip_image012

打开之后按照以下三步走

clip_image014

之后勾选“Internet 验证服务”

clip_image016

最后单击下一步进行安装

安装完成之后打开Internet 验证服务

clip_image018

打开之后新建radius客户端,注意这里的radius客户端就是网络设备SW

clip_image020

点击完之后就会要求输入radius客户端的信息,输入点击下一步

clip_image022

之后会选择客户端供应商,默认即可,填入预共享密钥123456

clip_image024

点击完成即可

clip_image026

看到了吧,这就是小编的radius客户端啦

当然读者还要注意,要修改一下“远程访问策略“,如果不清楚的话可以只留一个策略,结果如下图

clip_image028

 

还要添加用户账户和密码啦,右键“我的电脑”—》“管理”,打开本地用户和组

clip_image030

定位到“用户“子项,右键选择”新用户“

clip_image032

创建PC1用户

clip_image034

创建PC2用户

clip_image036

修改两个用户,允许远程接入

clip_image038

clip_image040

clip_image042

测试试试,在PC1上ping PC2

clip_image044

PC2 上ping PC1

clip_image046

接下来来实现ACS

在安装ACS之前最好把IAS给卸载掉,以免监听端口冲突,同时ACS是依托于java虚拟机的,所以要安装jdk,小编这里用的是jdk7,ACS4.0, 至于jdk的安装小编就不细讲了,直接双击下一步就是了

安装ACS

clip_image048

clip_image050

clip_image052

clip_image054

clip_image056

clip_image058

clip_image060

clip_image062

clip_image064

clip_image066

clip_image068

clip_image070

clip_image072

clip_image074

clip_image076

clip_image078

clip_image080

另外一个用户的添加相同

clip_image082

之后打开日志成功访问审计功能

clip_image084

clip_image086

测试试试,在PC1上ping PC2

clip_image088

PC2 上ping PC1

clip_image090

查看ACS的日志审计看看

clip_image092

clip_image094

好了,到此为止所有的工作都完成了,读者可以做一下扩展,比如说在不同网段实现认证(小编这里都是相同网段的,企业不会这么来干的),以上所有仅仅是给读者一个基础的学习引导,希望对读者你有所帮助啊


本文转自 chenming421  51CTO博客,原文链接:http://blog.51cto.com/wnqcmq/1177774


相关文章
|
8月前
|
C++
基于Reactor模型的高性能网络库之地址篇
这段代码定义了一个 InetAddress 类,是 C++ 网络编程中用于封装 IPv4 地址和端口的常见做法。该类的主要作用是方便地表示和操作一个网络地址(IP + 端口)
357 58
|
8月前
基于Reactor模式的高性能网络库github地址
https://github.com/zyi30/reactor-net.git
195 0
|
12月前
|
机器学习/深度学习 存储 人工智能
SAFEARENA: 评估自主网络代理的安全性
基于大语言模型的智能体在解决基于网络的任务方面正变得越来越熟练。随着这一能力的增强,也随之带来了更大的被恶意利用的风险,例如在在线论坛上发布虚假信息,或在网站上销售非法物质。为了评估这些风险,我们提出了SAFEARENA,这是第一个专注于故意滥用网络代理的基准测试。SAFEARENA包含四个网站上共计500个任务,其中250个是安全的,250个是有害的。我们将有害任务分为五类:虚假信息、非法活动、骚扰、网络犯罪和社会偏见,旨在评估网络代理的真实滥用情况。我们对包括GPT-4o、Claude-3.5 Sonnet、Qwen-2-VL 72B和Llama-3.2 90B在内的领先基于大语言模型的网
565 11
SAFEARENA: 评估自主网络代理的安全性
|
11月前
|
域名解析 API PHP
VM虚拟机全版本网盘+免费本地网络穿透端口映射实时同步动态家庭IP教程
本文介绍了如何通过网络穿透技术让公网直接访问家庭电脑,充分发挥本地硬件性能。相比第三方服务受限于转发带宽,此方法利用自家宽带实现更高效率。文章详细讲解了端口映射教程,包括不同网络环境(仅光猫、光猫+路由器)下的设置步骤,并提供实时同步动态IP的两种方案:自建服务器或使用三方API接口。最后附上VM虚拟机全版本下载链接,便于用户在穿透后将服务运行于虚拟环境中,提升安全性与适用性。
718 7
|
安全 网络协议 网络安全
【Azure APIM】APIM服务配置网络之后出现3443端口不通,Management Endpoint不健康状态
如果没有关联的网络安全组,则阻止所有网络流量通过子网和网络接口。
304 30
|
监控 安全 网络协议
计算机端口:网络通信的桥梁
计算机端口是网络通信的逻辑通道,支持数据传输和服务识别。本文介绍端口定义、分类(知名、注册、动态端口)、作用及管理方法,涵盖常用知名端口如HTTP(80)、HTTPS(443)等,并强调端口安全配置的重要性,帮助读者全面理解这一关键组件。
1320 6
|
存储 网络安全 数据安全/隐私保护
|
存储 缓存 网络协议
|
安全 Linux 网络安全
nmap 是一款强大的开源网络扫描工具,能检测目标的开放端口、服务类型和操作系统等信息
nmap 是一款强大的开源网络扫描工具,能检测目标的开放端口、服务类型和操作系统等信息。本文分三部分介绍 nmap:基本原理、使用方法及技巧、实际应用及案例分析。通过学习 nmap,您可以更好地了解网络拓扑和安全状况,提升网络安全管理和渗透测试能力。
927 5