选择区域语言: EN CN HK

10-安全配置举例

04-H3C S12500 SSH典型配置举例

本章节下载  (526.54 KB)

docurl=/cn/Service/Document_Software/Document_Center/Switches/Catalog/S12500/S12500/Configure/Typical_Configuration_Example/H3C_S12500-R1825P01-6W100/10/201308/794674_30005_0.htm

04-H3C S12500 SSH典型配置举例

H3C S12500 SSH配置举例

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Copyright © 2013 杭州华三通信技术有限公司 版权所有,保留一切权利。

非经本公司书面许可,任何单位和个人不得擅自摘抄、复制本文档内容的部分或全部,

并不得以任何形式传播。本文档中的信息可能变动,恕不另行通知。

H3C_彩色.emf



1  简介

本文档介绍了SSH的配置举例。

SSH是Secure Shell(安全外壳)的简称,是一种在不安全的网络环境中,通过加密机制和认证机制,实现安全的远程访问以及文件传输等业务的网络安全协议。设备作为SSH服务器时,支持SSH2和SSH1两个版本;设备作为SSH客户端时,只支持SSH2版本。

本文档介绍了两种SSH应用:Stelnet (Secure Telnet)和SFTP(Secure FTP)。

设备作为SSH服务器可提供以下四种对客户端的认证方式:

·     password认证:利用AAA对客户端身份进行认证。

·     publickey认证:采用数字签名的方式来认证客户端。

·     password-publickey认证:对于SSH2版本的客户端,要求同时进行password和publickey两种方式的认证;对于SSH1版本的客户端,只要通过其中任意一种认证即可。

·     any认证:不指定客户端的认证方式,客户端可采用password认证或publickey认证,且只要通过其中任何一种认证即可。

2  配置前提

本文档中的配置均是在实验室环境下进行的配置和验证,配置前设备的所有参数均采用出厂时的缺省配置。如果您已经对设备进行了配置,为了保证配置效果,请确认现有配置和以下举例中的配置不冲突。

本文假设您已了解SSH特性。

3  设备作为Stelnet服务器配置举例(password认证)

3.1  组网需求

图1所示,Host(Stelnet客户端)与Switch(Stelnet服务器)建立本地连接。要求:Switch采用本地password认证的方式认证用户,Host采用SSH协议登录到Switch上,以保证数据信息交换的安全。登录用户名为client001,密码为aabbcc,用户登录设备后可以正常使用所有命令。

图1 设备作为服务器配置组网图

 

3.2  配置思路

·     因为采用本地认证的方式认证用户,所以只需在本地服务器Switch上创建相应的本地用户,并在本地用户视图下配置密码,而不需要创建SSH用户。

·     对于本地password认证,SSH用户登录后所能操作的命令权限由本地用户的级别决定。因为SSH用户登录设备后要能正常使用所有命令,所以将用户级别设置为3(管理级),缺省情况下本地用户的级别为0(访问级)。

3.3  使用版本

本举例是在S12500-CMW520-R1825P01版本上进行配置和验证的。

3.4  配置注意事项

·     SSH用户登录的用户界面的认证方式必须配置为scheme方式。

·     为了保证SSH的版本协商和算法协商过程正常运行,请在服务器端配置生成RSA和DSA密钥对。

3.5  配置步骤

3.5.1  配置服务器

# 生成RSA及DSA密钥对,并启动SSH服务器。

<Switch> system-view

[Switch] public-key local create rsa

[Switch] public-key local create dsa

[Switch] ssh server enable

# 配置VLAN接口1的IP地址,客户端将通过该地址连接SSH服务器。

[Switch] interface vlan-interface 1

[Switch-Vlan-interface1] undo shutdown

[Switch-Vlan-interface1] ip address 192.168.1.40 255.255.255.0

[Switch-Vlan-interface1] quit

# 设置SSH客户端登录用户界面的认证方式为scheme认证。

[Switch] user-interface vty 0 15

[Switch-ui-vty0-15] authentication-mode scheme

[Switch-ui-vty0-15] protocol inbound ssh

[Switch-ui-vty0-15] quit

# 创建本地用户client001,并设置用户的密码、服务类型和权限级别。

[Switch] local-user client001

