【网络协议安全】任务14:路由器DHCP_AAA_TELNET配置

本文档将详细介绍在华为 eNSP 仿真环境中,实现路由器 DHCP 服务器功能、AAA 认证以及 TELNET 远程登录配置的完整步骤,适用于华为 VRP 系统路由器。

一、配置目标

  1. 路由器作为 DHCP 服务器,为局域网内的设备自动分配 IP 地址、子网掩码、网关和 DNS 服务器地址。
  1. 借助 AAA(认证、授权、记账)框架,基于本地用户数据库,对 TELNET 远程登录进行身份认证,保证只有授权用户能够管理路由器。
  1. 成功实现 TELNET 远程登录功能,并与 AAA 认证相结合,提高远程管理的安全性。

二、配置前提

  1. 路由器已完成初始化操作,不存在冲突配置,且至少拥有 1 个 LAN 接口(例如 GigabitEthernet 0/0/0)用于连接局域网。
  1. 局域网内的设备(如 PC)已设置为自动获取 IP 地址模式。
  1. 华为 eNSP 软件已正确安装并能正常运行,相关网络设备已添加到拓扑图中并成功启动。

三、分步配置

1. 基础接口配置(必做)

首先要为路由器的 LAN 接口配置 IP 地址,该地址不仅会作为 DHCP 分配的网关,还会为 TELNET 远程登录提供访问地址。

配置命令:

<Huawei> system-view // 进入系统视图[Huawei] interface GigabitEthernet 0/0/0 // 进入LAN接口(根据实际接口进行调整)[Huawei-GigabitEthernet0/0/0] ip address 192.168.2.1 255.255.255.0 // 配置接口IP地址和子网掩码[Huawei-GigabitEthernet0/0/0] undo shutdown // 开启接口(接口默认处于关闭状态)[Huawei-GigabitEthernet0/0/0] quit // 返回系统视图

说明:

  • 所配置的接口 IP 地址(192.168.2.1)将作为 DHCP 分配给客户端的默认网关,必须与后续配置的 DHCP 地址池处于同一网段。
  • 若接口处于关闭(shutdown)状态,DHCP 服务和 TELNET 远程登录都无法正常工作,因此务必确保接口已开启。

2. DHCP 服务器配置

为了让局域网设备能够自动获取 IP 地址,需要定义 DHCP 地址池并设置相关关键参数,如 IP 地址范围、网关、DNS 服务器等。

配置命令:

// 步骤1:创建DHCP地址池(地址池名称可自定义,此处以“lan-pool”为例)[Huawei] ip pool lan-pool[Huawei-ip-pool-lan-pool] network 192.168.2.0 mask 255.255.255.0 // 配置可分配的IP地址范围及子网掩码[Huawei-ip-pool-lan-pool] gateway-list 192.168.2.1 // 指定默认网关(即路由器LAN接口的IP地址)[Huawei-ip-pool-lan-pool] dns-list 8.8.8.8 114.114.114.114 // 配置DNS服务器地址(可填写公网或内网DNS)[Huawei-ip-pool-lan-pool] lease day 7 // 设置IP地址租约时间为7天(默认租约时间可根据需求调整)[Huawei-ip-pool-lan-pool] quit // 返回系统视图// 步骤2:启用DHCP服务[Huawei] dhcp enable // 全局启用DHCP服务,这是DHCP功能生效的必要条件// 步骤3:(可选)排除不参与自动分配的IP地址[Huawei] ip pool lan-pool[Huawei-ip-pool-lan-pool] excluded-ip-address 192.168.2.2 192.168.2.10 // 排除192.168.2.2到192.168.2.10的IP地址[Huawei-ip-pool-lan-pool] quit // 返回系统视图

参数说明:

  • network 192.168.2.0 mask 255.255.255.0:表示可分配的 IP 地址范围是 192.168.2.1 到 192.168.2.255(扣除排除的 IP 地址后)。
  • gateway-list:必须与 LAN 接口的 IP 地址保持一致,否则局域网设备将无法访问网关,进而无法与外部网络通信。
  • dns-list:建议填写公网 DNS 服务器地址(如 8.8.8.8),以保证局域网设备能够正常解析域名。
  • 若网络中没有需要排除的 IP 地址,可省略排除 IP 地址的相关配置命令。

