• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 新华三人才研学中心
  • 关于我们

14-安全配置指导

目录

04-公钥管理配置

本章节下载 04-公钥管理配置  (231.81 KB)

04-公钥管理配置


1 公钥管理

1.1  简介

公钥管理用于非对称密钥算法的密钥管理与发布。

1.1.1  非对称密钥算法原理

非对称密钥算法是数据加解密的一种方法,用来保证数据在网络中安全传输、不被攻击者非法窃听和恶意篡改。如图1-1所示,在非对称密钥算法中,加密和解密使用的密钥一个是对外公开的公钥,一个是由用户秘密保存的私钥,从公钥很难推算出私钥。公钥和私钥一一对应,二者统称为非对称密钥对。通过公钥(或私钥)加密后的数据只能利用对应的私钥(或公钥)进行解密。对称密钥算法中,加密和解密使用相同的密钥。

图1-1 加密和解密转换关系示意图

 

非对称密钥算法包括RSA(Rivest Shamir and Adleman)、DSA(Digital Signature Algorithm,数字签名算法)、ECDSA(Elliptic Curve Digital Signature Algorithm,椭圆曲线数字签名算法)等。

1.1.2  非对称密钥算法作用

非对称密钥算法主要有两个用途:

·     对发送的数据进行加/解密:发送者利用接收者的公钥对数据进行加密,只有拥有对应私钥的接收者才能使用该私钥对数据进行解密,从而可以保证数据的机密性。目前,只有RSA算法可以用来对发送的数据进行加/解密。

·     对数据发送者的身份进行认证:非对称密钥算法的这种应用,称为数字签名。发送者利用自己的私钥对数据进行加密,接收者利用发送者的公钥对数据进行解密,从而实现对数据发送者身份的验证。由于只能利用对应的公钥对通过私钥加密后的数据进行解密,因此根据解密是否成功,就可以判断发送者的身份是否合法,如同发送者对数据进行了“签名”。目前,RSA、DSA、ECDSA都可以用于数字签名。

非对称密钥算法应用十分广泛,例如SSH(Secure Shell,安全外壳)、SSL(Secure Sockets Layer,安全套接字层)、PKI(Public Key Infrastructure,公钥基础设施)中都利用了非对称密钥算法进行数字签名。非对称密钥算法只有与具体的应用(如SSH、SSL)配合使用,才能实现利用非对称密钥算法进行加/解密或数字签名。SSH、SSL和PKI的介绍,请参见“安全配置指导”中的“SSH”、“SSL”和“PKI”。

1.2  公钥管理配置任务简介

公钥管理配置任务如下:

(1)     生成本地非对称密钥对

(2)     将本地非对称密钥中的主机公钥分发到远端主机

请选择以下一项进行配置:

¡     导出本地非对称密钥对中的主机公钥

¡     显示本地非对称密钥对中的公钥信息

为了实现远端主机对本地设备的身份验证,用户需要将本地的主机公钥保存到远端主机上。

(3)     配置远端主机的公钥

请选择以下一项进行配置:

¡     导入远端主机的公钥

¡     手工配置远端主机的公钥

为了实现本地设备对远端主机的身份验证,用户需要在本地设备上配置远端主机公钥。

(4)     (可选)销毁本地非对称密钥对

1.3  生成本地非对称密钥对

1. 配置限制和指导

创建RSA和DSA密钥对时,设备会提示用户输入密钥模数的长度。密钥模数越长,安全性越好,但是生成密钥的时间越长。创建ECDSA密钥对时,可使用不同密钥长度的椭圆曲线,密钥越长,安全性越好,但是生成密钥的时间越长。关于密钥模数长度或密钥长度的配置限制和注意事项请参见表1-1

生成密钥对时,如果不指定密钥对名称,系统会以缺省名称命名密钥对,并把该密钥对标记为默认(default)。

用户可以使用缺省的密钥对名称创建其他密钥对,但系统不会把该密钥对标记为默认(default)。

非默认名称密钥对的密钥类型和名称不能完全相同,否则需要用户确认是否覆盖原有的密钥对。不同类型的密钥对,名称可以相同。

执行public-key local create命令后,生成的密钥对将保存在设备中,设备重启后密钥不会丢失。

表1-1 不同类型密钥对对比

密钥对类型

生成的密钥对

密钥模数长度/密钥长度

RSA

·     不指定密钥对名称时,将同时生成两个密钥对服务器密钥对和主机密钥对

·     指定密钥对名称时,只生成一个主机密钥对

说明

目前,只有SSH1.5中应用了RSA服务器密钥对

密钥模数长度取值范围为512~2048比特,缺省值为1024比特,建议密钥模数的长度大于或等于768比特

DSA

只生成一个主机密钥对

密钥模数长度取值范围为512~2048比特,缺省值为1024比特,建议密钥模数的长度大于或等于768比特

ECDSA

只生成一个主机密钥对

密钥长度取值为192、256、384或521比特

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     生成本地非对称密钥对。

public-key local create { dsa | ecdsa [ secp192r1 | secp256r1 | secp384r1 | secp521r1 ] | rsa } [ name key-name ]

1.4  将本地非对称密钥中的主机公钥分发到远端主机

1.4.1  功能简介

在某些应用(如SSH)中,为了实现远端主机采用数字签名方法对本地设备进行身份验证,用户需要将本地的主机公钥保存到远端主机上。