[Switch-luser-client001] password simple aabbcc

[Switch-luser-client001] service-type ssh

[Switch-luser-client001] authorization-attribute level 3

[Switch-luser-client001] quit

3.5.2  配置客户端

说明

SSH客户端软件有很多,例如PuTTY、OpenSSH等。本文中仅以客户端软件PuTTY0.58为例,说明SSH客户端的配置方法。

 

# 打开PuTTY.exe程序,出现如图2所示的客户端配置界面。在“Host Name(or IP address)”文本框中输入SSH服务器的IP地址为192.168.1.40。

图2 SSH客户端配置界面

 

# 在图2中,单击<Open>按钮。按提示输入用户名client001及密码aabbcc,即可进入Switch的配置界面。

3.6  验证配置

在Host上的SSH客户端输入正确的用户名和密码后,可以登录Switch,而且用户级别为3。

3.7  配置文件

#

local-user client001

 password cipher $c$3$o71Exx1XIKs9gJoxqSodHGl1uT9rlZEd4w==

 authorization-attribute level 3

 service-type ssh

#

interface Vlan-interface1

 ip address 192.168.1.40 255.255.255.0

#

ssh server enable

ssh user client001 service-type stelnet authentication-type password

#

user-interface vty 0 15

 authentication-mode scheme

protocol inbound ssh

#

4  设备作为Stelnet服务器配置举例(publickey认证)

4.1  组网需求

图3所示,Host(Stelnet客户端)与Switch(Stelnet服务器)建立本地连接。要求:Host采用SSH协议登录到Switch上,以保证数据信息交换的安全。SSH用户采用的认证方式为publickey认证,公钥算法为RSA,登录用户名为client002,用户登录设备后可以正常使用所有命令。

图3 设备作为服务器配置组网图

 

4.2  配置思路

·     服务器在采用publickey方式验证客户端身份时,首先要比较客户端发送的SSH用户名、主机公钥是否与本地配置的SSH用户名以及相应的客户端主机公钥一致,在确认用户名和客户端主机公钥正确后,再利用数字签名对客户端进行验证,而该签名是客户端利用主机公钥对应的私钥计算出的。因此,需要在服务器端配置客户端的RSA主机公钥,并在客户端为该SSH用户指定与主机公钥对应的RSA主机私钥。

·     服务器端可以通过手工配置和从公钥文件中导入两种方式来配置客户端的公钥。由于手工配置客户端的公钥时,输入的公钥必须满足一定的格式要求,否则会致客户端公钥保存失败。因此,建议选用从公钥文件导入的方式配置客户端公钥(本例即用此方式)。

·     publickey认证方式下,SSH用户登录后所能操作的命令权限由登录用户界面下user privilege level 命令配置的级别决定,因为SSH用户登录设备后要能正常使用所有命令,所以要将用户级别设置为3(管理级)。缺省为0(访问级)。

4.3  使用版本

本举例是在S12500-CMW520-R1825P01版本上进行配置和验证的。

4.4  配置注意事项

·     SSH用户登录的用户界面的认证方式必须配置为scheme方式。

·     如果SSH服务器采用publickey方式认证客户端,必须在服务器上创建相应的SSH用户。

·     虽然一个客户端只会采用DSA和RSA公钥算法中的一种来认证服务器,但是由于不同客户端支持的公钥算法不同,为了确保客户端能够成功登录服务器,建议在服务器上同时生成DSA和RSA两种密钥对。

4.5  配置步骤

4.5.1  配置服务器

# 生成RSA及DSA密钥对,并启动SSH服务器。

<Switch> system-view

[Switch] public-key local create rsa

[Switch] public-key local create dsa

[Switch] ssh server enable

# 配置VLAN接口1的IP地址,客户端将通过该地址连接SSH服务器。

[Switch] interface vlan-interface 1

[Switch-Vlan-interface1] undo shutdown

[Switch-Vlan-interface1] ip address 192.168.1.40 255.255.255.0

[Switch-Vlan-interface1] quit

# 设置登录用户界面的认证方式为scheme。

[Switch] user-interface vty 0 15

[Switch-ui-vty0-15] authentication-mode scheme

# 设置Switch上远程用户登录协议为SSH。