3. AAA 配置(认证基础)

AAA(认证、授权、记账)用于对 TELNET 登录进行身份验证,此处采用本地用户数据库(无需依赖远程服务器,适用于小型网络环境)。

配置命令:

// 步骤1:进入AAA视图[Huawei] aaa// 步骤2:创建本地用户(用于TELNET认证)[Huawei-aaa] local-user admin password cipher 123456 // 创建用户名为admin,密码为123456(cipher表示密码加密存储)[Huawei-aaa] local-user admin privilege level 15 // 设置该用户的权限级别为15(最高级别,拥有所有操作权限)[Huawei-aaa] local-user admin service-type telnet // 指定该用户仅允许通过TELNET方式登录// 步骤3:返回系统视图[Huawei-aaa] quit

4. TELNET 配置(结合 AAA 认证)

TELNET(Telecommunication Network)是一种基于TCP/IP 协议的远程登录协议,用于在本地计算机(客户端)和远程设备(服务器 / 网络设备)之间建立文本交互连接,实现对远程设备的控制和管理。Telnet协议允许用户在远程计算机上打开一个命令行界面,就像是直接坐在计算机前操作一样,通常用于管理网络设备和服务器,它通常运行在 TCP 23端口,并通过 文本界面 提供操作功能。

TELNET 协议虽然因安全性问题逐渐被 SSH 替代,但在特定场景下仍有其应用价值,以下是其主要应用场景及特点分析:

1. 老旧设备的远程管理

  • 适用场景:早期网络设备(如老式路由器、交换机、防火墙)或嵌入式系统(如工业控制设备、打印机),由于硬件或固件限制,仅支持 TELNET 协议,不支持 SSH。
  • 特点:这些设备通常部署在封闭网络(如内网)中,安全性风险较低,TELNET 的简单性(无需复杂加密)成为其保留的理由。
  • 示例:部分工厂的工业控制设备,因系统老旧,管理员需通过 TELNET 登录调试参数。

2. 简单的本地网络管理

  • 适用场景:在小型局域网(LAN)中,对设备进行临时配置或故障排查,且网络环境相对安全(无外部攻击风险)。
  • 特点:TELNET 协议实现简单,客户端工具(如 Windows 自带的telnet命令、PuTTY)易获取,适合快速临时操作。
  • 示例:家庭路由器的本地管理(通过telnet 192.168.1.1登录配置端口映射)。

3. 协议调试与学习

  • 适用场景:网络协议学习、调试简单的 TCP 服务(如 HTTP、SMTP 的基础交互)。
  • 特点:TELNET 本质是基于 TCP 的文本交互工具,可模拟客户端向任意 TCP 端口发送文本数据,帮助理解协议交互过程。
  • 示例:通过telnet example.com 80手动发送 HTTP 请求(如GET / HTTP/1.1),观察服务器返回的原始响应,学习 HTTP 协议细节。

4. 特定 legacy 系统维护

  • 适用场景:运行老旧操作系统的服务器(如早期的 UNIX、Linux 系统),或依赖 TELNET 的传统业务系统(如某些银行、政企的内部系统)。
  • 特点:这些系统因历史原因未升级,TELNET 是其远程访问的唯一方式,需在严格的安全隔离环境(如物理隔离网络)中使用。

5. 嵌入式设备的轻量控制

  • 适用场景:资源受限的嵌入式设备(如物联网传感器、小型网关),因硬件性能有限(CPU、内存小),无法支持 SSH 的加密计算,TELNET 的低资源消耗成为优势。
  • 特点:仅在设备本地或信任网络中使用,避免暴露在公网。

TELNET 的局限性与替代方案

尽管有上述场景,TELNET 的明文传输缺陷使其在公网或安全敏感场景中被严格禁止,替代方案主要为:

  • SSH:通过加密传输数据,支持身份认证,是目前主流的远程管理协议(如路由器、服务器的ssh命令)。
  • Web 管理界面:图形化界面(Web UI),适合非专业用户远程配置设备(如家用路由器的浏览器管理页面)。

