华为&远程登录SSH 利用ENSP模拟器怎么实现的? 命令总结在最后✍

服务端

第一步---- (可选)配置VTY用户界面的属性(通过STelnet登录)

首先主要介绍如何配置VTY用户界面的属性。
背景信息

STelnet登录受VTY用户界面的控制,配置VTY用户界面的属性可以调节STelnet登录后终端界面的显示方式。VTY用户界面的属性包括VTY用户界面的个数、连接超时时间、终端屏幕的显示行数和列数,以及历史命令缓冲区大小。
操作步骤

==配置VTY用户界面指令汇总(可选)

system-view
user-interface maximum-vty number
user-interface vty first-ui-number [ last-ui-number ]
shell
idle-timeout minutes [ seconds ]
screen-length screen-length [ temporary ]
screen-width screen-width
history-command max-size size-value

1.执行命令system-view,进入系统视图。
2.执行命令user-interface maximum-vty number,配置VTY用户界面的最大个数,VTY用户界面的最大个数决定了多少个用户可以同时通过Telnet或STelnet登录设备。
缺省情况下,VTY用户界面的最大个数为5个。
说明:
(1)当配置VTY用户界面最大个数为0时,任何用户(Telnet、SSH用户)都无法通过VTY登录到设备,Web用户也无法通过Web网管登录设备。
(2)当配置的VTY类型用户界面的最大个数小于当前在线用户的数量,系统会将目前未通过认证且占用VTY通道时间超过15秒的用户下线,新用户此时可以通过VTY登录到设备。
(3)当配置的VTY类型用户界面的最大个数大于当前最多可以登录用户的数量,就必须为新增加的用户界面配置验证方式。

3.执行命令user-interface vty first-ui-number [ last-ui-number ],进入VTY用户界面视图。
4.执行命令shell,启用VTY终端服务。
缺省情况下,所有VTY终端服务已启动。若关闭某一个VTY用户界面的终端服务,该VTY用户界面将不能再进行用户登录。
5.执行命令idle-timeout minutes [ seconds ],配置登录连接的超时时间。
在设定的时间内,如果连接始终处于空闲状态,设备将自动断开该连接,节省系统资源。
缺省情况下,超时时间为5分钟。
说明:
设置用户连接的超时时间为0或者过长会导致终端一直处于登录状态,存在安全风险,建议用户执行命令lock锁定当前连接。

6.执行命令screen-length screen-length [ temporary ],设置终端屏显的行数。
如果使用参数temporary,设置的值仅对当前登录的VTY用户界面临时生效,对下次登录,或同时在线的其他登录不产生影响。
缺省情况下,终端屏显的行数为24行。
7.执行命令screen-width screen-width,设置终端屏显的列数。
缺省情况下,终端屏显的列数为80列,每个字符为一列。
8.执行命令history-command max-size size-value,设置历史命令缓冲区的大小。
缺省情况下,用户界面历史命令缓冲区大小为10条历史命令。

第二步 ----配置VTY用户界面的认证方式(通过STelnet登录)

通过STelnet登录的用户直接受控于VTY用户界面的用户认证方式,为保证STelnet登录的安全,在登录设备前需配置认证方式。

背景信息

由于通过STelnet登录设备需配置用户界面支持的协议是SSH,因此必须设置VTY用户界面认证方式为AAA认证,否则执行命令protocol inbound ssh配置VTY用户界面所支持的协议为SSH将不能成功。
操作步骤

1.执行命令system-view,进入系统视图。
2.执行命令user-interface vty first-ui-number [ last-ui-number ],进入VTY用户界面视图。
3.执行命令authentication-mode aaa,设置用户认证方式为AAA认证。
(可选)执行命令authentication-domain domain-name,设置使用的认证域名称。
缺省情况下,认证域为default。当VTY用户想要更改当前使用的认证域,可以通过执行此命令进行设置。
4.执行命令protocol inbound { all | ssh },配置VTY用户界面支持SSH协议。
缺省情况下,用户界面支持的协议是SSH和Telnet。
5.执行命令quit,回到系统视图。
6.执行命令ssh user user-name authentication-type { password | rsa | password-rsa | ecc | password-ecc | all },配置SSH用户的认证方式。

