一、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确认即可。
九、常见问题解决
-
连接失败提示"验证服务器公钥失败" :在客户端执行**
ssh client first-time enable**。 -
协议错误或版本不兼容:尝试更换SSH客户端软件。
-
加密算法问题 :可配置
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 |
允许首次连接 |