首页 / 资讯中心 / 文章详情

华为交换机SSH远程连接配置实操指南

华为交换机SSH远程连接配置实操指南 ★ FEATURED ARTICLE
每逢月底割接或者睡得正香被电话叫起来临时改业务配置你就会特别深刻地理解一件事给华为交换机提前把远程连接配好比设备参数多先进都实在。所谓远程连接就是让运维不用再跑机房通过网络从PC直接登录设备的命令行界面完成配置下发、状态查看和故障定位。这篇文章围绕华为交换机上最常用的SSH远程连接展开从Console口准备、管理地址规划、SSH认证授权到客户端实测和故障排查一条龙讲清楚适合刚开始搞网络的工程师也适合被设备远程管理坑过几次的兼职运维。1. 远程连接方案的整体思路为什么首选SSH1.1 三种远程管理手段的取舍华为交换机要管理总得有入口。物理上有个Console口网络上有Telnet和SSH两种远程登录协议。Console属于带外管理只能现场接线好处是设备没有IP、配置彻底搞乱时也能救回来坏处是你的人必须跑到设备跟前。Telnet最老牌配置简单但数据完全明文用户名密码在网络里裸奔。SSH本质上就是Telnet的加密替代品通信全程加密还带主机身份校验机制。现在大多数内网环境并不是完全可信的甭管是办公网还是数据中心总会有各种抓包工具、临时接入的终端。用Telnet管理设备等于把管理员密码直接交给链路上任何一个能抓到报文的人。我在这里先表明态度远程连接默认只走SSHTelnet只有在极特殊的老旧设备兼容场景里才考虑临时开并且一定配ACL限制来源。三种方式的差异用一张表看得更明白方式是否加密是否需要物理到场适用场景Console不涉及网络传输需要初始化配置、救砖、带外管理Telnet明文不需要老旧设备兼容必须加ACL限制SSH加密不需要日常远程管理的默认选择1.2 远程管理三要素一个能用的SSH远程连接拆开来看就三个要件第一设备的管理IP地址在网络中可达第二设备上运行了SSH服务并且端口没有被防火墙挡住第三有一个合法的本地用户通过了SSH认证还拥有足够的权限等级。很多新手在交换机上敲了一堆命令却连不上问题往往出在只盯着第三点忽略了前面两个前提。IP没通SSH服务没起来后面用户配置得再漂亮也白搭。所以这篇文章后面会按这个顺序走先解决管理地址和路由再配置SSH服务本身最后才是用户和VTY授权。这样每一步都有明确验证点出问题也好定位。还有一点容易被忽略管理地址要提前规划别等设备上线了才随便抓一个地址来用。比如统一规划一个管理VLAN用192.168.10.0/24这个网段核心交换机管理IP固定为192.168.10.254运维PC用192.168.10.100后续做ACL、做日志审计都有清晰的边界。2. 动手前的准备工作Console接线、终端参数与IP规划2.1 Console线缆和终端软件设置先把设备通过Console线接到电脑。华为交换机的Console口通常是RJ45形状线缆一端接设备Console口另一端是USB或者DB9串口。现在的笔记本基本都没有原生串口了普遍方案是USB转Console线驱动装好之后在设备管理器里能看到一个虚拟串口记住这个COM号。打开终端软件新建一个Serial连接串口选择刚才在设备管理器里看到的那个波特率9600数据位8停止位1校验位None流控None。这几项参数在主流网络设备上几乎统一尤其要注意流控必须关闭。我之前见过有人参数全对但流控选了Hardware结果终端一片乱码或者敲命令没反应就是因为流控把通信卡住了。连接成功后能看到设备的命令行提示符默认一般是Huawei。如果屏幕上什么都没有先敲几次回车再检查线缆是不是接紧了COM口选没选对终端软件是不是被其他进程占用了串口。2.2 给交换机配上可远程访问的管理地址新交换机默认是没有管理IP的还需要创建一个管理VLAN启用对应的三层接口再把这个VLAN划到上联物理口上。整个流程在华为VRP上长这样Huawei system-view [Huawei] sysname SW-DIST [SW-DIST] vlan 10 [SW-DIST-vlan10] quit [SW-DIST] interface vlanif 10 [SW-DIST-Vlanif10] ip address 192.168.10.254 255.255.255.0 [SW-DIST-Vlanif10] quit [SW-DIST] interface GigabitEthernet0/0/1 [SW-DIST-GigabitEthernet0/0/1] port link-type access [SW-DIST-GigabitEthernet0/0/1] port default vlan 10 [SW-DIST-GigabitEthernet0/0/1] quit这里sysname SW-DIST不是必须的但我强烈建议改一个有意义的名字。多台设备同时在管的时候提示符上写着SW-DIST和写着Huawei操作体验和误操作风险完全不一样。如果交换机当前承担的是三层转发角色也可以直接把管理地址配在物理三层口或者Loopback 0上。用Loopback地址做管理地址有个好处只要设备有一条可达路由管理面就一直稳定存在不依赖某个物理接口的状态。不过Loopback地址需要额外的路由通告内网里如果不跑动态路由反而会增加配置复杂度。2.3 缺省路由与连通性验证管理地址配好之后还要保证管理流量能来回。很多交换机上联网关是192.168.10.1如果PC和交换机不在同一个二层域就需要给交换机指一条默认路由[SW-DIST] ip route-static 0.0.0.0 0.0.0.0 192.168.10.1这条命令的意思是所有去往未知网段的流量都交给192.168.10.1这个网关。如果不配这条路由PC发过来的管理报文交换机收到了但回应报文不知道怎么回去表现就是ping不通、登录不上而抓包看起来请求都到了设备。网络配置这块完成后先在PC上ping一下192.168.10.254通了再继续后面的SSH配置。这一步省掉了后面所有故障排查都会变得很痛苦因为你不知道问题出在网络上还是SSH配置上。3. 核心配置实操SSH远程连接的完整命令流程3.1 生成RSA密钥对SSH身份验证的地基SSH不是设备出厂就能用的首先要让设备具备SSH服务能力。在华为VRP平台上SSH依赖本地生成的RSA密钥对这套密钥对用来保护SSH会话的密钥协商过程。进入系统视图后执行[SW-DIST] rsa local-key-pair create系统会提示输入密钥长度新版本默认是2048位直接回车确认就行。如果设备之前已经生成过密钥会提示已存在这时可以重新生成覆盖也可以保留原有密钥看实际安全要求。这里要理解一个容易混淆的点这个RSA密钥对不是用来给用户做登录认证的而是SSH协议用来做会话协商的。真正的用户名密码认证是后续配置的本地用户在登录时发生的。把这个逻辑理清楚后面排查“为什么公钥和私钥对不上”“为什么指纹每次变”这类问题思路会清晰很多。3.2 启动SSH服务并限定协议版本新版本的VRP默认会启动SSH服务但为了兼容老设备不少版本还是会默认接受SSH 1.0的协商方式。SSH 1.0已经被公认不安全能关就关[SW-DIST] ssh server enable [SW-DIST] ssh server version 2如果你的设备型号不支持ssh server version 2这条命令大概率是系统软件版本太老建议联系设备厂商升级到支持SSH 2.0的版本。另外默认SSH监听端口是22。很多内网安全规范会要求改掉默认端口减少被扫描器盯上的概率。但改端口之前要想清楚后续运维PC连接时都要带上自定义端口而且如果端口改了没记录下次换人维护容易找不到入口。我见过不少公司把SSH端口改成10022然后在文档里写得清清楚楚这种做法是合理的。改了端口后客户端连接命令要加-p 10022之类的参数。3.3 创建本地用户并设定权限等级接下来创建SSH登录用的本地账号。在华为VRP上本地用户密码有两种常见保存方式cipher和irreversible-cipher。区别在于cipher是可逆的配置文件泄露后有一定的解密风险irreversible-cipher是单向散列安全性更好。新版本一律推荐用不可逆加密[SW-DIST] local-user admin password irreversible-cipher Admin2025密码本身要符合强密码要求别拿Admin123这种去糊弄生产设备。密码复杂度不够加密方式再强也白搭。然后给这个用户设定权限等级和允许的服务类型[SW-DIST] local-user admin privilege level 15 [SW-DIST] local-user admin service-type ssh华为设备的用户等级范围是0到15。0到1是访问级只能看极少量状态2到3是监控级可以执行查看命令但不能改配置4到14是配置级能改配置但不能删除关键配置15是管理级拥有完整权限包括save、delete、reset这类高危操作。如果只是给外包人员临时看状态给到3级就够了。如果是给自己日常维护用直接15级省得登进去之后发现敲不了system-view干着急。service-type ssh的意思是限定这个账号只能通过SSH登录Telnet、FTP、HTTP这些通道一概不允许属于最小化暴露面的做法。3.4 配置VTY通道并绑定SSH协议用户创建好后还有一个重要的环节VTY终端通道。VTY是设备上的虚拟逻辑终端所有远程登录最终都会落到VTY通道里。VTY 0 4表示0到4一共5个并发会话普通盒式交换机够用了框式设备可能支持更多按实际型号来即可。[SW-DIST] user-interface vty 0 4 [SW-DIST-ui-vty0-4] authentication-mode aaa [SW-DIST-ui-vty0-4] protocol inbound ssh [SW-DIST-ui-vty0-4] idle-timeout 10 0 [SW-DIST-ui-vty0-4] quitauthentication-mode aaa是让VTY使用我们刚创建的本地用户做认证。protocol inbound ssh是把Telnet协议挡在门外VTY只接受SSH接入。idle-timeout 10 0是10分钟无操作自动断开连接。idle-timeout这个参数很容易被忽略但实际作用很大。运维人员经常开着好几个会话有些会话挂着就忘了VTY数量是有限的空闲会话占满之后真正需要登录的时候就进不去了。而且一个长期不动的管理会话也是个安全隐患自动断开能降低被他人利用的风险。3.5 保存配置并核对关键状态配置到这里SSH的骨架已经搭好了。但如果不保存配置下一次设备重启就会全部回到出厂状态这是运维事故的高发点。[SW-DIST] save执行保存后系统会提示确认配置文件名称默认是vrpcfg.zip回车确认即可。保存完成后可以用这几条命令核对状态SW-DIST display ssh server status SW-DIST display local-user SW-DIST display current-configuration | include sshdisplay ssh server status能看到SSH服务是否启用、协议版本、端口号。display local-user能看到本地用户的权限等级和服务类型。这两条输出确认无误SSH服务端就算准备就绪了。4. 从PC到交换机远程连接实测与验证4.1 首次连接与主机指纹校验服务端配好了接下来从PC发起连接测试。用SSH客户端工具填写设备管理IP地址192.168.10.254端口22用户名admin回车后会提示确认服务器主机指纹。首次连接出现指纹确认提示是正常现象。指纹是服务器公钥的散列值它的意义是让你确认“自己连的确实是目标设备”防止中间人截胡。严谨的做法是登录到设备的Console口执行display rsa local-key-pair public之类的命令查看设备公钥再核对客户端显示的指纹。多数场景下做不到这么严格但至少应该确认指纹在多次连接中是稳定的。如果发现指纹每次都在变立刻断开连接那可能是链路被人插了设备在做代理。4.2 登录后的基本验证与状态检查登录进去之后先别急着改业务配置花一分钟确认设备状态SW-DIST display version SW-DIST display clock SW-DIST display current-configurationdisplay version确认设备型号和系统版本display clock确认设备时间。设备时间不对日志时间戳就不可信后续出故障排查时间线时会非常痛苦。如果设备时间有偏差建议后续配合NTP服务统一对时这属于规范化运维的一部分。还可以看一下当前SSH登录会话SW-DIST display ssh user-information输出里会显示当前通过SSH登录的在线用户、登录时间、来源地址。确认来源IP是运维PC的IP说明认证和网络路径都正常。4.3 连接失败排查思路与常见问题速查表这里整理一下我自己实际排查中见过最多的几类问题。第一类网络不通。现象是ping管理IP都ping不通。排查顺序在设备上执行display ip interface brief看管理IP是否已经配置到接口上确认VLANIF没有shutdown确认物理口是up状态确认PC到设备之间的路由可达。很多时候其实是上联口没放行管理VLAN或者是VLANIF没启用这种低级错误在割接现场经常出现。第二类端口通但认证失败。现象是TCP能连上但密码验证一直不过。先确认用户名密码没输错确认local-user admin service-type ssh这行在确认VTY的authentication-mode aaa在。还有一个常见坑华为VRP默认有登录失败锁定机制连续多次输错密码后账号会被锁定时长锁定期内即使密码正确也登不上。第三类提示Protocol mismatch或者连接被直接关闭。通常是VTY通道的protocol inbound没有设置成ssh只有telnet。Telnet客户端能连SSH客户端直接报协议不匹配。第四类登录之后进不了系统视图。执行system-view提示权限不足那就是本地用户等级不够检查local-user admin privilege level这行改成15即可。用一张表把常见问题对应关系列出来方便临场查阅现象可能原因首要排查命令ping不通管理IPVLANIF未启用、物理口down、路由缺失display ip interface brief端口通但认证失败密码错误、用户service-type不对、账号被锁display local-user提示协议不匹配VTY未绑定SSHdisplay user-interface vty 0 4登录后不能配置用户权限等级不足display local-user配置保存后重启丢失未执行savedisplay current-configuration会话被频繁断开idle-timeout太短、VTY被占满display ssh user-information5. 进阶加固与运维习惯别让SSH成了安全短板5.1 限制远程登录来源配置ACL访问控制SSH配置好之后还有一个必须考虑的问题谁可以登录这台设备。默认情况下只要路由可达任何来源IP都能尝试SSH登录这会引来持续不断的暴力破解。华为设备上可以用基本ACL限制VTY访问源[SW-DIST] acl 2001 [SW-DIST-acl-basic-2001] rule 5 permit source 192.168.10.0 0.0.0.255 [SW-DIST-acl-basic-2001] rule 10 deny source any [SW-DIST-acl-basic-2001] quit [SW-DIST] user-interface vty 0 4 [SW-DIST-ui-vty0-4] acl 2001 inbound [SW-DIST-ui-vty0-4] quit这段配置的效果是只允许来自192.168.10.0/24这个管理网段的流量进入VTY通道其余来源直接拒绝。注意ACL里rule 10 deny source any的语义顺序一定不能乱。ACL匹配是从第一条开始先允许管理网段再拒绝所有顺序反了会把自己也堵在外面。配置这个ACL的时候强烈建议保留一个Console会话在旁边。万一ACL规则写错把自己当前这台PC挡在外面还能通过Console改回来。这属于典型的“给自己留后路”操作。5.2 加密算法加固与带外管理对安全要求高的环境还可以进一步调整SSH的加密算法组合。华为VRP上可以通过ssh server cipher、ssh server hmac命令指定算法列表把一些已经被淘汰的弱算法去掉。不同版本命令语法略有差异配置前先查一下设备当前支持的命令格式。带外管理同样值得重视。SSH再稳定它本质上是依赖业务网络传输的带内管理。一旦上联链路拥塞、光缆被挖断SSH也会跟着失效。重要设备建议把Console口作为最后的带外管理入口保留下来平时用SSH关键时刻Console是救命通道。5.3 变更时的自我保护与操作习惯最后分享几个我自己用的操作习惯。对生产交换机做SSH相关变更前先开一个Console会话在旁边放着变更新增ACL这类可能影响登录的配置后先用另一个SSH会话测试登录确认没问题再保存配置。还有一点不要在业务高峰时间段做这种基础管理配置的变更。虽然SSH配置本身影响面不大但凡是涉及VTY、ACL、认证的变更一旦配置出错导致设备暂时不可管理影响的就是整个运维响应链条。稳妥的办法是先在维护窗口操作操作完成后同时将Console和SSH都验证一遍最后save。最后说点实在的我在实际项目里见过不少刚入行的同事把SSH配好之后从来不保存配置设备一重启就回到解放前也见过有人把管理IP和业务VLAN混在一起管理流量被业务广播风暴直接挤爆。远程连接配置本身并不难真正拉开差距的是一整套思路管理通道独立、认证方式明确、权限最小化、变更前留后路。希望这篇文章能让你少踩我踩过的坑。
阅读完成 · 觉得有帮助?
咨询建站