边界网关协议BGP实践课(16)—MD5认证和Keychain认证
  

on_line_no 6861人觉得有帮助

{{ttag.title}}
1.1   概述

BGP认证分为MD5认证和Keychain认证,对BGP对等体关系进行认证是提高安全性的有效手段。MD5认证只能为TCP连接设置认证密码,而Keychain认证除了可以为TCP连接设置认证密码外,还可以对BGP协议报文进行认证。
本期文章结合实际案例总结分享BGP认证。

1.2   BGP组网案例-BGP认证

1.2.1   组网拓扑图及地址规划

组网拓扑图和地址规划如下图所示。 备注:模拟器采用HCL 5.5.0



1.2.2   组网设备基础配置

组网设备基础配置主要涉及设备命名、接口IP地址相关配置。
#SW_1设备基础配置
[H3C]sysname SW_1
[SW_1]interface LoopBack0
[SW_1-LoopBack0] ip address 10.10.0.1 255.255.255.255
[SW_1]interface GigabitEthernet1/0/2
[SW_1-GigabitEthernet1/0/2] port link-mode route
[SW_1-GigabitEthernet1/0/2] ip address 10.10.12.1 255.255.255.252
[SW_1-GigabitEthernet1/0/2]quit
[SW_1]
#SW_2设备基础配置
[H3C]sysname SW_2
[SW_2]interface LoopBack0
[SW_2-LoopBack0] ip address 10.10.0.2 255.255.255.255
[SW_2-LoopBack0]quit
[SW_2]interface GigabitEthernet1/0/2
[SW_2-GigabitEthernet1/0/2] port link-mode route
[SW_2-GigabitEthernet1/0/2] ip address 10.10.12.2 255.255.255.252
[SW_2-GigabitEthernet1/0/2]quit

1.2.3   组网设备BGP配置

#SW_1设备BGP配置
[SW_1]bgp 10
[SW_1-bgp-default] router-id 10.10.0.1
[SW_1-bgp-default] peer 10.10.12.2 as-number 10
[SW_1-bgp-default] #
[SW_1-bgp-default] address-family ipv4 unicast
[SW_1-bgp-default-ipv4]network 10.10.0.1 255.255.255.255
[SW_1-bgp-default-ipv4]peer 10.10.12.2 enable
[SW_1-bgp-default-ipv4]quit
[SW_1-bgp-default]quit
[SW_1]#
#SW_2设备BGP配置
[SW_2]bgp 10
[SW_2-bgp-default] router-id 10.10.0.2
[SW_2-bgp-default] peer 10.10.12.1 as-number 10
[SW_2-bgp-default] #
[SW_2-bgp-default] address-family ipv4 unicast
[SW_2-bgp-default-ipv4]peer 10.10.12.1 enable
[SW_2-bgp-default-ipv4]network 10.10.0.2 255.255.255.255
[SW_2-bgp-default-ipv4]quit
[SW_2-bgp-default]quit
[SW_2]#


1.3   BGP-MD5认证


#SW_1设备BGP-MD5认证配置
[SW_1]bgp 10
[SW_1-bgp-default]peer 10.10.12.2 password simple admin
[SW_1-bgp-default]quit
[SW_1]#
#SW_2设备BGP-MD5认证配置
[SW_2]bgp 10
[SW_2-bgp-default]peer 10.10.12.1 password simple admin
[SW_2-bgp-default]quit
[SW_2]#
在SW_1设备的接口G1/0/2抓取SW_1设备向SW_2设备发送的BGP更新报文如下图所示。
从下图可知;TCP选项值存在“TCP Option - TCP MD5 signature”及相应的“MD5 digest”。


1.4   BGP-Keychain认证

1.4.1   Keychain配置