TELNET 用于远程登录路由器,需要配置虚拟终端线路(VTY)并关联 AAA 认证,以确保远程访问的安全性。

配置命令:

// 步骤1:进入VTY线路配置视图(华为设备通常有0-4共5条线路,支持多个用户同时登录)[Huawei] user-interface vty 0 4// 步骤2:设置认证方式为AAA认证[Huawei-ui-vty0-4] authentication-mode aaa // 登录时采用AAA认证方式// 步骤3:(可选)设置登录后自动进入特权模式[Huawei-ui-vty0-4] user privilege level 15// 步骤4:(可选)设置超时时间(无操作时自动断开连接)[Huawei-ui-vty0-4] idle-timeout 5 0 // 5分钟内无操作则自动断开连接(单位:分 秒)// 步骤5:返回用户视图[Huawei-ui-vty0-4] quit[Huawei] save // 保存配置,防止设备重启后配置丢失

四、配置验证

1. 验证 DHCP 功能

在局域网的 PC 上进行如下操作:

  • 确保 PC 已设置为自动获取 IP 地址。
  • 查看 PC 的 IP 配置信息:在 Windows 系统的命令提示符中输入ipconfig,在 Linux 系统的终端中输入ifconfig。若配置成功,应显示以下信息:
    • IP 地址:192.168.2.11-254(排除的 IP 地址除外)
    • 子网掩码:255.255.255.0
    • 默认网关:192.168.2.1
    • DNS 服务器:8.8.8.8(与配置的 DNS 服务器地址一致)

2. 验证 TELNET 与 AAA 认证

从 PC 远程登录路由器:

  • 在 PC 的命令提示符中输入telnet 192.168.2.1(路由器 LAN 接口的 IP 地址)。
  • 当提示输入用户名和密码时,输入之前创建的用户名admin和密码123456,若能成功登录路由器,则说明配置生效。
  • 验证用户权限:登录后尝试执行一些高级操作命令(如system-view进入系统视图等),若能正常执行,则表明用户权限设置正确。

3. 验证 AAA 配置

  • 错误验证:使用错误的用户名或密码进行 TELNET 登录,此时应无法登录成功,提示认证失败,说明 AAA 认证已生效。
  • 查看本地用户配置:在路由器的用户视图下输入display aaa local-user,确认本地用户的配置信息是否正确。

五、实战操作 

1、DHCP配置

1.1 接口配置

ensp搭建PC1使用DHCP方式获取IP地址,配置路由器G0/0/0接口为DHCP接口(接口地址池)

1.1.1 路由器配置过程

sys
dhcp enable   #全局启用设备上的DHCP功能,启用后可提供DHCP服务
interface GigabitEthernet 0/0/0
ip address 192.168.1.1 255.255.255.0   #为配置DHCP服务的接口设置网关地址
dhcp select interface   #配置接口基于[接口地址池]提供DHCP服务
dhcp server dns-list 192.168.1.2   #配置 DHCP 服务器分配给客户端的 DNS服务器地址dhcp server excluded-ip-address 192.168.1.2   #排除DNS的IP地址192.168.1.2,该地址将不会分配给DHCP客户端dhcp server lease day 3   #设置DHCP租期3天

1.1.2 接口地址池配置结果验证

 PC1设置DHCP方式获得IP,并通过  ipconfig /renew  重新获取IP地址,如下图所示:

1.2 全局地址池配置

1.2.1 路由器配置过程 

sys
dhcp enable   #全局启用设备上的DHCP功能,启用后可提供DHCP服务
ip pool test   #创建 DHCP 地址池,名称:test
network 192.168.0.0 mask 24   #为地址池配置了网络192.168.0.0子网掩码255.255.255.0(即/24)
gateway-list 192.168.0.1   #为地址池配置默认网关:192.168.0.1
lease day 10   #设置 DHCP 租期为10天
quit
int g0/0/0
dhcp select global   #设置(全局)模式,将该接口作为DHCP服务器
ip address 192.168.0.1 255.255.255.0   #为该接口设置网关地址#若想配置DNS服务器,则可如下设置
ip pool test   #进入test地址池
dns-list ?#IP_ADDR<x.x.x.x>  IP address#
dns-list 192.168.0.2   #或者设置dns-list 8.8.8.8 114.114.114.114
excluded-ip-address 192.168.0.2   #排除目标在dhcp范围
dis this