<Huawei>system-view
<Huawei>sysname R1
[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
[R1]ssh user  xxx authentication-type password(需先创建一个用户)
Info: Succeeded in adding a new SSH user

第三步配置SSH用户

SSH用户用于STelnet登录,在配置VTY用户界面的认证方式为AAA基础上,还需要配置SSH用户的认证方式。
背景信息

SSH用户支持Password、RSA、ECC、Password-RSA、Password-ECC和ALL认证方式。

Password认证:是一种基于“用户名+口令”的认证方式。通过AAA为每个SSH用户配置相应的密码,在通过SSH登录时,输入正确的用户名和密码就可以实现登录。
RSA(Rivest-Shamir-Adleman Algorithm)认证:是一种基于客户端私钥的认证方式。RSA是一种公开密钥加密体系,基于非对称加密算法。RSA密钥也是由公钥和私钥两部分组成,在配置时需要将客户端生成的RSA密钥中的公钥部分拷贝输入至服务器中,服务器用此公钥对数据进行加密。设备作为SSH客户端最多存储20个密钥。
ECC(Elliptic Curves Cryptography)认证:是一种椭圆曲线算法,与RSA相比,在相同安全性能下密钥长度短、计算量小、处理速度快、存储空间小、带宽要求低。
Password-RSA认证:SSH服务器对登录的用户同时进行密码认证和RSA认证,只有当两者同时满足情况下,才能认证通过。
Password-ECC认证:SSH服务器对登录的用户同时进行密码认证和ECC认证,只有当两者同时满足情况下,才能认证通过。
ALL认证:SSH服务器对登录的用户进行RSA认证、ECC认证或密码认证,只要满足其中任何一个,就能认证通过。

操作步骤

1.执行命令system-view,进入系统视图。
配置AAA用户信息。
2.执行命令aaa,进入AAA视图。
3.执行命令local-user user-name password { cipher | irreversible-cipher } password,创建本地用户,并配置对应的登录密码。
4.执行命令local-user user-name privilege level level,配置本地用户级别。
5.执行命令local-user user-name service-type ssh,配置本地用户的服务类型。
6.执行命令quit,回到系统视图。
7.执行命令ssh user user-name authentication-type { password | rsa | password-rsa | ecc | password-ecc | all },配置SSH用户的认证方式。
当用户使用Password认证方式时,SSH用户是与AAA视图下配置的本地用户同名的用户。
当用户使用RSA或ECC认证方式时,需要在SSH服务器上输入SSH客户端生成的密钥中的公钥部分。这样当客户端登录服务器时,自己的私钥如果与输入的公钥匹配成功,则认证通过。

说明:

当认证方式为RSA或ECC时,使用的用户级别以VTY下设置的为准。
执行命令rsa peer-public-key key-name或ecc peer-public-key key-name,进入RSA或ECC公共密钥视图。
执行命令public-key-code begin,进入公共密钥编辑视图。
输入客户端密钥的公钥部分。
输入的公钥必须是按公钥格式编码的十六进制字符串,由支持SSH的客户端软件生成。具体操作请参见相应的SSH客户端软件的帮助文档。
执行命令public-key-code end,退出公共密钥编辑视图。
执行命令peer-public-key end,退出公共密钥视图,回到系统视图。
*
执行命令ssh user user-name assign { rsa-key | ecc-key } key-name,为SSH用户分配RSA或ECC公钥。当客户端登录服务器时,按提示输入与自己公钥对应的SSH用户名。
当用户使用Password-RSA或Password-ECC认证时,需同时配置AAA用户信息和输入客户端公钥,即以上两部分操作都需要进行。
当用户使用ALL认证时,对于配置AAA用户信息和输入客户端公钥,可以随意选择其中一种,也可以两种方式都选择。
**

<R1>system-view 
Enter system view, return user view with Ctrl+Z.
[R1]aaa
[R1-aaa]local-user xxx  password cipher  cisco
Info: Add a new user.
[R1-aaa]local-user xxx privilege level 3
[R1-aaa]local-user xxx service-type ssh
[R1-aaa]quit
[R1]ssh user xxx authentication-type password 


第四步----配置VTY用户界面的用户级别(通过STelnet登录)

介绍VTY用户界面的用户级别配置方法。
背景信息

用户可以配置用户级别,实现对不同用户访问设备权限的限制,增加设备管理的安全性。
用户的级别分为16个级别,级别标识为0~15,标识越高则级别越高。
用户的级别和命令的级别是相对应的,即用户只能使用等于或低于自己级别的命令。用户级别和命令级别对应关系如表1所示。
在这里插入图片描述
操作步骤
当用户使用Password认证方式时,用户优先级为AAA中设置的用户优先级。

1.执行命令system-view,进入系统视图。
2.执行命令aaa,进入AAA视图
3.执行命令local-user user-name privilege level level,配置本地用户级别。
4.执行命令quit,回到系统视图。(当用户使用RSA或ECC认证方式时,用户的优先级由用户接入时所采用的VTY界面的优先级决定。)
5.执行命令system-view,进入系统视图。
6.执行命令user-interface vty first-ui-number [ last-ui-number ],进入VTY用户界面视图。
7.执行命令user privilege level level,配置VTY用户界面的用户级别。(缺省情况下,VTY用户界面的用户级别为0)
<R1>system-view 
Enter system view, return user view with Ctrl+Z.
[R1]aaa
[R1-aaa]local-user xxx privilege level 3
[R1-aaa]quit
[R1]user-interface vty 0 4	
[R1-ui-vty0-4]user privilege level 3

说明:
如果SSH用户认证方式为all认证,且存在一个同名AAA用户,那通过Password认证、RSA和ECC认证接入时用户优先级可能不同,请根据需要进行部署。
如果用户界面下配置的命令级别访问权限与用户名本身对应的操作权限冲突,以用户名本身对应的级别为准。

第五步---- 配置SSH服务器功能

用户终端通过SSH登录设备之前,必须通过其它方式登录设备,开启设备的SSH服务器功能。

  • 了解内容

设备作为SSH服务器,须生成与客户端密钥同类型的密钥对,用于数据加密,也可用于客户端对服务器的认证。设备还支持配置多种SSH服务器属性,用于更灵活地控制SSH登录。

操作步骤

**<R1>system-view** 
Enter system view, return user view with Ctrl+Z.	
**[R1]stelnet server enable** 
Info: Succeeded in starting the Stelnet server.
**[R1]rsa local-key-pair create** 
The key name will be: R1_Host
The range of public key size is (512 ~ 2048). 
NOTES: If the key modulus is greater than 512, 
       it will take a few minutes.
**Input the bits in the modulus[default = 512]:513**
Generating keys...
.++++++++++++
..................................++++++++++++
.++++++++
........++++++++
[R1]
1.执行命令system-view,进入系统视图。
2.执行命令stelnet server enable,使能设备的SSH服务器功能。缺省情况下,设备的SSH服务器功能没有使能。

3.(可选)执行命令ssh server cipher { 3des_cbc | aes128_cbc | aes128_ctr | aes192_ctr | aes256_ctr | blowfish_cbc | des_cbc }*,配置SSH服务器上的加密算法列表。
缺省情况下,除des_cbc外其余算法均在SSH服务器的加密算法列表中。
在客户端与服务器协商的过程中,会对两者之间报文传输的加密算法进行协商,执行此步骤可以配置SSH服务器端的加密算法列表。服务器端根据客户端发过来的加密算法列表与自身的加密算法列表进行对比,选择客户端与自己相匹配的第一个加密算法作为报文传输的加密算法,如果客户端的加密算法列表与服务器端的加密算法列表没有相匹配的算法,则协商失败。
说明:
3des_cbc、aes128_cbc、blowfish_cbc和des_cbc为弱安全的加密算法,建议不配置到SSH服务器的加密算法列表中

4.(可选)执行命令ssh server hmac { md5 | md5_96 | sha1 | sha1_96 | sha2_256 | sha2_256_96 }*,配置SSH服务器上的校验算法列表。
缺省情况下,SSH服务器支持所有的校验算法。
在客户端与服务器协商的过程中,会对两者之间报文传输的校验算法进行协商,执行此步骤可以配置SSH服务器端的校验算法列表。服务器端根据客户端发过来的校验算法列表与自身的校验算法列表进行对比,选择客户端与自己相匹配的第一个校验算法作为报文传输的校验算法,如果客户端的校验算法列表与服务器端的校验算法列表没有相匹配的算法,则协商失败。
说明:
sha2_256_96、sha1、sha1_96、md5和md5_96为弱安全的HMAC校验算法,建议不配置到SSH服务器的HMAC校验算法列表中。

5.(可选)执行命令ssh server key-exchange { dh_group_exchange_sha1 | dh_group1_sha1 } *,配置SSH服务器上的密钥交换算法列表。
缺省情况下,SSH服务器支持所有的密钥交换算法。
在客户端与服务器协商的过程中,会对两者之间报文传输的密钥交换算法进行协商,执行此步骤可以配置SSH服务器端的密钥交换算法列表。服务器端根据客户端发过来的密钥交换算法列表与自身的密钥交换算法列表进行对比,选择客户端与自己相匹配的第一个密钥交换算法作为报文传输的密钥交换算法,如果客户端的密钥交换算法列表与服务器端的密钥交换算法列表没有相匹配的算法,则协商失败。
说明:
dh_group1_sha1为弱安全的密钥交换算法,建议不配置到SSH服务器的密钥交换算法列表中。

6.执行命令rsa local-key-pair create或ecc local-key-pair create,生成本地RSA或ECC密钥对。

说明:
密钥对长度越大,密钥对安全性就越好,建议使用最大的密钥对长度。

7.(可选)执行命令ssh server port port-number,配置SSH服务器端口号。
缺省情况下,SSH服务器端的端口号是22。
为SSH服务器配置新的端口号,可以有效防止攻击者对SSH服务标准端口的恶意访问,确保安全性。
8.(可选)执行命令ssh server rekey-interval hours,配置密钥对更新时间。
缺省情况下,SSH服务器密钥对的更新时间间隔是0,表示永不更新。
配置服务器密钥对更新时间,使得当SSH服务器的更新周期到达时,自动更新服务器密钥对,从而可以保证安全性。
9.(可选)执行命令ssh server timeout seconds,配置SSH认证超时时间。
缺省情况下,SSH连接认证超时时间是60秒。
当设置的SSH认证超时时间到达后,如果用户还未登录成功,则终止当前连接,确保了安全性。
10.(可选)执行命令ssh server authentication-retries times,配置SSH认证重试次数。
缺省情况下,SSH连接的认证重试次数是3。
配置SSH认证重试次数用来设置SSH用户请求连接的认证重试次数,防止非法用户登录。
11.(可选)执行命令ssh server compatible-ssh1x enable,使能兼容低版本SSH协议。
缺省情况下,空配置设备SSH服务器兼容低版本功能处于未使能状态;由低版本升级到高版本的设备,SSH服务器兼容低版本功能与配置文件中的配置保持一致。
说明:
如果SSH服务器使能兼容低版本功能,系统会提示存在安全风险。

12.(可选)执行命令ssh server-source { -a [ ipv6 ] source-ip-address | -i [ ipv6 ] interface-type interface-number },配置SSH服务器的源接口。
缺省情况下,未指定SSH服务器的源接口。
如果没有指定服务器发送报文的源地址,设备将采用路由决定的源地址进行通信。配置源地址需要选择设备上状态稳定的接口,如Loopback接口。指定SSH服务器的源接口前,需保证客户端到该源接口地址路由可达,否则会导致本配置无法成功执行。
13.(可选)执行命令ssh server permit interface { interface-type interface-number } &<1-5>,配置SSH服务器允许客户端通过合法的物理接口连接。
缺省情况下,SSH服务器允许客户端通过所有物理接口连接。
为了防止客户端通过非法物理接口连接SSH服务器,可以使用此命令限制SSH服务器上允许客户端连接的物理接口。

在客户端进行测试
[R2]ssh client first-time enable
在这里插入图片描述
在这里插入图片描述
表示成功

命令总体如下:
服务器端必要指令:

 <Huawei>system-view
    <Huawei>sysname R1
    [R1]aaa
    [R1-aaa]local-user xxx  password cipher  cisco
    *Info: Add a new user.*
    [R1-aaa]local-user xxx privilege level 3
    [R1-aaa]local-user xxx service-type ssh
    [R1]user-interface vty 0 4 	
    [R1-ui-vty0-4]authentication-mode aaa
    [R1-ui-vty0-4]protocol inbound ssh
    [R1-ui-vty0-4]user privilege level 3
    [R1-ui-vty0-4]quit
    [R1]ssh user  xxx authentication-type password
    *Info: Succeeded in adding a new SSH user*
[R1]stelnet server enable
*Info: Succeeded in starting the Stelnet server.*
[R1]rsa local-key-pair create
*The key name will be: Host
% RSA keys defined for Host already exist.
Confirm to replace them? (y/n)[n]:y
The range of public key size is (512 ~ 2048).
NOTES: If the key modulus is greater than 512,
       It will take a few minutes.*
Input the bits in the modulus[default = 512]:2048
Generating keys...
............+++
...........................+++
.....................................++++++++
....++++++++
[R1]

客户端

[R2]ssh client first-time enable 
[R2]stelnet 10.1.1.1
  • 15
    点赞
  • 69
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值