华为eNSP综合实验之- 通过SSH远程登陆设备

一、SSH登录的核心作用和意义

**为远程管理网络设备或服务器提供一个加密、可靠且可严格控制的专业通道。**​ 它彻底解决了传统远程管理方式(如Telnet、FTP)的根本性安全缺陷。

其主要价值和意义体现在以下三个层面:

1. 解决最核心的安全问题:对抗窃听与篡改
  • 加密传输 :SSH将所有通信内容(包括用户名、密码、执行的命令、返回的结果)进行高强度加密。即使数据在传输过程中被截获,攻击者也无法直接读取,从根本上解决了窃听风险。

  • 数据完整性验证 :SSH通过报文校验机制,确保传输的数据未被恶意篡改重放

  • 身份验证服务器:客户端首次连接时,会验证服务器的公钥指纹,防止用户连接到假冒的"中间人"服务器。

2. 提供强大且灵活的身份验证机制

SSH不仅加密通道,还强化了"开门"的钥匙:

  • 支持多种认证方式 :除了传统的密码,更支持更安全的公钥认证。管理员可以将自己的公钥部署在设备上,登录时使用私钥进行数学验证,无需记忆和传输密码,且几乎无法暴力破解。

  • 细粒度访问控制 :正如您之前配置的 ssh user ... authentication-type,可以为不同用户指定不同的认证方式(如管理员强制用密钥,审计员用密码),实现安全等级分层。

3. 成为现代网络自动化与可管理性的基石
  • 自动化运维的基础 :脚本和自动化工具(如Ansible, Python脚本)可以基于SSH公钥认证,安全、无交互地批量登录和管理成千上万的设备,这是实现运维自动化基础设施即代码的前提。

  • 功能扩展的平台:SSH不仅是一个远程Shell,它还是一个安全的"隧道协议"。在其安全通道基础上,可以运行其他服务:

    • SFTP:安全的文件传输,替代不安全的FTP。

    • SCP:安全的文件复制命令。

    • 端口转发:将其他不安全的TCP连接通过SSH隧道加密传输,作为一种临时的安全加固手段。

二、基础网络配置

首先确保设备与客户端网络可达,配置管理IP地址:

复制代码
<Huawei>system-view    #system-view进入系统视图
[Huawei]sysname R1  # 修改设备名称(可选)
[R1]interface GigabitEthernet 0/0/0    #interface进入接口配置
[R1-GigabitEthernet0/0/0]ip address 10.1.1.1 24    #ip address配置接口IP和子网掩码
[R1-GigabitEthernet0/0/0]quit

命令解析system-view进入系统视图;sysname修改设备标识;interface进入接口配置;ip address配置接口IP和子网掩码。

三、生成RSA密钥对

SSH使用非对称加密,必须生成本地密钥对:

复制代码
[R1]rsa local-key-pair create    #生成本地密钥对
The range of public key size is (512~2048).
Input the bits in the modulus [default=512]:1024
Generating keys...

命令解析 :**rsa local-key-pair create**生成RSA密钥对,密钥长度推荐1024位以上。这是SSH加密通信的基础。

四、启用SSH服务

复制代码
[R1]stelnet server enable #启用SSH服务
Info: Succeeded in starting the Stelnet server.

命令解析 :**stelnet server enable**启动SSH服务器功能(华为设备使用stelnet作为SSH服务)。

五、配置VTY用户界面

复制代码
[R1]user-interface vty 0 4    #进入虚拟终端接口
[R1-ui-vty0-4]authentication-mode aaa
[R1-ui-vty0-4]protocol inbound ssh
[R1-ui-vty0-4]quit

命令解析

  • user-interface vty 0 4:进入虚拟终端接口,0-4表示允许5个并发会话

  • authentication-mode aaa:设置认证模式为AAA(认证、授权、计费)

  • protocol inbound ssh:仅允许SSH协议接入,自动禁用Telnet

六、配置AAA本地用户

复制代码
[R1]aaa
[R1-aaa]local-user admin password cipher Huawei@123 idle-timeout 30 0
[R1-aaa]local-user admin privilege level 15
[R1-aaa]local-user admin service-type ssh
[R1-aaa]quit