1.2.2 全局地址池配置结果验证 

2、Telnet基础配置 

认证模式描述
AAAAAA认证
Password登陆时只通过密码实现认证

 在简单网络中,使用路由器模拟配置Telent服务,通过PC终端进行访问。

2.1 配置端口并测试互通 
AR1和AR2分别配置同网段内不同的IP地址,并Ping测试互通
 2.2 AR2路由器配置开启telent服务 
sys
int g0/0/0
ip address 192.168.0.10 24
quser-interface vty 0 4
#user-interface:  #进入用户界面配置模式vty:  #指代虚拟终端接口,用于远程登陆0 4 :  #表示配置 VTY 0 到 VTY 4 ,即支持 5个并发远程登陆会话(编号从0到4)
#authentication-mode password   #设置 VTY 用户登录认证的方法为密码认证
#
Please configure the login password (maximum length 16):admin123
#部分版本会自动提示并设置密码,设置后会立即生效
#set authentication password cipher admin123   #部分版本需要使用如此命令单独设置密码admin123
q
sysname AR2   #给路由器重命名

2.3 配置效果: 

路由器AR1重命名为AR1,使用telnet连接AR2 

sysname AR1
q
telnet 192.168.0.10
#Press CTRL_] to quit telnet modeTrying 192.168.0.20 ...Connected to 192.168.0.10 ...Login authentication
Password:
#

 3、Telnet配置AAA

3.1 配置接口并互通测试 
AR1和AR2分别配置同网段内不同的IP地址,并Ping测试互通

3.2 在AR2上配置AAA

 配置AAA,创建test用户,指定登陆方式为telnet,并设置5个虚拟登录重点连接AAA

q
aaa   #进入AAA配置
local-user test password cipher admin123   #创建一个新的用户test并设置密码admin23
#
Info:Add a new user.
#local-user test service-type telnet   #设置新用户test的登陆方式为telnet
local-user test privilege level 0   #设置test用户的登陆等级为0,最低模式
q
user-interface vty 0 4   #配置远程登陆的5个虚拟终端线
authentication-mode aaa   #在终端接口中应用AAA配置


用户权限等级划分 : 

等级说明
0用户模式,权限最低,只能执行基本的查看命令,例如 ping 和 quit 。
1-2通常用于只允许部分基本命令的用户,属于受限权限。
3-14可自定义权限等级,具体授权命令根据管理员设定。
15最高权限,可以执行所有配置和管理命令,进入 系统视图 进行配置

3.3 在AAA中创建域,并关联用户

 在AAA中创建域test,并将test用户关联到域test中,如果没有给test用户指定域,则会默认自动归属到默认域(default)。

aaa   #进入AAA配置
dis this   #查看AAA配置好的域内有用户test和admin两个账号并有不同的密码和服务连接方式domain test   #AAA内创建新的域test
qlocal-user test@test password cipher admin123   #将test用户加入到test域内
quser-interface vty 0 4   #配置远程登陆5个虚拟终端接口
authentication-mode aaa
domain test   #加入test域
dis domain name test   #查看域配置状况

六、注意事项

  1. TELNET 协议的缺陷:TELNET 协议在传输数据时采用明文方式,存在密码泄露的风险,在实际生产环境中,建议使用更安全的 SSH 协议(需进行额外的加密算法配置)。
  2. DHCP 安全:为了防止恶意 DHCP 服务器攻击局域网,可在交换机上配置 DHCP Snooping 功能(需交换机支持该功能)。
  3. AAA 扩展:如果网络规模较大或对安全性有更高要求,可将 AAA 认证与远程 RADIUS/TACACS + 服务器对接(需要额外配置服务器的 IP 地址和密钥等信息)。
  4. 配置保存:每次配置完成后,务必执行save命令保存配置,以免设备重启后配置丢失。