将本地的主机公钥保存到远端主机上,有以下三种方法:

·     在本地设备上执行public-key local export命令按照指定格式将本地主机公钥导出到指定文件(执行命令时指定filename参数),并将该文件上传到远端主机上。在远端主机上,通过从公钥文件中导入的方式将本地的主机公钥保存到远端设备上。

·     在本地设备上执行public-key local export命令按照指定格式将本地主机公钥导出到用户界面(执行命令时不指定filename参数),通过拷贝粘贴等方式将用户界面上的主机公钥保存到文件中,并将该文件上传到远端主机上。在远端主机上,通过从公钥文件中导入的方式将本地的主机公钥保存到远端设备上。

·     在本地设备上执行display public-key local public命令显示非对称密钥对中的公钥信息,并记录主机公钥数据。在远端主机上,通过手工配置的方式将记录的本地主机公钥保存到远端设备上。

1.4.2  导出本地非对称密钥对中的主机公钥

(1)     进入系统视图。

system-view

(2)     导出本地非对称密钥对中的主机公钥。

¡     按照指定格式将本地RSA主机公钥导出到指定文件或用户界面。

public-key local export rsa [ name key-name ] { openssh | ssh1 | ssh2 } [ filename ]

¡     按照指定格式将本地ECDSA主机公钥导出到指定文件或用户界面。

public-key local export ecdsa [ name key-name ] { openssh | ssh2 } [ filename ]

¡     按照指定格式将本地DSA主机公钥导出到指定文件或用户界面。

public-key local export dsa [ name key-name ] { openssh | ssh2 } [ filename ]

1.4.3  显示本地非对称密钥对中的公钥信息

请在任意视图下执行以下命令。

·     显示本地RSA密钥对中的公钥信息。

display public-key local rsa public [ name key-name ]

若执行本命令时,同时显示了RSA服务器密钥对和主机密钥对的公钥信息,用户只需记录主机密钥对的公钥信息。

·     显示本地ECDSA密钥对中的公钥信息。

display public-key local ecdsa public [ name key-name ]

·     显示本地DSA密钥对中的公钥信息。

display public-key local dsa public [ name key-name ]

1.5  配置远端主机的公钥

1.5.1  功能简介

在某些应用(如SSH)中,为了实现本地设备对远端主机的身份验证,需要在本地设备上配置远端主机的RSA、ECDSA、DSA主机公钥。用户可以使用以下方法配置远端主机公钥:

·     导入远端主机公钥。

·     手工配置远端主机公钥。

远端主机公钥信息的获取方法,请参见“1.4  将本地非对称密钥中的主机公钥分发到远端主机”。

1.5.2  配置限制和指导

手工配置远端主机的公钥时,输入的主机公钥必须满足一定的格式要求。通过display public-key local public命令显示的公钥可以作为输入的公钥内容;通过其他方式(如public-key local export命令)显示的公钥可能不满足格式要求,导致主机公钥保存失败。因此,建议选用从公钥文件导入的方式配置远端主机的公钥。

1.5.3  导入远端主机的公钥

1. 功能简介

用户事先将远端主机的公钥文件保存到本地设备(例如,通过FTP或TFTP,以二进制方式将远端主机的公钥文件保存到本地设备),本地设备从该公钥文件中导入远端主机的公钥。导入公钥时,系统会自动将远端主机的公钥文件转换为PKCS(Public Key Cryptography Standards,公共密钥加密标准)编码形式。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     从公钥文件中导入远端主机的公钥。

public-key peer keyname import sshkey filename

1.5.4  手工配置远端主机的公钥

1. 功能简介

用户事先在远端主机上通过display public-key local public命令查看其公钥信息,并记录远端主机公钥的内容。在本地设备上采用手工输入的方式将远端主机的公钥配置到本地。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     指定远端主机公钥的名称,并进入公钥视图。

public-key peer keyname

(3)     手工输入远端主机的公钥。

逐个字符输入或拷贝粘贴公钥内容。

在输入公钥内容时,字符之间可以有空格,也可以按回车键继续输入数据。保存公钥数据时,将删除空格和回车符。

(4)     退出公钥视图时,保存配置的主机公钥。

peer-public-key end

1.6  销毁本地非对称密钥对

1. 功能简介

在如下几种情况下,建议用户销毁旧的非对称密钥对,并生成新的密钥对:

·     本地设备的私钥泄露。这种情况下,非法用户可能会冒充本地设备访问网络。

·     保存密钥对的存储设备出现故障,导致设备上没有公钥对应的私钥,无法再利用旧的非对称密钥对进行加/解密和数字签名。

·     本地证书到达有效期,需要删除对应的本地密钥对。本地证书的详细介绍,请参见“安全配置指导”中的“PKI”。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     销毁本地非对称密钥对。

public-key local destroy { dsa | ecdsa | rsa } [ name key-name ]

1.7  公钥管理显示和维护

在完成上述配置后,在任意视图下执行display命令可以显示配置后公钥管理的信息,通过查看显示信息验证配置的效果。

表1-2 公钥管理显示和维护

操作

命令

显示本地非对称密钥对中的公钥信息

display public-key local { dsa | ecdsa | rsa } public [ name key-name ]

显示保存在本地的远端主机的公钥信息

display public-key peer [ brief | name publickey-name ]

 

 

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

新华三官网
联系我们