[Switch-ui-vty0-15] protocol inbound ssh

# 设置用户的权限级别为3(缺省级别为0)。

[Switch-ui-vty0-15] user privilege level 3

[Switch-ui-vty0-15] quit

说明

这里需要先在SSH客户端使用SSH客户端软件生成RSA密钥对,将生成的RSA公钥保存到指定文件中,并将此公钥文件通过FTP/TFTP方式上传到服务器端,文件名为key.pub。相关配置请参见客户端的配置。

 

# 从文件key.pub中导入远端的公钥,并命名为Switch001。

[Switch] public-key peer Switch001 import sshkey key.pub

# 设置SSH用户client002的认证方式为publickey,并指定公钥为Switch001。

[Switch] ssh user client002 service-type stelnet authentication-type publickey assign publickey Switch001

4.5.2   配置客户端

# 在客户端运行PuTTYGen.exe,在参数栏中选择“SSH-2 RSA”,点击<Generate>,产生客户端密钥对。

图4 生成客户端密钥(1)

 

# 在产生密钥对的过程中需不停的移动鼠标,鼠标移动仅限于图5蓝色框中除绿色标记进程条外的地方,否则进程条的显示会不动,密钥对将停止产生,见图5

图5 生成客户端密钥

 

# 密钥对产生后,点击<Save public key>,输入存储公钥的文件名key.pub,点击<保存>按钮。

图6 生成客户端密钥(3)

 

# 点击<Save private key>存储私钥,弹出警告框,提醒是否保存没做任何保护措施的私钥,点击<Yes>,输入私钥文件名为private,点击保存。

图7 生成客户端密钥(4)

 

说明

客户端生成密钥对后,需要将保存的公钥文件通过FTP/TFTP方式上传到服务器,并完成服务器的配置(请参见4.5.1  配置服务器)后,才可继续客户端的配置。

 

4.5.3  客户端建立与服务器的连接

# 打开PuTTY.exe程序,出现如图8所示的客户端配置界面。在“Host Name(or IP address)”文本框中输入SSH服务器的IP地址为192.168.1.40。

图8 SSH客户端配置界面(1)

 

# 单击左侧导航栏“SSH”下面的“Auth”(认证),出现如图9的界面。单击<Browse…>按钮,弹出文件选择窗口。选择与配置到服务器端的公钥对应的私钥文件private。

图9 SSH客户端配置界面(2)

 

# 如图9,单击<Open>按钮。按提示输入用户名client002,即可进入Switch的配置界面。

4.6  验证配置

Host端使用PuTTYGen,输入用户名client002后可登录Switch。

4.7  配置文件

#

interface Vlan-interface1

 ip address 192.168.1.40 255.255.255.0

#

ssh server enable

ssh user client002 service-type stelnet authentication-type publickey assign publickey Switch001

#

user-interface vty 0 15

 authentication-mode scheme

 user privilege level 3

protocol inbound ssh

#

5  设备作为Stelnet客户端配置举例(password认证)

5.1  组网需求

图10所示,Switch A作为客户端,采用SSH协议登录到Switch B上。要求:Switch B采用本地password认证的方式认证用户,登录用户名为client001,密码为aabbcc,用户登录设备后可以正常使用所有命令。为保证服务器的合法性,配置客户端Switch A不支持首次认证。

图10 设备作为SSH客户端配置组网图

 

5.2  配置思路

·     因为采用本地认证的方式认证用户,所以只需在本地服务器Switch B上创建相应的本地用户,并在本地用户视图下配置密码,而不需要创建SSH用户。

·     对于本地password认证,SSH用户登录后所能操作的命令权限由本地用户的级别决定。因为SSH用户登录设备后要能正常使用所有命令,所以将用户级别设置为3(管理级),缺省情况下本地用户的级别为0(访问级)。

·     因为客户端Switch A不支持首次认证,所以需要先将服务器Switch B的主机公钥配置在客户端Switch A上,同时指定要连接的服务器Switch B的主机公钥名称,此时客户端Switch A才可与服务器Switch B建立连接。

5.3  使用版本

本举例是在S12500-CMW520-R1825P01版本上进行配置和验证的。

5.4  配置注意事项

