找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

1930

积分

0

好友

252

主题
发表于 2025-12-9 06:47:08 | 查看: 47| 回复: 0

在日常网络运维工作中,我们常常需要管理物理位置分散的网络设备。频繁往返机房使用Console线进行本地配置效率低下,尤其是在管理跨机房或多地域的设备时。此时,SSH和Telnet这两种远程登录协议便成为“隔空操作”的关键技术,使工程师能够高效地完成配置、监控与排障。本文将深入解析两种协议的差异,并以华为/华三设备为例,提供从基础配置到安全加固的完整实战指南。

一、协议对比:SSH与Telnet的核心差异

SSH与Telnet协议对比图

简单来说,Telnet在传输过程中数据(包括用户名和密码)均以明文形式发送,存在严重的安全风险。而SSH则通过加密通道传输所有数据,有效防止了窃听和中间人攻击,是当前远程管理的首选协议。在掌握基本的Linux命令行操作后,理解这两种协议的差异是迈向高效、安全运维的第一步。

二、实战配置:以华为/华三设备为例

以下配置逻辑适用于多数网络设备厂商,本文以华为/华三命令行界面为例进行演示。

(一)配置前提与拓扑

  1. 设备要求:交换机或路由器需支持SSH/Telnet功能。
  2. 网络连通:确保管理PC与设备的管理接口IP(如VLANIF接口或Loopback地址)之间网络可达(可通过ping命令测试)。
  3. 工具准备
    • PC端:可使用SecureCRT、Xshell、Putty或Windows 10及以上版本自带的终端(支持SSH客户端)。
    • 设备端:已完成基础IP地址配置(例如:interface Vlanif 1; ip address 192.168.1.1 255.255.255.0)。

网络拓扑参考
配置拓扑图

(二)SSH服务端配置(以图中R2为例)

首先,请根据拓扑为设备各接口配置IP地址,确保路由可达。

[R2] stelnet server enable          # 全局开启SSH服务器功能
[R2] rsa local-key-pair create      # 创建用于加密的本地RSA密钥对
The key name will be: Host
% RSA keys defined for Host already exist.
Confirm to replace them? (y/n)[n]: y
Generate the key in advance? (y/n)[n]: y
Input the bits of the modulus [default = 512]: 1024  # 建议设置密钥长度为1024或2048
[R2] aaa                            # 进入AAA认证视图
[R2-aaa] local-user user-ssh password irreversible-cipher Huawei@123  # 创建用户并设置密文密码
[R2-aaa] local-user user-ssh privilege level 15       # 为用户分配最高权限(15级)
[R2-aaa] local-user user-ssh service-type ssh         # 指定该用户的服务类型为SSH
[R2] user-interface vty 0 4         # 进入虚拟终端线路(允许最多5个并发连接)
[R2-ui-vty0-4] authentication-mode aaa  # 设置VTY线路的认证模式为AAA
[R2-ui-vty0-4] protocol inbound all     # 允许所有协议(SSH/Telnet)接入,生产环境建议只开SSH
[R2] ssh user user-ssh authentication-type password  # 配置SSH用户使用密码认证
[R2] ssh user user-ssh service-type all              # 指定SSH用户的服务类型

(三)SSH客户端登录验证

1. 从另一台网络设备登录(以图中R1为例)

[R1] ssh client first-time enable    # 首次连接时启用SSH客户端服务
[R1] stelnet 172.16.12.2             # 连接R2的IP地址
Please input the username: user-ssh
Please input the password:           # 输入密码 Huawei@123

2. 从Windows PC终端登录
确保PC的IP地址能与路由器接口IP通信。
打开命令提示符或Windows终端,输入:

ssh user-ssh@192.168.1.1

PC端SSH登录示意图
登录成功界面

三、常见问题排查指南

  1. 连接失败

    • 检查PC与设备间网络连通性(ping管理IP)。
    • 确认设备防火墙或安全组规则已放行TCP 22(SSH)或23(Telnet)端口。
    • 使用display ssh server statusdisplay telnet server status查看服务是否已开启。
    • 检查VTY线路配置,确认protocol inbound允许了对应的协议(如SSH)。
  2. 登录后权限不足

    • 查看本地用户配置,确认权限等级(display local-user),privilege level 15为最高权限。
    • 在AAA视图下,检查是否为用户配置了正确的service-type(如ssh)。
  3. SSH密钥认证失败

    • 确认公钥文件已正确上传至设备指定目录(可通过dir命令查看)。
    • 检查设备支持的密钥算法是否与客户端匹配,推荐使用RSA 2048位及以上强度。
    • 若客户端私钥有密码保护,登录时需正确输入私钥密码。

四、安全加固最佳实践

为确保远程管理安全,请务必遵循以下实践,这涉及到对网络安全基本原则的运用:

  1. 禁用Telnet:在生产环境中,强烈建议禁用不安全的Telnet服务。执行命令:undo telnet server enable
  2. 启用强密码策略:密码长度不应少于8位,并混合使用大小写字母、数字和特殊符号(例如:Admin@2024!)。这与构建安全的认证机制(如OAuth、JWT)所遵循的凭证安全原则一致。
  3. 限制VTY连接数:减少并发会话数以降低风险,例如:user-interface vty 0 2(仅允许3个连接)。
  4. 定期更换凭证:制定策略,定期(如每90天)更新登录密码和SSH主机密钥。
  5. 通过ACL限制源IP:只允许可信的管理网段访问设备的VTY线路。
    
    [R1] acl number 2000
    [R1-acl-basic-2000] rule permit source 192.168.10.0 0.0.0.255  # 允许192.168.10.0/24网段
    [R1-acl-basic-2000] quit
    [R1] user-interface vty 0 4
    [R1-ui-vty0-4] acl 2000 inbound  # 在VTY线路上应用入方向ACL



上一篇:CVE-2017-9430与13089栈溢出漏洞实战:从复现到Shellcode利用
下一篇:高并发下单接口性能骤降排查:从线程池打满到锁竞争优化实战
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-1-12 12:20 , Processed in 0.260424 second(s), 39 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2025 云栈社区.

快速回复 返回顶部 返回列表