网络自动化运维 Help

3-1 SSH协议

介绍

SSH: (Secure Shell Protocol,缩写SSH)安全外壳协议,是一种加密的网络传输协议,可在不安全的网络中为网络服务提供安全的传输环境。 SSH通过在网络中建立安全隧道来实现SSH客户端与服务器之间的连接。SSH最常见的用途是远程登录系统,人们通常利用SSH来传输命令行界面和远程执行命令。 SSH恐怕是除了HTTP协议(也就是网页www.abc.com)之外见的最多的协议,每远程连接一台Linux服务器或网络设备,都需要通过SSH协议进行连接。后面每章,几乎都是先通过SSH连上,再安装另一种功能的协议,或是在库中集成了包含SSH功能的依赖库。

密码学

SSH协议基于非对称加密。
明文:加密前的信息。
对称加密:'a' ➡️ '1', 'b' ➡️ '2', 以此类推,那么'ab'➡️'12'。在知道加密规则的情况下,密文'12'可以反推出明文'ab'。
对称加密的缺点:截获到密文后,可以尝试穷举加密规则破解出明文。
非对称加密:有一类算法正推容易反推难,例如10%3=1,13%3=1,当得知结果余数1和除数3时,仍然不知道被除数是7还是10还是13。又为了在保证安全的同时,保持方便,因此非对称加密设计成了密钥对儿的形式。
非对称加密的优点:即使信息传输过程中被黑客截获,看到的也只是密文,并且几乎不可能暴力破解私钥。

信息接收方产生公钥public key与私钥secret key,公钥可以给任何人,私钥自己保存; 信息发送方将要发送的信息message与公钥pk一起用特定的加密算法加密,即密文; 信息接收方接收到密文,与私钥sk一起用特定解密算法恢复明文。
知名的加密算法有RSA、DES、HASH摘要、ECC椭圆曲线。

3 1ssh

确定S5700已配置IP和与物理机连通

快速重复2-1节的S5700配置IP和Cloud与物理机通讯实验。

或直接下载eNSP工程导入:
解压缩老师分发的eNSP工程zip压缩包,eNSP界面左上角/打开/选择工程文件入口文件.topo后缀的文件。

⏬下载地址: eNSP工程-unit2-S5700与物理机通讯后.zip

验证:

ping 192.168.56.100

S5700配置SSH服务

  1. 进入aaa模式(Authentication认证、Authorization授权、Accounting计费),新建
    本地用户 zhangsan ,密码 Huawei@123
    aaa模式专门负责用户创建、鉴权。
    password simple 明文密码;
    password cipher密文密码,即使找到配置文件看到的密码也是加密后的。
    密码在一些实验中要求满足复杂度要求(10位、大小写字母、特殊字符、数字)。

  2. 开启stelnet服务。
    stelnet是telnet的传输加密改进版,就像http+ssl=https。

  3. 添加本地用户进SSH授权用户列表,指定连接模式为 密码模式
    另一种是不需要密码但需要生成密钥对儿文件的 公私钥模式 ,为了实验简单采取密码模式。

  4. 配置用户伪终端界面,指定通过ssh协议连接设备端。

  5. 验证ssh服务状态,验证zhangsan用户状态。

命令一览:
后面章节会经常重复这部分操作,因为要先连接服务器再干其它事情。

<Huawei>system-view [Huawei]undo info-center enable [Huawei]aaa [Huawei-aaa]local-user zhangsan password cipher Huawei@123 [Huawei-aaa]local-user zhangsan service-type ssh [Huawei-aaa]quit [Huawei]stelnet server enable [Huawei]ssh user zhangsan authentication-type password [Huawei]ssh user zhangsan service-type stelnet [Huawei]user-interface vty 0 4 [Huawei-ui-vty0-4]authentication-mode aaa [Huawei-ui-vty0-4]user privilege level 15 [Huawei-ui-vty0-4]protocol inbound ssh [Huawei-ui-vty0-4]quit [Huawei]display ssh server status [Huawei]display ssh user-information zhangsan

下面为包含回显信息的命令过程,代码跟上面一样:

<Huawei>system-view Enter system view, return user view with Ctrl+Z. [Huawei]stelnet server enable Info: Succeeded in starting the Stelnet server. [Huawei] Mar 2 2025 11:40:49-08:00 Huawei DS/4/DATASYNC_CFGCHANGE:OID 1.3.6.1.4.1.2011.5 .25.191.3.1 configurations have been changed. The current change number is 1, th e change loop count is 0, and the maximum number of records is 4095. [Huawei]aaa [Huawei-aaa]local-user zhangsan password cipher Huawei@123 Info: Add a new user. [Huawei-aaa]local-user zhangsan service-type ssh [Huawei-aaa]quit [Huawei]ssh user zhangsan authentication-type password [Huawei]ssh user zhangsan service-type stelnet Info: Succeeded in adding a new SSH user. [Huawei]user-interface vty 0 4 [Huawei-ui-vty0-4]authentication-mode aaa [Huawei-ui-vty0-4]user privilege level 15 [Huawei-ui-vty0-4]protocol inbound ssh [Huawei-ui-vty0-4]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 Scp server :Disable

课外

转自 bilibili

课外练习

  1. 体验通过SSL连接Linux系统。大多完整版的linux系统已自带ssh并默认开启状态和允许普通用户连接。使用Putty和普通用户名、密码连接Ubuntu/CentOS系统。
    修改配置以允许root用户登录。

  2. 在linux虚拟机中使用sshkey-gen命令生成密钥对,复制粘贴私钥文件到物理机,putty客户端使用私钥登录服务器。

26 五月 2025