·     SSH用户登录的用户界面的认证方式必须配置为scheme方式。

·     为了保证SSH的版本协商和算法协商过程正常运行,请在服务器端配置生成RSA和DSA密钥对。

5.5  配置步骤

5.5.1  配置服务器

服务端的配置参见设备作为Stelnet服务器配置举例(password认证)

5.5.2  配置客户端

# 配置VLAN接口1的IP地址。

<SwitchA> system-view

[SwitchA] interface vlan-interface 1

[SwitchA-Vlan-interface1] undo shutdown

[SwitchA-Vlan-interface1] ip address 10.165.87.137 255.255.255.0

[SwitchA-Vlan-interface1] quit

[SwitchA] quit

# 配置客户端对服务器不进行首次认证。

[SwitchA] undo ssh client first-time

# 在服务器端通过display public-key local dsa public命令显示的公钥内容。在客户端配置SSH服务器端的主机公钥。

[SwitchA]public-key peer key1                                                      

Public key view: return to System View with "peer-public-key end".             

[SwitchA-pkey-public-key]public-key-code begin                                     

Public key code view: return to last view with "public-key-code end".          

[SwitchA-pkey-key-code]308201B73082012C06072A8648CE3804013082011F02818100D757262C458

4C44C211F18BD96E5F061C4F0A423F7FE6B6B85B34CEF72CE14A0D3A5222FE08CECE65B        

[SwitchA-pkey-key-code]E6C265854889DC1EDBD13EC8B274DA9F75BA26CCB987723602787E922BA84

421F22C3C89CB9B06FD60FE01941DDD77FE6B12893DA76EEBC1D128D97F0678D7722B53        

[SwitchA-pkey-key-code]41C8506F358214B16A2FAC4B368950387811C7DA33021500C773218C737EC

8EE993B4F2DED30F48EDACE915F0281810082269009E14EC474BAF2932E69D3B1F18517        

[SwitchA-pkey-key-code]AD9594184CCDFCEAE96EC4D5EF93133E84B47093C52B20CD35D02492B3959

EC6499625BC4FA5082E22C5B374E16DD00132CE71B020217091AC717B612391C76C1FB2        

[SwitchA-pkey-key-code]E88317C1BD8171D41ECB83E210C03CC9B32E810561C21621C73D6DAAC028F

4B1585DA7F42519718CC9B09EEF038184000281804F123E6FB60EAAD74E169155138806        

[SwitchA-pkey-key-code]388DFE92F205416AF7071A1BCD07DBEE2F84FEDC92FFFBF24051DB613B125

B001C2C52D3EA3082FECA02135BE9CBE9F383389FC92B472B08621ED85654FB5A11187F        

[SwitchA-pkey-key-code]5E384A2E6BE82EFDCF089CCA8632229E4EF50F22206EF5BED7EBD2784C6FB

3A036DB68CB84FCAFACB75A3A3845FAB7                                               

[SwitchA-pkey-key-code]public-key-code end                                         

[SwitchA-pkey-public-key]peer-public-key end      

# 指定服务器10.165.87.136对应的主机公钥名称为key1。

[SwitchA] ssh client authentication server 10.165.87.136 assign publickey key1

[SwitchA] quit

# 建立到服务器10.165.87.136的SSH连接。

<SwitchA> ssh2 10.165.87.136

Username: client001

Trying 10.165.87.136

Press CTRL+K to abort

Connected to 10.165.87.136...

Enter password:

5.6  验证配置

# 在Switch A上运行如下命令:

<SwitchA> ssh2 10.165.87.136

输入正确的用户名和密码之后,即可成功登录到Switch B上。

5.7  配置文件

·     SwitchA

#

vlan 1

#

interface Vlan-interface1

ip address 10.165.87.137 255.255.255.0

#   

·     SwitchB

#

vlan 1

#

local-user client001

 password cipher $c$3$o71Exx1XIKs9gJoxqSodHGl1uT9rlZEd4w==

 authorization-attribute level 3

 service-type ssh

#

interface Vlan-interface1

 ip address 10.165.87.136 255.255.255.0

#

ssh server enable

ssh user client001 service-type stelnet authentication-type password

#

user-interface vty 0 15

 authentication-mode scheme