通过以上配置步骤,可在华为 eNSP 环境中实现路由器的 DHCP 自动分配 IP 地址、AAA 身份认证以及 TELNET 远程管理功能,满足小型网络的基本管理需求。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/88106.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/88106.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深度探索:现代翻译技术的核心算法与实践(第一篇)

引言:翻译技术的演进之路 从早期的基于规则的机器翻译(RBMT)到统计机器翻译(SMT),再到如今主导行业的神经机器翻译(NMT),翻译技术已经走过了漫长的发展道路。现代翻译系统不仅能够处理简单的句子,还能理解上下文、识别领域术语,甚至捕捉微妙的文化差异。 本系列文章将带…

玩转Docker | 使用Docker部署NotepadMX笔记应用程序

玩转Docker | 使用Docker部署NotepadMX笔记应用程序 前言一、NotepadMX介绍工具简介主要特点二、系统要求环境要求环境检查Docker版本检查检查操作系统版本三、部署NotepadMX服务下载NotepadMX镜像编辑部署文件创建容器检查容器状态检查服务端口安全设置四、访问NotepadMX服务访…

Web前端:not(否定伪类选择器)

not&#xff08;否定伪类选择器&#xff09;CSS中的 :not() 选择器是⼀个否定伪类选择器&#xff0c;它⽤于选择不符合给定选择器的元素。这是⼀种排除特定元素的⽅法&#xff0c;可以⽤来简 化复杂的选择器&#xff0c;提⾼ CSS 规则的灵活性和精确性。:not() 选择器的基本语法…

【BTC】比特币网络

目录 一、比特币网络架构 1.1 节点加入与离开 二、消息传播方式 三、交易处理机制 四、网络传播问题 五、实际应用问题及解决 本章节讲比特币网络的工作原理&#xff0c;讲解新创建的区块是如何在比特币网络中传播的。 一、比特币网络架构 比特币工作在应用层&#xff…

Clickhouse 的历史发展过程

20.5.3 开始支持多线程20.6.3 支持explainmysql 20.8 实时同步mysql&#x1f4cc; ‌一、早期版本阶段&#xff08;1.1.x系列&#xff09;‌‌版本范围‌&#xff1a;1.1.54245&#xff08;2017-07&#xff09;→ 1.1.54394&#xff08;2018-07&#xff09;‌核心特性‌&#x…

玩转n8n工作流教程(一):Windows系统本地部署n8n自动化工作流(n8n中文汉化)

在Windows系统下使用 Docker 本地部署N8N中文版的具体操作&#xff0c;进行了详尽阐述&#xff0c;玩转n8n工作流教程系列内容旨在手把手助力从0开始一步一步深入学习n8n工作流。想研究n8n工作流自动化的小伙伴们可以加个关注一起学起来。后续也会持续分享n8n自动化工作流各种玩…

mini-program01の系统认识微信小程序开发

一、官方下载并安装 1、下载&#xff08;I选了稳定版&#xff09; https://developers.weixin.qq.com/miniprogram/dev/devtools/download.htmlhttps://developers.weixin.qq.com/miniprogram/dev/devtools/download.html 2、安装&#xff08;A FEW MOMENT LATER&#xff09;…

如何将 Java 项目打包为可执行 JAR 文件

如何将 Java 项目打包为可执行 JAR 文件我将详细介绍将 Java 项目打包为可执行 JAR 文件的完整流程&#xff0c;包括使用 IDE 和命令行两种方法。方法一&#xff1a;使用 IntelliJ IDEA 打包步骤 1&#xff1a;配置项目结构打开项目点击 File > Project Structure在 Project…

【Starrocks 异常解决】-- mysql flink sync to starrocks row error

1、异常信息 flink 1.20 starrocks 3.3.0 mysql 8.0 errorLog: Error: Target column count: 35 doesnt match source value column count: 28. Column separator: \t, Row delimiter: \n. Row: 2025-05-22 6 23400055 214 dssd 1 1 1928 mm2er 360 20000.00000000 1…

Jenkins 使用宿主机的Docker