命令解析

  • local-user admin password cipher:创建用户admin,密码加密存储为Huawei@123

  • privilege level 15:授予最高权限级别(0-15,15为最高)

  • service-type ssh:指定该用户仅用于SSH服务

  • idle-timeout 30 0:登陆超时时间30分钟

七、客户端配置(从另一台设备登录)

复制代码
# 在客户端设备上配置
[Client]ssh client first-time enable
[Client]stelnet 10.1.1.1
Please input the username:admin
Trying 10.1.1.1 ...
Press CTRL+K to abort
Connected to 10.1.1.1 ...
Enter password:
  ----------------------------------------------------------------------------- 
    
  User last login information:     
  -----------------------------------------------------------------------------
  Access Type: SSH      
  IP-Address : 10.1.1.2 ssh     
  Time       : 2026-02-13 11:36:04-08:00     
  -----------------------------------------------------------------------------
<R1>

命令解析ssh client first-time enable启用首次连接功能,允许客户端接受服务器的公钥。

八、保存配置验证与测试

复制代码
[R1]save
The current configuration will be written to the device.
Are you sure? [Y/N]:y

命令解析save命令将当前配置保存到设备存储,防止重启后配置丢失。

查看SSH服务器状态

复制代码
<R1>display ssh server status 
 SSH version                         :1.99  
 SSH connection timeout              :60 seconds
 SSH server key generating interval  :0 hours
 SSH Authentication retries          :3 times
 SFTP Server                         :Disable
 Stelnet server                      :Enable
<R1>

显示SSH版本、连接超时时间等服务状态。

查看SSH会话

复制代码
<R1>display ssh server session 
 --------------------------------------------------------------------
 Conn   Ver   Encry     State  Auth-type        Username
 --------------------------------------------------------------------
 VTY 0  2.0   AES       run    password         admin                           
 --------------------------------------------------------------------
<R1>

显示当前SSH连接的用户、加密方式等信息。

从客户端测试连接

复制代码
<Client>stelnet 10.1.1.1
Please input the username: admin
Trying 192.168.1.1...
Press CTRL+K to abort
Connected to 10.1.1.1...

首次连接时会提示保存服务器公钥,输入Y确认即可。

九、常见问题解决

  1. 连接失败提示"验证服务器公钥失败" :在客户端执行**ssh client first-time enable**。

  2. 协议错误或版本不兼容:尝试更换SSH客户端软件。

  3. 加密算法问题 :可配置ssh server hmac sha2_256使用更安全的算法。

配置要点总结

配置环节 核心命令 作用
基础网络 ip address 确保网络可达性
密钥生成 rsa local-key-pair create 建立加密基础
服务启用 stelnet server enable 启动SSH服务
访问控制 protocol inbound ssh 限制协议类型
用户管理 local-user ... service-type ssh 创建认证用户
客户端 ssh client first-time enable 允许首次连接
相关推荐
茶杯梦轩2 天前
从零起步学习RabbitMQ || 第二章:RabbitMQ 深入理解概念 Producer、Consumer、Exchange、Queue 与企业实战案例
服务器·后端·消息队列
YuMiao4 天前
gstatic连接问题导致Google Gemini / Studio页面乱码或图标缺失问题
服务器·网络协议
Sinclair7 天前
简单几步,安卓手机秒变服务器,安装 CMS 程序
android·服务器
Rockbean8 天前
用40行代码搭建自己的无服务器OCR
服务器·python·deepseek
埃博拉酱8 天前
VS Code Remote SSH 连接 Windows 服务器卡在"下载 VS Code 服务器":prcdn DNS 解析失败的诊断与 BITS 断点续传
windows·ssh·visual studio code
茶杯梦轩8 天前
CompletableFuture 在 项目实战 中 创建异步任务 的核心优势及使用场景
服务器·后端·面试
海天鹰9 天前
【免费】PHP主机=域名+解析+主机
服务器
DianSan_ERP9 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
呉師傅9 天前
火狐浏览器报错配置文件缺失如何解决#操作技巧#
运维·网络·windows·电脑
不是二师兄的八戒9 天前
Linux服务器挂载OSS存储的完整实践指南
linux·运维·服务器