protocol inbound ssh

#

6  设备作为Stelnet客户端配置举例(publickey认证)

6.1  组网需求

图11所示,Switch A采用SSH协议登录到Switch B上。要求:SSH用户采用的认证方式为publickey认证,公钥算法为RSA,登录用户名为client002,用户登录设备后可以正常使用所有命令。

图11 设备作为SSH客户端配置组网图

 

6.2  配置思路

·     服务器在采用publickey方式验证客户端身份时,首先要比较客户端发送的SSH用户名、主机公钥是否与本地配置的SSH用户名以及相应的客户端主机公钥一致,在确认用户名和客户端主机公钥正确后,再对客户端发送的数字签名进行验证,而该签名是客户端利用主机公钥对应的私钥计算出的。因此,需要在服务器端配置客户端的RSA主机公钥,并在客户端为该SSH用户指定与主机公钥对应的RSA主机私钥(在向服务器发起连接时通过identity-key关键字指定公钥算法来实现)。

·     publickey认证方式下,SSH用户登录后所能操作的命令权限由登录用户界面下user privilege level 命令配置的级别决定,因为Switch A登录Switch B后要能正常使用所有命令,所以在Switch B上将用户级别设置为3(管理级)。缺省为0(访问级)。

6.3  使用版本

本举例是在S12500-CMW520-R1825P01版本上进行配置和验证的。

6.4  配置注意事项

·     SSH用户登录的用户界面的认证方式必须配置为scheme方式。

·     如果SSH服务器采用publickey方式认证客户端,必须在服务器上创建相应的SSH用户。

·     虽然一个客户端只会采用DSA和RSA公钥算法中的一种来认证服务器,但是由于不同客户端支持的公钥算法不同,为了确保客户端能够成功登录服务器,建议在服务器上同时生成DSA和RSA两种密钥对。

6.5  配置步骤

6.5.1  配置服务器

服务端的配置参见设备作为Stelnet服务器配置举例(publickey认证)

6.5.2  配置客户端

# 配置VLAN接口1的IP地址。

<SwitchA> system-view

[SwitchA] interface vlan-interface 1

[SwitchA-Vlan-interface1] undo shutdown

[SwitchA-Vlan-interface1] ip address 10.165.87.137 255.255.255.0

[SwitchA-Vlan-interface1] quit

# 生成RSA密钥对。

[SwitchA] public-key local create rsa

# 将生成的RSA主机公钥导出到指定文件key.pub中。

[SwitchA] public-key local export rsa ssh2 key.pub

[SwitchA] quit

说明

客户端生成密钥对后,需要将保存的公钥文件通过FTP/TFTP方式上传到服务器,并完成服务器的配置(请参见6.5.1  配置服务器)后,才可继续客户端的配置。

 

# 建立到服务器10.165.87.136的SSH连接。

<SwitchA> ssh2 10.165.87.136 identity-key rsa

Username: client002

Trying 10.165.87.136 ...

Press CTRL+K to abort

Connected to 10.165.87.136 ...

 

The Server is not authenticated. Continue? [Y/N]:y

Do you want to save the server public key? [Y/N]:n

6.6  验证配置

# 在Switch A上运行如下命令,输入正确的用户名后即可成功登录到Switch B上。

<SwitchA> ssh2 10.165.87.136 identity-key rsa

6.7  配置文件

·     SwitchA

#

vlan 1

#

interface Vlan-interface1

ip address 10.165.87.137 255.255.255.0

#   

·     SwitchB

#

interface Vlan-interface1

 ip address 10.165.87.136 255.255.255.0

#

ssh server enable

ssh user client001 service-type stelnet authentication-type publickey assign publickey Switch001

#

user-interface vty 0 15

 authentication-mode scheme

 user privilege level 3

protocol inbound ssh

#

7  设备作为SFTP服务器配置举例(password认证)

7.1  组网需求

图12所示,Host和Switch之间建立SSH连接,Host作为SFTP客户端登录到Switch,进行文件管理和文件传送等操作。要求:Switch采用本地password认证的方式认证用户, SSH用户的用户名为client002,密码为aabbcc,用户登录设备后可以正常使用所有命令。

图12 设备作为SFTP服务器组网图

 