Keychain配置注意事项
同一个keychain内的各个key使用send-lifetime utc指定的生命周期不可重叠,以确保在同一时刻,应用程序只使用一个key对发送的报文进行校验。
认证双方在同一时间内所使用的key的认证算法和认证密钥必须一致。
#SW_1设备Keychain配置
#配置名称为admin_SW_1的keychain,并指定其工作于绝对时间模式。
[SW_1]keychain admin_SW_1 mode absolute
#配置TCP增强认证选项中的类型值
#缺省情况下,TCP增强认证选项中的类型值为254
#当使用TCP作为传输层协议与友商设备互通时,本端和对端的类型值必须一致。如果不一致,则需要在本端配置本命令
[SW_1-keychain-admin_SW_1] tcp-kind 101
#配置TCP认证算法对应的算法ID
#缺省情况下,MD5认证算法的算法ID是3,HMAC-MD5认证算法的算法ID是5
#当使用TCP作为传输层协议与友商设备互通时,本端和对端的类型值必须一致。如果不一致,则需要在本端配置本命令
[SW_1-keychain-admin_SW_1] tcp-algorithm-id hmac-sha-256 6
# 在keychain admin_SW_1中创建key 1和key 2,并配置其认证算法、认证密钥和生命周期。
[SW_1-keychain-admin_SW_1] key 1
#配置认证密钥
[SW_1-keychain-admin_SW_1-key-1]key-string plain admin
#配置认证算法
[SW_1-keychain-admin_SW_1-key-1]authentication-algorithm md5
#配置用来校验发送报文时key的UTC模式的生命周期
[SW_1-keychain-admin_SW_1-key-1]send-lifetime utc 16:00:00 2023/01/13 to 16:00:00 2023/01/15
#配置用来校验接收报文时key的UTC模式的生命周期
[SW_1-keychain-admin_SW_1-key-1]accept-lifetime utc 16:00:00 2023/01/13 to 16:00:00 2023/01/15
[SW_1-keychain-admin_SW_1-key-1] key 2
[SW_1-keychain-admin_SW_1-key-2]  key-string plain admin
[SW_1-keychain-admin_SW_1-key-2]  authentication-algorithm hmac-sha-256
[SW_1-keychain-admin_SW_1-key-2]  send-lifetime utc 16:00:00 2023/01/15 to 16:00:00 2023/01/16
[SW_1-keychain-admin_SW_1-key-2]  accept-lifetime utc 16:00:00 2023/01/15 to 16:00:00 2023/01/16
[SW_1-keychain-admin_SW_1-key-2]quit
[SW_1-keychain-admin_SW_1]quit
[SW_1]#
#SW_2设备Keychain配置
[SW_2]keychain admin_SW_2 mode absolute
[SW_2-keychain-admin_SW_2] tcp-kind 101
[SW_2-keychain-admin_SW_2] tcp-algorithm-id hmac-sha-256 6
[SW_2-keychain-admin_SW_2] key 1
[SW_2-keychain-admin_SW_2-key-1]  key-string plain admin
[SW_2-keychain-admin_SW_2-key-1]  authentication-algorithm md5
[SW_2-keychain-admin_SW_2-key-1]  send-lifetime utc 16:00:00 2023/01/13 to 16:00:00 2023/01/15
[SW_2-keychain-admin_SW_2-key-1]  accept-lifetime utc 16:00:00 2023/01/13 to 16:00:00 2023/01/15
[SW_2-keychain-admin_SW_2-key-1] key 2
[SW_2-keychain-admin_SW_2-key-2]  key-string plain admin
[SW_2-keychain-admin_SW_2-key-2]  authentication-algorithm hmac-sha-256
[SW_2-keychain-admin_SW_2-key-2]  send-lifetime utc 16:00:00 2023/01/15 to 16:00:00 2023/01/16
[SW_2-keychain-admin_SW_2-key-2]  accept-lifetime utc 16:00:00 2023/01/15 to 16:00:00 2023/01/16
[SW_2-keychain-admin_SW_2-key-2]quit
[SW_2-keychain-admin_SW_2]quit
[SW_2]#


1.4.2   BGP-keychain认证配置



