15-keychain配置
本章节下载: 15-keychain配置 (131.65 KB)
keychain是加密规则(key)的集合,用来为应用程序提供动态认证功能。keychain在不中断业务的前提下,通过定期更改用于认证的密钥和算法来提升网络数据传输的安全性。
一个keychain中的不同key可配置各自的认证密钥、认证算法和生命周期。key由认证密钥、认证算法和生命周期三部分组成。当系统时间处于key的生命周期内时,应用程序可以利用它对发送和接收的报文进行校验。当keychain内各个key的生命周期具有连续性时,随着系统时间的推移,各个key能够依次生效,从而实现动态地更改应用程序使用的认证算法和认证密钥。
keychain支持绝对时间模式,该模式的keychain中,key的生命周期是UTC(UTC,Coordinated Universal Time,国际协调时间)绝对时间,不受系统的时区和夏令时的影响。
配置时需要注意以下几点:
· 同一个keychain内的各个key使用send-lifetime utc指定的生命周期不可重叠,以确保在同一时刻,应用程序只使用一个key对发送的报文进行校验。
· 认证双方在同一时间内所使用的key的认证算法和认证密钥必须一致。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建keychain,并进入keychain视图 |
keychain keychain-name [ mode absolute ] |
缺省情况下,不存在keychain |
(可选)为keychain中的key延长其在报文接收时的生命周期 |
accept-tolerance { value | infinite } |
缺省情况下,没有为keychain中的key延长其在报文接收时的生命周期 |
创建一个key,并进入key视图 |
key key-id |
缺省情况下,不存在key |
配置认证算法 |
authentication-algorithm hmac-sha-256 |
缺省情况下,未配置key的认证算法 |
配置认证密钥 |
key-string { cipher | plain } string |
缺省情况下,未配置key的认证密钥 |
配置用来校验发送报文时key的UTC模式的生命周期 |
send-lifetime utc start-time start-date { duration { duration-value | infinite } | to end-time end-date } |
缺省情况下,未配置用来校验发送报文时key的生命周期 |
配置用来校验接收报文时key的UTC模式的生命周期 |
accept-lifetime utc start-time start-date { duration { duration-value | infinite } | to end-time end-date } |
缺省情况下,未配置用来校验接收报文时key的生命周期 |
(可选)为keychain指定缺省发送key |
default-send-key |
缺省情况下,keychain中不存在缺省发送key |
在完成上述配置后,在任意视图下执行display命令可以显示配置后keychain的运行情况,通过查看显示信息验证配置的效果。
表1-2 keychain显示和维护
操作 |
命令 |
显示keychain信息 |
display keychain [ name keychain-name [ key key-id ] ] |
Router A和Router B之间建立OSPF邻居,使用keychain认证方式对发送和接收的报文进行校验。具体要求为:Router A和Router B的keychain中创建key 1和key 2,key 1的生命周期结束后,自动切换成key 2来对报文进行校验。
图1-1 keychain配置组网图
[RouterA] ospf 1 router-id 1.1.1.1
[RouterA-ospf-1-area-0.0.0.0] network 192.1.1.0 0.0.0.255
[RouterA-ospf-1-area-0.0.0.0] quit
# 配置名称为abc的keychain,并指定其工作于绝对时间模式。
[RouterA] keychain abc mode absolute
# 在keychain abc中创建key 1和key 2,并配置其认证算法、认证密钥和生命周期。
[RouterA-keychain-abc-key-1] authentication-algorithm md5
[RouterA-keychain-abc-key-1] key-string plain 123456
[RouterA-keychain-abc-key-1] send-lifetime utc 10:00:00 2015/02/06 to 11:00:00 2015/02/06
[RouterA-keychain-abc-key-1] accept-lifetime utc 10:00:00 2015/02/06 to 11:00:00 2015/02/06
[RouterA-keychain-abc-key-1] quit
[RouterA-keychain-abc-key-2] authentication-algorithm hmac-md5
[RouterA-keychain-abc-key-2] key-string plain pwd123
[RouterA-keychain-abc-key-2] send-lifetime utc 11:00:00 2015/02/06 to 12:00:00 2015/02/06
[RouterA-keychain-abc-key-2] accept-lifetime utc 11:00:00 2015/02/06 to 12:00:00 2015/02/06
[RouterA-keychain-abc-key-2] quit
# 配置接口GigabitEthernet1/0/1使用keychain认证方式。
[RouterA] interface GigabitEthernet 1/0/1
[RouterA-GigabitEthernet1/0/1] ospf authentication-mode keychain abc
[RouterA-GigabitEthernet1/0/1] quit
[RouterB] ospf 1 router-id 2.2.2.2
[RouterB-ospf-1-area-0.0.0.0] network 192.1.1.0 0.0.0.255
[RouterB-ospf-1-area-0.0.0.0] quit
# 配置名称为abc的keychain,并指定其工作于绝对时间模式。
[RouterB] keychain abc mode absolute
# 在keychain abc中创建key 1和key2,并配置其认证算法、认证密钥和生命周期。
[RouterB-keychain-abc-key-1] authentication-algorithm md5
[RouterB-keychain-abc-key-1] key-string plain 123456
[RouterB-keychain-abc-key-1] send-lifetime utc 10:00:00 2015/02/06 to 11:00:00 2015/02/06
[RouterB-keychain-abc-key-1] accept-lifetime utc 10:00:00 2015/02/06 to 11:10:00 2015/02/06
[RouterB-keychain-abc-key-1] quit
[RouterB-keychain-abc-key-2] key-string plain pwd123
[RouterB-keychain-abc-key-2] authentication-algorithm hmac-md5
[RouterB-keychain-abc-key-2] send-lifetime utc 11:00:00 2015/02/06 to 12:00:00 2015/02/06
[RouterB-keychain-abc-key-2] accept-lifetime utc 11:00:00 2015/02/06 to 12:00:00 2015/02/06
[RouterB-keychain-abc-key-2] quit
# 配置接口GigabitEthernet1/0/1使用keychain验证模式。
[RouterB] interface GigabitEthernet 1/0/1
[RouterB-GigabitEthernet1/0/1] ospf authentication-mode keychain abc
[RouterB-GigabitEthernet1/0/1] quit
(1) 当系统时间处于2015/02/06的10:00:00到11:00:00时,通过查看以下信息来确认keychain的运行状态。
# 查看Router A的keychain信息,发现key 1为有效key。
Key string : $c$3$dYTC8QeOKJkwFwP2k/rWL+1p6uMTw3MqNg==
Send lifetime : 10:00:00 2015/02/06 to 11:00:00 2015/02/06
Accept lifetime : 10:00:00 2015/02/06 to 11:00:00 2015/02/06
Key string : $c$3$7TSPbUxoP1ytOqkdcJ3K3x0BnXEWl4mOEw==
Send lifetime : 11:00:00 2015/02/06 to 12:00:00 2015/02/06
Accept lifetime : 11:00:00 2015/02/06 to 12:00:00 2015/02/06
# 查看Router B的keychain信息,发现key 1为有效key。
Key string : $c$3$/G/Shnh6heXWprlSQy/XDmftHa2JZJBSgg==
Send lifetime : 10:00:00 2015/02/06 to 11:00:00 2015/02/06
Accept lifetime : 10:00:00 2015/02/06 to 11:00:00 2015/02/06
Key string : $c$3$t4qHAw1hpZYN0JKIEpXPcMFMVT81u0hiOw==
Send lifetime : 11:00:00 2015/02/06 to 12:00:00 2015/02/06
Accept lifetime : 11:00:00 2015/02/06 to 12:00:00 2015/02/06
(2) 当系统时间处于2015/02/06的11:10:00到12:00:00时,通过查看以下信息来确认keychain的运行状态。
# 查看Router A的keychain信息,发现key 2为有效key。
Key string : $c$3$dYTC8QeOKJkwFwP2k/rWL+1p6uMTw3MqNg==
Send lifetime : 10:00:00 2015/02/06 to 11:00:00 2015/02/06
Accept lifetime : 10:00:00 2015/02/06 to 11:00:00 2015/02/06
Key string : $c$3$7TSPbUxoP1ytOqkdcJ3K3x0BnXEWl4mOEw==
Send lifetime : 11:00:00 2015/02/06 to 12:00:00 2015/02/06
Accept lifetime : 11:00:00 2015/02/06 to 12:00:00 2015/02/06
# 查看Router B的keychain信息,发现key 2为有效key。
Key string : $c$3$/G/Shnh6heXWprlSQy/XDmftHa2JZJBSgg==
Send lifetime : 10:00:00 2015/02/06 to 11:00:00 2015/02/06
Accept lifetime : 10:00:00 2015/02/06 to 11:00:00 2015/02/06
Key string : $c$3$t4qHAw1hpZYN0JKIEpXPcMFMVT81u0hiOw==
Send lifetime : 11:00:00 2015/02/06 to 12:00:00 2015/02/06
Accept lifetime : 11:00:00 2015/02/06 to 12:00:00 2015/02/06
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!