7.2  配置思路

·     因为采用本地认证的方式认证用户,所以只需在本地服务器Switch上创建相应的本地用户,并在本地用户视图下配置密码,而不需要创建SSH用户。

·     对于本地password认证,SSH用户登录后所能操作的命令权限由本地用户的级别决定。因为SSH用户登录设备后要能正常使用所有命令,所以将用户级别设置为3(管理级),缺省情况下本地用户的级别为0(访问级)。

7.3  使用版本

本举例是在S12500-CMW520-R1825P01版本上进行配置和验证的。

7.4  配置注意事项

·     SSH用户登录的用户界面的认证方式必须配置为scheme方式。

·     为了保证SSH的版本协商和算法协商过程正常运行,请在服务器端配置生成RSA和DSA密钥对。

7.5  配置步骤

7.5.1  配置服务器

# 生成RSA及DSA密钥对,并启动SSH服务器。

<Switch> system-view

[Switch] public-key local create rsa

[Switch] public-key local create dsa

[Switch] ssh server enable

# 启动SFTP服务器。

[Switch] sftp server enable

# 配置VLAN接口1的IP地址,客户端将通过该地址连接SSH服务器。

[Switch] interface vlan-interface 1

[Switch-Vlan-interface1] undo shutdown

[Switch-Vlan-interface1] ip address 192.168.1.45 255.255.255.0

[Switch-Vlan-interface1] quit

# 设置SSH客户端登录用户界面的认证方式为scheme认证。

[Switch] user-interface vty 0 15

[Switch-ui-vty0-15] authentication-mode scheme

[Switch-ui-vty0-15] protocol inbound ssh

[Switch-ui-vty0-15] quit

# 创建本地用户client002,并设置用户的密码、服务类型和权限级别。

[Switch] local-user client002

[Switch-luser-client002] password simple aabbcc

[Switch-luser-client002] service-type ssh

[Switch-luser-client002] authorization-attribute level 3

[Switch-luser-client002] quit

7.5.2  配置客户端

说明

SFTP客户端软件有很多,本文中仅以客户端软件PuTTY0.58中的PSFTP为例,说明SFTP客户端的配置方法。

 

# 打开psftp.exe程序,出现如图13所示的客户端配置界面。输入如下命令:

open 192.168.1.45

# 根据提示输入用户名client002,密码aabbcc,即可登录SFTP服务器。

图13 SFTP客户端登录界面

 

7.6  验证配置

# 打开PSFTP.exe程序,运行如下命令:

open 192.168.1.45

# 如图13中客户端配置所示,输入用户名和密码后,PSFTP可以正确登录并能够执行PSFTP操作。

7.7  配置文件

客户端无配置文件,服务端配置文件如下:

#

local-user client002

 password cipher $c$3$o71Exx1XIKs9gJoxqSodHGl1uT9rlZEd4w==

 authorization-attribute level 3

 service-type ssh

#

interface Vlan-interface1

 ip address 192.168.1.45 255.255.255.0

#

ssh server enable

sftp server enable

ssh user client002 service-type sftp authentication-type password

#

user-interface vty 0 15

 authentication-mode scheme

protocol inbound ssh

#

8  设备作为SFTP客户端配置举例(publickey认证)

8.1  组网需求

图14所示,Switch A和Switch B之间建立SSH连接,Switch A登录到Switch B进行文件管理和文件传送等操作。要求:SSH用户采用的认证方式为publickey认证,公钥算法为RSA,登录用户名为client002。

图14 设备作为SFTP客户端组网图

 

8.2  配置思路

·     服务器在采用publickey方式验证客户端身份时,首先要比较客户端发送的SSH用户名、主机公钥是否与本地配置的SSH用户名以及相应的客户端主机公钥一致,在确认用户名和客户端主机公钥正确后,再对客户端发送的数字签名进行验证,而该签名是客户端利用主机公钥对应的私钥计算出的。因此,需要在服务器端配置客户端的RSA主机公钥,并在客户端为该SSH用户指定与主机公钥对应的RSA主机私钥(在向服务器发起连接时通过identity-key关键字指定公钥算法来实现)。