[SW_1]bgp 10
[SW_1-bgp-default] peer 10.10.12.2 keychain admin_SW_1
[SW_1-bgp-default]quit
[SW_1]#
#
[SW_2]bgp 10
[SW_2-bgp-default] peer 10.10.12.1 keychain admin_SW_2
[SW_2-bgp-default]quit
[SW_2]#


1.4.3   查看设备keychain运行状态



通过命令“display keychain”可查看keychain运行状态;
查看SW_1设备的keychain信息,发现TCP kind value:101、HMAC-SHA-256:6和key 2为有效key,如下图所示;

查看SW_2设备的keychain信息,发现TCP kind value:101、HMAC-SHA-256:6和key 2为有效key,如下图所示;



1.4.4   抓包验证keychain



在SW_1设备的接口G1/0/2抓取SW_1设备向SW_2设备发送的BGP更新报文如下图所示。
从下图可知;TCP选项值存在“Kind:Unknown(101)”及相应的“Payload”;



1.5   总结


MD5算法配置简单,配置后生成单一密码,需要人为干预才可以更换密码。
keychain是加密规则(key)的集合,用来为应用程序提供动态认证功能。keychain在不中断业务的前提下,通过定期更改用于认证的密钥和算法来提升网络数据传输的安全性。
一个keychain中的不同key可配置各自的认证密钥、认证算法和生命周期。key由认证密钥、认证算法和生命周期三部分组成。一个keychain中不同key的认证密钥、认证算法和生命周期可以不同。当系统时间处于key的生命周期内时,应用程序可以利用它对发送和接收的报文进行校验。当keychain内各个key的生命周期具有连续性时,随着系统时间的推移,各个key能够依次生效,从而实现动态地更改应用程序使用的认证算法和认证密钥。
keychain支持绝对时间模式,该模式的keychain中,key的生命周期是UTC(Coordinated Universal Time,国际协调时间)绝对时间,不受系统的时区和夏令时的影响。

打赏鼓励作者,期待更多好文!

打赏
暂无人打赏

新手727241 发表于 2023-1-19 11:24
  
楼主,是你让我深深地理解了‘人外有人,天外有天’这句话。谢谢你!在看完这帖子以后,我没有立即回复,因为我生怕我庸俗不堪的回复会玷污了这社区少有的帖子。但是我还是回复了,因为觉得如果不能在如此精彩的帖子后面留下自己的网名,那我会遗憾终生的!
山东_朱文鑫 发表于 2023-2-1 09:53
  
有助于学习!!!!!!!!!!!!
发表新帖
热门标签
全部标签>
每日一问
2024年技术争霸赛
技术盲盒
安装部署配置
技术笔记
每周精选
产品连连看
2023技术争霸赛专题
干货满满
技术咨询
信服课堂视频
秒懂零信任
功能体验
自助服务平台操作指引
运维工具
文档捉虫活动
功能咨询
通用技术
GIF动图学习
新版本体验
问题分析处理
每日一记
SDP百科
标准化排查
排障笔记本
畅聊IT
答题自测
专家问答
技术圆桌
测试报告
用户认证
解决方案
VPN 对接
项目案例
地址转换
存储
技术争霸赛
卧龙计划
技术晨报
在线直播
MVP
网络基础知识
升级
安全攻防
上网策略
日志审计
流量管理
云计算知识
原创分享
sangfor周刊
SANGFOR资讯
专家分享
技术顾问
信服故事
终端接入
授权
设备维护
资源访问
虚拟机
迁移
加速技术
产品预警公告
玩转零信任
信服圈儿
S豆商城资讯
「智能机器人」
追光者计划
深信服技术支持平台
社区帮助指南
答题榜单公布
纪元平台
华北区拉练
天逸直播
以战代练
山东区技术晨报
齐鲁TV
华北区交付直播
北京区每日一练

本版版主

12
185
6

发帖

粉丝

关注

本版达人

LoveTec...

本周分享达人

新手24116...

本周提问达人