背景&#xff1a;不想在Jenkins 内部安装Docker,想直接使用Jenkins服务所在的系统安装的docker当你在 Jenkins 中执行 docker 命令时&#xff0c;实际上是通过 Docker 客户端与 Docker 守护进程进行通信。Docker 客户端和守护进程之间的通信是通过一个名为 /var/run/docker.soc…

工具+服务双驱动:创客匠人打造中医IP差异化竞争力

一、技术工具场景化定制&#xff1a;中医专业的可视化破圈在中医IP同质化严重的行业现状下&#xff0c;创客匠人以场景化技术工具破解专业传播难题。系统内置的“体质测试”模块可生成个性化调理报告&#xff0c;“案例库”支持前后对比图上传&#xff0c;“直播问诊”自动添加…

JVM对象分配内存如何保证线程安全?

大家好&#xff0c;我是锋哥。今天分享关于【JVM对象分配内存如何保证线程安全&#xff1f;】面试题。希望对大家有帮助&#xff1b; JVM对象分配内存如何保证线程安全&#xff1f; 超硬核AI学习资料&#xff0c;现在永久免费了&#xff01; 在Java中&#xff0c;JVM&#xf…

机器学习中的数据对齐

文章目录前言数据集怎么理解数据数据对齐为什么偏偏是这样对齐&#xff1f;前言 在神经网络中&#xff0c;我们往往会根据数据集构建训练集、测试集&#xff0c;有时会有验证集。但是&#xff0c;在构建完成后&#xff0c;如果直接将这些数据直接扔进模型训练&#xff0c;输入…

机器学习:更多分类回归算法之决策树、SVM、KNN

下面介绍的这几种算法&#xff0c;既能用于回归问题又能用于分类问题&#xff0c;接下来了解下吧。 决策树 可参考&#xff1a; 决策树&#xff08;Decision Tree&#xff09; | 菜鸟教程 决策树&#xff08;Decision Tree&#xff09;是一种常用的监督学习算法&#xff0c;可用…

Vue 整合 Vue Flow:从零构建交互式流程图

目录引言目的适用场景环境准备基础组件 (index.vue)自定义组件 (矩形、菱形等)RectangleNode.vue (矩形节点)&#xff1a;DiamondNode.vue (菱形节点)&#xff1a;ImageNode(自定义图片节点):操作实现 (#操作实现) 拖拽节点 (#拖拽节点) 连线 (多连接点) 删除节点 …

C# WPF - Prism 学习篇:搭建项目(一)

一、前期准备开发工具&#xff1a;Visual Studio 2022二、创建项目1、创建WPF 应用“WpfApp.StudyDemo”&#xff1a;2、项目结构如下&#xff1a; 三、安装 Prism1、选中项目“WpfApp.PrismDemo”&#xff0c;在右键菜单中选择“管理 NuGet 程序包(N)...”。2、在搜索框中输入…

单片机 基于rt-thread 系统 使用 CCM内存

一、开发环境 开发板&#xff1a;野火stm32f407 系统&#xff1a;rt-thread V4.1.1 二、链接脚本配置 ; ************************************************************* ; *** Scatter-Loading Description File generated by uVision *** ; ****************************…

【UnityAssetBundle】AB包卸载资源

AB包的卸载高效稳定游戏开发的强制要求&#xff0c;它解决了资源管理中的内存泄漏问题&#xff0c;为动态的内容加载、热更新、大型世界的构建提供了内存保障&#xff0c;最终提升了游戏性能、稳定性和用户体验。卸载资源方式一&#xff08;推荐使用&#xff09;&#xff1a;卸…

【万字长文】深度学习2 yolov5修改为自己的数据集

数据预处理 使用labelme可以直接导出适用于yolo模型的txt文本数据&#xff0c;也可以直接导出默认的json数据结构&#xff0c;后面我会提供代码进行转换。自行进行标注&#xff0c;图片与标注一一对应&#xff0c;更多要求不赘述。因为我做最简单的检索模型&#xff0c;不做切…

ubuntu18编译RealSense SDK 2.0

参考文章&#xff1a;https://dev.intelrealsense.com/docs/compiling-librealsense-for-linux-ubuntu-guide1、安装依赖 sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade sudo apt-get install libssl-dev libusb-1.0-0-dev libud…