·     服务器端可以通过手工配置和从公钥文件中导入两种方式来配置客户端的公钥。由于手工配置客户端的公钥时,输入的公钥必须满足一定的格式要求,否则会致客户端公钥保存失败。因此,建议选用从公钥文件导入的方式配置客户端公钥(本例即用此方式)。

8.3  使用版本

本举例是在S12500-CMW520-R1825P01版本上进行配置和验证的。

8.4  配置注意事项

·     SSH用户登录的用户界面的认证方式必须配置为scheme方式。

·     如果SSH服务器采用publickey方式认证客户端,必须在服务器上创建相应的SSH用户。

·     虽然一个客户端只会采用DSA和RSA公钥算法中的一种来认证服务器,但是由于不同客户端支持的公钥算法不同,为了确保客户端能够成功登录服务器,建议在服务器上同时生成DSA和RSA两种密钥对。

·     采用publickey方式认证时,设备作为SFTP服务器或客户端,用户级别不能通过命令行配置,缺省均为为最高级(管理级)。

8.5  配置步骤

8.5.1  配置服务器

# 生成RSA及DSA密钥对。

<SwitchB> system-view

[SwitchB] public-key local create rsa

[SwitchB] public-key local create dsa

# 使能SSH服务器功能。

[SwitchB] ssh server enable

# 启动SFTP服务器。

[SwitchB] sftp server enable

# 配置VLAN接口1的IP地址,客户端将通过该地址连接SSH服务器。

[SwitchB] interface vlan-interface 1

[SwitchB-Vlan-interface1] undo shutdown

[SwitchB-Vlan-interface1] ip address 192.168.0.1 255.255.255.0

[SwitchB-Vlan-interface1] quit

# 设置登录用户界面的认证方式为scheme。

[SwitchB] user-interface vty 0 15

[SwitchB -ui-vty0-15] authentication-mode scheme

# 设置Switch B上远程用户登录协议为SSH。

[SwitchB-ui-vty0-15] protocol inbound ssh

[SwitchB-ui-vty0-15] quit

# 从文件pubkey中导入远端的公钥,并命名为Switch001。

[SwitchB] public-key peer Switch001 import sshkey pubkey

# 设置SSH用户client002的服务类型为SFTP,认证方式为publickey,并指定公钥为Switch001,工作目录为cfa0:/。

[SwitchB] ssh user client002 service-type sftp authentication-type publickey assign publickey Switch001 work-directory cfa0:/

8.5.2  配置客户端

# 配置VLAN接口1的IP地址。

<SwitchA> system-view

[SwitchA] interface vlan-interface 1

[SwitchA-Vlan-interface1] undo shutdown

[SwitchA-Vlan-interface1] ip address 192.168.0.2 255.255.255.0

[SwitchA-Vlan-interface1] quit

# 生成RSA密钥对。

[SwitchA] public-key local create rsa

# 将生成的RSA主机公钥导出到指定文件pubkey中。

[SwitchA] public-key local export rsa ssh2 pubkey

[SwitchA] quit

说明

客户端生成密钥对后,需要将保存的公钥文件通过FTP/TFTP方式上传到服务器,并完成服务器的配置(请参见8.5.1  配置服务器)后,才可继续客户端的配置。

 

# 与远程SFTP服务器建立连接,进入SFTP Client视图。

<SwitchA> sftp 192.168.0.1 identity-key rsa

Input Username: client002

Trying 192.168.0.1 ...

Press CTRL+K to abort

Connected to 192.168.0.1 ...

 

The Server is not authenticated. Continue? [Y/N]:y

Do you want to save the server public key? [Y/N]:n

 

sftp-client>

# 显示服务器的当前目录,删除文件z,并检查此目录是否删除成功。

sftp-client> dir

-rwxrwxrwx   1 noone    nogroup      1759 Aug 23 06:52 config.cfg

-rwxrwxrwx   1 noone    nogroup       225 Aug 24 08:01 pubkey2

-rwxrwxrwx   1 noone    nogroup       283 Aug 24 07:39 pubkey

drwxrwxrwx   1 noone    nogroup         0 Sep 01 06:22 new

-rwxrwxrwx   1 noone    nogroup       225 Sep 01 06:55 pub

