一、背景说明
在实际生产网络中,为了确保远程管理通道的机密性、安全性与可控性,企业推荐对华为交换机统一配置 SSH 加密登录服务,并加入以下增强安全控制:
SSH监听端口自定义:防止攻击者通过默认端口(22)扫描设备;
SSH登录来源限制(ACL):防止非授权IP远程接入交换机;
强制使用本地账号认证:确保登录身份唯一可控;
全面禁用Telnet明文协议:保障传输加密。
二、配置步骤总览
三、配置实操命令及说明
Step 1:启用 SSH 服务
[Switch] sysname Core-SW01
[Core-SW01] stelnet server enable
说明:启用 SSH(stelnet)服务端监听功能。
当启用
ssh client first-time enable
后,设备允许第一次连接目标服务器时自动接受其主机密钥,并将其缓存;下次连接时会校验该密钥,防止中间人攻击(类似 Linux 的
~/.ssh/known_hosts
)。SSH 服务器在监听连接请求时,默认可能只监听某个接口(如 VLAN 接口或 Loopback 接口),而这条命令允许它从所有接口接受 SSH 请求。
Step 2:配置 SSH 监听端口号(如 22222)
[Core-SW01] stelnet server port 22222
说明:
修改 SSH 默认端口为 22222;
可缓解暴力扫描攻击;
SSH 客户端连接时需指定端口:
ssh -p 22222 admin@IP
。
Step 3:生成 RSA 密钥对(SSH 必需)
[Core-SW01] rsa local-key-pair create
说明:默认生成2048位密钥,供 SSH 握手时使用。
Step 4:配置本地用户账号及权限
[Core-SW01] aaa
[Core-SW01-aaa] local-user admin password irreversible-cipher Huawei@123
[Core-SW01-aaa] local-user admin privilege level 15
[Core-SW01-aaa] local-user admin service-type ssh terminal
说明:
设置本地管理员账号 admin;
权限等级 15;
启用 SSH 和 Console 登录通道。
Step 5:配置 ACL 限制 SSH 登录来源(如10.10.10.0/24)
[Core-SW01] acl number 2001
[Core-SW01-acl-basic-2001] rule permit ip source 10.10.10.0 0.0.0.255
[Core-SW01-acl-basic-2001] rule deny ip
说明:
创建基础ACL 2001;
仅允许来自指定IP段的SSH登录请求;
其余IP默认拒绝访问。
Step 6:配置 VTY 虚拟终端(SSH登录 + ACL)
[Core-SW01] user-interface vty 0 4
[Core-SW01-ui-vty0-4] authentication-mode aaa
[Core-SW01-ui-vty0-4] protocol inbound ssh
[Core-SW01-ui-vty0-4] acl 2001 inbound
[Core-SW01-ui-vty0-4] idle-timeout 10 0
[Core-SW01-ui-vty0-4] user privilege level 15
[Core-SW01-ui-vty0-4] quit
说明:
禁用 Telnet,仅支持 SSH;
绑定ACL 2001 进行登录源限制;
设置空闲超时和权限等级。
Step 7:配置 Console 串口登录(启用认证)
[Core-SW01] user-interface console 0
[Core-SW01-ui-console0] authentication-mode aaa
[Core-SW01-ui-console0] idle-timeout 15 0
[Core-SW01-ui-console0] user privilege level 15
[Core-SW01-ui-console0] quit
说明:登录交换机物理串口时同样要求输入账号密码。
四、验证 SSH 配置状态(上线前必查)
✅ 查看SSH服务状态及监听端口
display ssh server status
示例输出:
SSH Version : 2.0
SSH server enable : Yes
SSH port : 22222
Idle timeout interval (minutes) : 10
Authentication timeout (seconds) : 60
✅ 查看本地用户配置
display local-user
确认内容:
admin 用户存在;
权限等级为 15;
服务类型包含 SSH、Terminal。
✅ 查看VTY线路配置及ACL绑定
display current-configuration configuration user-interface vty 0 4
确认内容:
使用 SSH 协议;
认证方式为 AAA;
ACL 2001 已绑定。
✅ 查看ACL匹配情况
display acl 2001
示例输出:
rule 5 permit ip source 10.10.10.0 0.0.0.255 (Matched 12 times)
rule 10 deny ip (Matched 3 times)
说明:命中次数代表ACL已生效。
✅ 测试SSH远程登录
使用命令:
#Linux登录
ssh -p 22222 admin@10.10.10.1
#交换机登录
stelnet 10.10.10.1 40912
成功提示用户名登录说明配置正确,若失败请排查防火墙、ACL规则或认证问题。
✅ 查看SSH登录日志
display logbuffer | include SSH
示例输出:
SSH/6/LOGIN_SUCCESS: Admin user admin (IP=10.10.10.5) logged in via SSH.
SSH/4/LOGIN_FAILED: SSH login failed for user root (IP=10.10.10.50).
作用:
追踪合法/非法SSH登录;
审核运维行为。