首页/网络/网络设备配置速查/开启 SSH 服务器(含密钥生成)
设备开局与基础配置61 条

开启 SSH 服务器(含密钥生成)

SSH 是所有网络设备的标配管理通道,但三厂开启步骤不同:华为/H3C 先生成主机密钥再开服务,思科先生成 RSA 密钥再配 VTY 传输协议,漏一步都登不上。

网络设备配置速查网络更新于 2026-10-13

开启 SSH 服务端

SSH 是所有网络设备的标配管理通道,替代明文的 Telnet。开启步骤三厂不同但都必须先有主机密钥:华为先生成 RSA 本地密钥对再开 stelnet 服务,思科必须先配主机名与域名再生成 RSA 密钥,H3C 先生成 RSA 密钥对再开 ssh 服务。最后一步都要在 VTY 线路里放行 SSH 协议,漏掉任何一步都表现为连接被拒绝或协议协商失败。

基本信息

适用设备全部路由器、交换机、防火墙
权限要求系统视图或全局配置模式
前提条件设备已有主机密钥,且存在可登录的本地或 AAA 账号
默认端口TCP 22,可改端口但需同步通知运维与监控
协议版本建议只启用 SSHv2,v1 已不推荐使用

典型使用场景

  • 新设备开局配置远程管理通道,替代明文 Telnet
  • 安全整改:按基线要求关闭 Telnet 并只保留 SSH 登录
  • 自动化运维与配置采集,脚本通过 SSH 连接设备执行命令
  • 更换管理网段或加设备后,为新设备批量补齐 SSH 服务配置
  • 排障时通过 SSH 转发或跳板登录内网设备

华为 VRP

华为 VRP
system-view
[Huawei] rsa local-key-pair create      # 生成主机密钥,按提示输入 2048
[Huawei] stelnet server enable
[Huawei] user-interface vty 0 4
[Huawei-ui-vty0-4] authentication-mode aaa
[Huawei-ui-vty0-4] protocol inbound ssh
[Huawei-ui-vty0-4] quit
display ssh server status   # 核验服务已开启

思科 IOS

思科 IOS
SW-CORE-01(config)# ip domain-name corp.local       # 生成密钥前必须先有域名
SW-CORE-01(config)# crypto key generate rsa general-keys modulus 2048
SW-CORE-01(config)# ip ssh version 2
SW-CORE-01(config)# line vty 0 4
SW-CORE-01(config-line)# login local
SW-CORE-01(config-line)# transport input ssh
SW-CORE-01# show ip ssh   # 核验版本与超时参数

H3C Comware

H3C Comware
system-view
[H3C] public-key local create rsa          # 生成主机密钥,按提示输入 2048
[H3C] ssh server enable
[H3C] user-interface vty 0 4
[H3C-ui-vty0-4] authentication-mode scheme
[H3C-ui-vty0-4] protocol inbound ssh
[H3C-ui-vty0-4] quit
display ssh server   # 核验服务状态

三厂开启步骤对照

步骤华为 VRP思科 IOSH3C Comware
第一步生成 RSA 本地密钥对配置主机名与 ip domain-name生成本地 RSA 密钥对
第二步stelnet server enablecrypto key generate rsa 生成密钥ssh server enable
第三步VTY 认证方式设为 aaa启用 ip ssh version 2VTY 认证方式设为 scheme
第四步VTY 放行协议 sshVTY 用 login local 加 transport input sshVTY 放行协议 ssh
核验命令display ssh server statusshow ip sshdisplay ssh server

开启前后要做的事

  • 先在 Console 或已登录的会话里操作,SSH 配置出错时还有退路
  • 账号与认证方式先配好再开服务,顺序颠倒会出现端口开着却登不进去
  • 客户端首次连接会提示主机密钥指纹,核对指纹后再接受,否则等于放弃中间人防护
  • 关闭 Telnet 与收敛 HTTP 管理要一起做,只关其中一项等于没关
  • VTY 限源、登录超时与失败次数限制随 SSH 一起配置,暴露面大时先用 ACL 限源
  • 客户端侧也要留备用登录路径,例如跳板机或带外通道,避免 SSH 参数调错后全员进不去
思科未配置主机名与域名时生成密钥会直接报错,这是最常见的拦路虎;密钥长度建议 2048 位,生成过程可能需要几秒到几十秒,期间设备会产生运算负载,堆叠环境下需在多台成员上确认均已完成生成。
VTY 的协议放行决定能被哪些客户端连接:华为 stelnet、H3C ssh 或 all、思科 transport input ssh;配置完先保留一个已经登录的会话或 Console 通道,再从另一台机器验证 SSH 可用,最后才关闭 Telnet。
开启服务只是第一步,之后还要把 VTY 的授权限源、登录超时、登录失败次数限制和并发会话数一起按基线配好,否则 OPEN 的 SSH 只是把明文通道换成了加密通道,认证面依然是敞开的。
客户端侧同样要收敛:写自动化脚本时固定使用密钥认证并核对主机指纹,而不是每次跳过指纹校验;脚本里硬编码口令的最大风险是一旦设备上留了口令策略轮换,几十条流水线会同时失效。

易错点

  • 思科未配置 ip domain-name 就生成 RSA 密钥:命令直接报错,新手第一坑
  • 华为或 H3C 还没生成主机密钥就开启服务:服务显示已启用但客户端连接会被拒绝,排查时容易只盯着账号和 ACL
  • 先关闭 Telnet 再验证 SSH:两件事顺序反了会把设备锁在门外,必须先验证 SSH 可用再关 Telnet
  • VTY 的协议放行写成 all 或漏改:Telnet 仍然可用,安全整改形同虚设,核验时要在 VTY 配置里逐行确认
  • 只在一台设备上验证:批量配置时部分设备因版本差异密钥生成失败,逐台核验服务状态比抽检更稳

数据来源与参考

  • 华为产品文档:SSH 服务端配置
  • Cisco IOS SSH 配置指南
  • H3C Comware 7 SSH 配置

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