-rwxrwxrwx   1 noone    nogroup         0 Sep 01 08:00 z

sftp-client> delete z

The following File will be deleted:

/z

Are you sure to delete it? [Y/N]:y

This operation may take a long time.Please wait...

 

File successfully Removed

sftp-client> dir

-rwxrwxrwx   1 noone    nogroup      1759 Aug 23 06:52 config.cfg

-rwxrwxrwx   1 noone    nogroup      225 Aug 24 08:01 pubkey2

-rwxrwxrwx   1 noone    nogroup      283 Aug 24 07:39 pubkey

drwxrwxrwx   1 noone    nogroup        0 Sep 01 06:22 new

-rwxrwxrwx   1 noone    nogroup      225 Sep 01 06:55 pub

# 新增目录new1,并检查新目录是否创建成功。

sftp-client> mkdir new1

New directory created

sftp-client> dir

-rwxrwxrwx   1 noone    nogroup      1759 Aug 23 06:52 config.cfg

-rwxrwxrwx   1 noone    nogroup       225 Aug 24 08:01 pubkey2

-rwxrwxrwx   1 noone    nogroup       283 Aug 24 07:39 pubkey

drwxrwxrwx   1 noone    nogroup         0 Sep 01 06:22 new

-rwxrwxrwx   1 noone    nogroup       225 Sep 01 06:55 pub

drwxrwxrwx   1 noone    nogroup         0 Sep 02 06:30 new1

# 将目录名new1更名为new2,并查看是否更名成功。

sftp-client> rename new1 new2

File successfully renamed

sftp-client> dir

-rwxrwxrwx   1 noone    nogroup      1759 Aug 23 06:52 config.cfg

-rwxrwxrwx   1 noone    nogroup       225 Aug 24 08:01 pubkey2

-rwxrwxrwx   1 noone    nogroup       283 Aug 24 07:39 pubkey

drwxrwxrwx   1 noone    nogroup         0 Sep 01 06:22 new

-rwxrwxrwx   1 noone    nogroup       225 Sep 01 06:55 pub

drwxrwxrwx   1 noone    nogroup         0 Sep 02 06:33 new2

# 从服务器上下载文件pubkey2到本地,并更名为public。

sftp-client> get pubkey2 public

Remote  file:/pubkey2 --->  Local file: public

Downloading file successfully ended

# 将本地文件pu上传到服务器上,更名为puk,并查看上传是否成功。

sftp-client> put pu puk

Local file:pu --->  Remote file: /puk

Uploading file successfully ended

sftp-client> dir

-rwxrwxrwx   1 noone    nogroup      1759 Aug 23 06:52 config.cfg

-rwxrwxrwx   1 noone    nogroup       225 Aug 24 08:01 pubkey2

-rwxrwxrwx   1 noone    nogroup       283 Aug 24 07:39 pubkey

drwxrwxrwx   1 noone    nogroup         0 Sep 01 06:22 new

drwxrwxrwx   1 noone    nogroup         0 Sep 02 06:33 new2

-rwxrwxrwx   1 noone    nogroup       283 Sep 02 06:35 pub

-rwxrwxrwx   1 noone    nogroup       283 Sep 02 06:36 puk

sftp-client>

# 退出SFTP。

sftp-client> quit

Bye

Connection closed.

<SwitchA>

8.6  验证配置

# Switch A上运行如下命令:

<SwitchA> sftp 192.168.0.1 identity-key rsa

输入正确的用户名后,Switch A作为SFTP客户端可登录到Switch B,进行文件管理和文件传送等操作。

8.7  配置文件

·     SwitchA

#

vlan 1

#

interface Vlan-interface1

ip address 192.168.0.2 255.255.255.0

#   

·     SwitchB

#

interface Vlan-interface1

 ip address 192.168.0.1 255.255.255.0

#

ssh server enable

sftp server enable

ssh user client002 service-type sftp authentication-type publickey assign publickey Switch001 work-directory cf:/

#

user-interface vty 0 15

 authentication-mode scheme

protocol inbound ssh

#

9  相关资料

·     《H3C S12500系列路由交换机  安全配置指导》中的“SSH”

·     《H3C S12500系列路由交换机  安全命令参考》中的“SSH”

 

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!