05-公钥管理配置
本章节下载: 05-公钥管理配置 (194.24 KB)
目 录
本特性的支持情况与设备的型号有关,请参见“配置指导导读”中的“特性差异情况”部分的介绍。
· 算法:加密和解密过程中使用的一组变换规则。
· 明文:未加密的信息。
· 密文:加密后的信息。
· 密钥:一组特定的字符串,是控制明文和密文变换的唯一参数,起到“钥匙”的作用。加密和解密都是在密钥的参与下进行的。
如图1-1所示,为了保证数据在网络中安全传输,不被攻击者非法窃听和恶意篡改,发送方在发送数据之前需要对数据进行加密处理,即通过一定的算法,利用密钥将明文数据变换为密文;接收方接收到密文数据后,对其进行解密处理,即通过一定的算法,利用密钥将密文数据恢复为明文,以获得原始数据。
根据加密解密过程中使用的密钥是否相同,可以将数据加解密算法分为:
· 对称密钥算法:数据加密和解密时使用相同的密钥。常用的对称密钥算法包括AES(Advanced Encryption Standard,高级加密标准)、DES(Data Encryption Standard,数据加密标准)等。
· 非对称密钥算法:数据加密和解密时使用不同的密钥,一个是对外公开的公钥,一个是由用户秘密保存的私钥。通过公钥(或私钥)加密后的数据只能利用对应的私钥(或公钥)进行解密;从公钥很难推断出私钥。
非对称密钥算法可以用于加解密和数字签名:
· 加解密:发送者利用接收者的公钥对报文进行加密,拥有对应私钥的合法接收者使用私钥对数据进行解密,从而可以保证数据的机密性。
· 数字签名:发送者利用自己的私钥对数据进行加密,接收者利用发送者的公钥对数据进行解密。由于通过私钥加密后的数据只能利用对应的公钥进行解密,因此根据解密是否成功,就可以判断发送者的身份,如同发送者对数据进行了“签名”。例如,用户1使用自己的私钥对数据进行签名后,发给用户2,用户2利用用户1的公钥验证签名,如果签名是正确的,那么就能够确认该数据来源于用户1。
非对称密钥算法包括RSA(Rivest Shamir and Adleman)和ECDSA(Elliptic Curve Digital Signature Algorithm,椭圆曲线数字签名算法)。RSA既可以用于加解密,又可以用于签名,而ECDSA只用于签名。
非对称密钥算法的计算量较大,运算速度较慢。如果利用非对称密钥算法对整个报文进行加密和解密,则会影响报文的处理速度。因此,对称密钥算法经常用来加解密数据,以保证数据传输的安全性;而非对称密钥算法经常用于只需对较短的数据摘要进行加解密的数字签名,以便验证对端的身份。
用户通过命令行可以在本地设备上生成本地非对称密钥对、导出本地非对称密钥对的主机公钥部分和销毁本地非对称密钥对。
表1-1 生成非对称密钥对
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
生成本地ECDSA或RSA密钥对 |
public-key local create { ecdsa | rsa } |
必选 缺省情况下,没有生成ECDSA或RSA密钥对 |
生成非对称密钥对时,需要注意:
· 生成RSA密钥对时,将同时生成两个密钥对——服务器密钥对和主机密钥对,二者分别包括一个公钥和一个私钥。RSA服务器密钥和主机密钥模数的最小长度为512比特,最大长度为2048比特。生成RSA密钥对时会提示用户输入密钥模数的长度,建议密钥模数的长度大于或等于768比特,以提高安全性保证。
· 生成ECDSA密钥对时,只生成一个主机密钥对。ECDSA主机密钥模数的最大长度为192比特。
执行public-key local create命令后,生成的密钥对将保存在设备中,设备重启后不会丢失。
对于已经生成的RSA密钥对,可以按照指定格式在屏幕上显示主机公钥或导出主机公钥到指定文件。用户可以将显示或导出的主机公钥保存到远端设备上,以便远端设备利用此主机公钥通过数字签名算法验证本地设备的身份。
表1-2 显示或导出RSA密钥对的主机公钥
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
按照指定格式在屏幕上显示本地RSA主机公钥或导出本地RSA主机公钥到指定文件 |
public-key local export rsa { openssh | ssh1 | ssh2 } [ filename ] |
根据导出的公钥类型选择相应的命令 |
在如下几种情况下,用户可能需要销毁旧的非对称密钥对,并生成新的密钥对:
· 本地设备的私钥泄露,导致非法用户冒充本地设备访问网络。
· 保存密钥对的存储设备出现故障,更换了新的存储设备。
· 密钥对使用了较长时间,为了避免密钥泄露或破译。
· CA(Certificate Authority,证书机构)颁发的证书到达有效期。通过display pki certificate命令,可以查看证书的有效期。CA和证书的详细介绍,请参见“安全配置指导”中的“PKI配置”。
表1-3 销毁非对称密钥对
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
销毁非对称密钥对 |
public-key local destroy { ecdsa | rsa } |
必选 |
为了实现对远端主机的身份验证,需要在本地设备上配置远端主机的RSA公钥。
配置远端主机公钥的方式有如下两种:
· 手工配置:用户事先在远端主机上通过显示命令或其他方式查看远端主机的公钥,并记录远端主机公钥的内容。在本地设备上采用手工输入的方式将远端主机的公钥配置到本地。手工输入远端主机公钥时,可以逐个字符输入,也可以一次拷贝粘贴多个字符。
· 从公钥文件中导入:用户事先通过FTP/TFTP,以二进制(binary)方式,将远端主机的公钥文件保存到本地设备,本地设备从该公钥文件中导入远端主机的公钥。导入公钥时,系统会自动将远端主机的公钥文件转换为PKCS(Public Key Cryptography Standards,公共密钥加密标准)编码形式。
· 手工配置远端主机的公钥时,输入的主机公钥必须满足一定的格式要求。通过display public-key local public命令显示的公钥可以作为输入的公钥内容;通过其他方式显示的公钥可能不满足格式要求,导致主机公钥保存失败。因此,建议选用从公钥文件导入的方式配置远端主机的公钥。
· 设备上最多可以配置20个远端主机的公钥。
表1-4 手工配置远端主机的公钥
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建远端主机公钥,并进入公钥视图 |
public-key peer keyname |
必选 |
进入公钥编辑视图 |
public-key-code begin |
- |
配置远端主机的公钥 |
逐个字符输入或拷贝粘贴公钥内容 |
必选 在输入公钥内容时,字符之间可以有空格,也可以按回车键继续输入数据 |
退回公钥视图,并保存配置的主机公钥 |
public-key-code end |
必选 退出视图时,系统自动保存配置的主机公钥 |
退回系统视图 |
peer-public-key end |
- |
对于RSA密钥对,输入服务器密钥对中的公钥或主机密钥对中的公钥,公钥编辑都可以成功。但是,在SSH应用中,输入的密钥数据只能是主机密钥对中的公钥,否则会导致身份验证失败。SSH的详细介绍,请参见“安全配置指导”中的“SSH2.0配置”。
表1-5 从公钥文件中导入远端主机的公钥
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
从公钥文件中导入远端主机的公钥 |
public-key peer keyname import sshkey filename |
必选 |
在完成上述配置后,在任意视图下执行display命令可以显示配置后公钥的信息,通过查看显示信息验证配置的效果。
表1-6 公钥显示和维护
操作 |
命令 |
显示本地密钥对中的公钥部分 |
display public-key local { ecdsa | rsa } public [ | { begin | exclude | include } regular-expression ] |
显示保存在本地的远端主机的公钥信息 |
display public-key peer [ brief | name publickey-name ] [ | { begin | exclude | include } regular-expression ] |
公钥管理的配置举例请参见“SSH2.0配置”、“WLAN配置指导”中的“WAPI配置”和“基础配置指导”中的“配置通过Web网管登录设备”。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!