BGP高级特性之认证

一、概述

        BGP使用TCP作为传输协议,只要TCP数据包的源地址、目的地址、源端口、目的端 口和TCP序号是正确的,BGP就会认为这个数据包有效,但数据包的大部分参数对于攻击 者来说是不难获得的。

        为了保证BGP免受攻击,可以在BGP邻居之间使用MD5认证或者Keychain认证来降低 被攻击的可能性。其中MD5算法配置简单,配置后生成单一密码,需要人为干预才可以 切换密码,适用于需要短时间加密的网络。如果MD5认证失败,则不建立TCP连接。另 外,BGP MD5认证与BGP Keychain认证互斥,不能在同一对等体或者对等体组上配 置。

注意:BGP使用TCP作为传输层协议,为提高BGP的安全性,可以在建立TCP连接时进行MD5认证。BGP的MD5认证只是为TCP连接设置MD5密码,认证字段并没有在BGP的载荷中,认证字段是在TCP的option中。

 二、认证的种类

BGP的认证分为两种,分别为MD5以及Keychain两种类型

1、MD5认证

        MD5认证的配置方法是在BGP视图下通过peer {ipv4-address | group-name | ipv6- address} password {cipher cipher-password | simple simple-password}命令配置MD5认证密 码(两端的认证方式和密码必须完全一致)。命令中的参数说明如下。

① ipv4-address | group-name| ipv6-address:指定要进行MD5认证的对等体IP地址或对 等体组名称。

② cipher cipher-password:二选一参数,指定MD5密文密码,不允许空格,区分大 小写,可以输入1~255个字符的明文,也可以输入20~392个字符的密文。

③ simple simple-password二选一参数,指定MD5明文密码,1~255个字符,不允许 空格,区分大小写。

注意:在配置MD5认证密码时,如果使用simple选项,密码将以明文形式保存在配置文件 中,存在安全隐患。建议使用cipher选项,将密码加密保存在配置文件中。

在采用输入明文方式来指定明文密码或密文密码字符串时,不支持 以“$@$@”或“^#^#”同时作为起始和结束字符。

缺省情况下,BGP对等体在建立TCP连接时对BGP消息不进行MD5认证,可用undo peer {group-name | ipv4-address} password命令恢复缺省情况。

2、Keychain认证

        Keychain认证方式具有一组密码,可以根据配置自动切换,安全性较MD5认证方式更 高,但是配置过程较为复杂,适用于对安全性能要求比较高的网络。配置BGP Keychain 认证前,必须配置keychain-name对应的Keychain认证,否则TCP连接不能正常建立。

注意:BGP对等体两端必须都配置针对使用TCP连接的应用程序的Keychain认证,所使用的 Keychain(密钥链)需已使用keychain keychain-name命令创建,然后分别通过key-id keyid 、key-string {[plain] plain-text | [cipher] cipher-text}和algorithm{hmac-md5 | hmac-sha256 | hmac-sha1-12 | hmac-sha1-20 | md5 | sha-1 | sha-256 |simple}命令配置该keychain采用 的key-id、密码及其认证算法,必须保证本端和对端的key-id、algorithm、key-string相 同,才能正常地建立TCP连接,交互BGP消息。且BGP Keychain认证与BGP MD5认证互 斥,不能在同一对等体间同时配置。

配置BGP Keychain认证的方法是在BGP视图下使用peer {ipv4-address | groupname |ipv6-address} keychain keychain-name命令进行的。命令中的ipv4-address | groupname| ipv6-address用来指定要进行Keychain认证的对等体IP地址或对等体组名称,参数keychainname用来指定所采用的Keychain名称,1~47个字符,区分大小写,不支持空格。配置 BGP Keychain认证前,必须先配置keychain-name参数对应的Keychain。

以上就是本章的全部内容了,感谢大家的浏览观看!文章若有错误或疑问可联系博主删除更改。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/917037.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/917037.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

商旅平台怎么选?如何规避商旅流程中的违规风险?

在中大型企业的商旅管理中,一个典型的管理“黑洞”——流程漏洞与超标正持续吞噬企业成本与管理效能:差标混乱、审批脱节让超规订单频频闯关,不仅让企业商旅成本超支,还可能引发税务稽查风险。隐性的合规风险,比如虚假…

Anaconda的常用命令

Anaconda 是一个用于科学计算、数据分析和机器学习的 Python 发行版,包含了大量的预安装包。它配有 conda 命令行工具,方便用户管理包和环境。以下是一些常用的 conda 命令和 Anaconda 的常见操作命令,帮助你高效管理环境和包。1. 环境管理创…

JVM之【Java虚拟机概述】

目录 对JVM的理解 JVM的架构组成 类加载系统 执行引擎 运行时数据区 垃圾收集系统 本地方法库 对JVM的理解 JVM保证了Java程序的执行,同时也是Java语言具有跨平台性的根本原因;Java源代码通过javac等前端编译器生成的字节码计算机并不能识别&…

RabbitMQ+内网穿透远程访问教程:实现异地AMQP通信+Web管理

RabbitMQ是一个开源的消息队列中间件,基于Erlang开发,遵循AMQP(Advanced Message Queuing Protocol,高级消息队列协议)标准,主要用于实现异步通信、消息解耦和系统间数据传输。它的核心作用是在分布式系统中…

go 语言 timer 与 ticker理论和实例大全

目录 1. 时间之门的钥匙:Timer与Ticker的本质 2. Timer:精准的单次计时 2.1 Timer的基础用法 2.2 停止与重置Timer 2.3 Timer的高级技巧:优雅处理并发 3. Ticker:时间的节拍器 3.1 Ticker的基本用法 3.2 Ticker的高级应用:动态调整周期 4. Timer与Ticker的结合:打…

MySQL 45讲 16-17

全字段排序 explain 中的 using fiesort ,扫描 数据,取出符合判断条件的 数据,到sort buffer中,然后对排序字段采用快速排序进行 排序后直接将 所需字段进行返回 如果 字段长度所占内存大于所分配 的sort buffer ,需要借助 临时文件 进行 数据的存放排序,此时会采用 归并排序,将…

QT项目 -仿QQ音乐的音乐播放器(第四节)

一、RecBox中btUp和btDown按钮clicked处理 选中左右键(btUp和btDown按钮)然后右击转到槽->click() void RecBox::on_btUp_clicked() {}void RecBox::on_btDown_clicked() {} 二、imageList中图片分组 // recbox.h 中新增 int currentIndex; // 标记…

DeepSeek SEO关键词优化提升流量增长

内容概要DeepSeek SEO关键词优化致力于通过科学的方法,显著提升网站在搜索引擎中的可见度与自然流量。其核心在于深入理解并精准匹配用户的真实搜索意图,而非仅仅堆砌词汇。具体来说,该策略运用深度意图导向策略,确保内容与用户需…

# Ubuntu 系统设置 USB PnP 音频设备为默认设备的完整教程

Ubuntu 系统设置 USB PnP 音频设备为默认设备的完整教程 在使用 Ubuntu 系统时,尤其是在嵌入式设备如 NVIDIA Jetson 系列上,我们经常需要将 USB PnP 音频设备设置为默认设备。本文将详细介绍如何通过命令行配置,使 USB PnP 音频设备在系统重…

Hadoop JMX 配置的完整文档

一、JMX 基础概念与 Hadoop 支持 1、JMX 作用。 Java Management Extensions(JMX)提供标准 API 监控 JVM 应用运行时状态(内存、线程、GC)及 Hadoop 组件指标(HDFS 容量、RPC 性能、节点状态) 2、Hadoop 组…

arm架构系统打包qt程序--麒麟操作系统为例

检查系统架构 uname -a如果显示是aarch644或arm64,说明你使用的是ARM架构,,需要下载ARM版本。 下载对应架构的linuxdeployqt 编写脚本 vim deploy.sh#!/bin/bash APP_NAME"sunny450_silc"# 确保deploy目录存在 mkdir -p deploy# 复…

Kong API Gateway深度解析:插件系统与微服务架构的技术基石

在微服务(microservices)架构主导的今天,API网关(API Gateway)作为服务入口的“交通枢纽”,承担着流量调度、安全防护、可观测性(observability)等核心职责。Kong作为开源API网关领域…

Linux应用开发基础知识——Makefile初级教程(九)

目录 一、Makefile是啥? 1.1、了解几种文件(.o 文件和.c文件 ) 1.2、关于Makefile的写法 1.3、简单使用Makefile基本指令 1.4、引入伪目标 1.5、Makefile的优点 1.6、Makefile的使用 二、Makefile创建和使用变量 2.1、创建变量的目的…

面试问题收集——卷积神经网络

博主会经常分享自己在人工智能阶段的学习笔记,欢迎大家访问我滴个人博客!(养成系Blog!) 小牛壮士滴Blog~ - 低头赶路 敬事如仪https://kukudelin.top/ 01-卷积基础知识 问:简述卷积基本操作,…

Kubernetes 全面解析:从基础设施变革到核心架构详解

引言在容器化技术席卷全球的今天,Kubernetes(简称 K8s)已成为容器编排领域的事实标准。无论是互联网企业还是传统行业,都在通过 Kubernetes 实现应用的高效部署、弹性扩展和自动化运维。但对于初学者而言,Kubernetes 的…

哈希相关的模拟实现

哈希相关的模拟实现哈希表的模拟实现闭散列除留取余法查找、插入和删除闭散列参考程序开散列除留取余法(数组链表)迭代器查找和删除插入开散列参考程序unordered_map和unordered_set的模拟实现unordered_mapunordered_set建议先看 哈希的概念及其应用-CS…

Vue3+Vite项目如何简单使用tsx

安装必要的依赖npm install vitejs/plugin-vue-jsx -D在 vite.config.ts 中添加以下内容import vueJsx from vitejs/plugin-vue-jsx export default {plugins: [vueJsx()] }在Vue页面使用<script lang"ts"> import { defineComponent } from vue export defaul…

05百融云策略引擎项目交付-laravel实战完整交付定义常量分文件配置-独立建立lib类处理-成功导出pdf-优雅草卓伊凡

05百融云策略引擎项目交付-laravel实战完整交付定义常量分文件配置-独立建立lib类处理-成功导出pdf-优雅草卓伊凡引言此前只是把关于如何把查询内容导出pdf库的代码实现了&#xff0c;但是我们并没有完成整个项目&#xff0c;这最后一个步骤就是安装composer再安装tcpdf库&…

模型训练速度慢排查

一、nvidia-smi 查看 GPU 的利用率与显存。若 GPU 利用率低或波动&#xff0c;说明 CPU 处理数据的速度跟不上 GPU 计算的速度&#xff0c;需要检查数据传输并调整 num_workers&#xff1b;若 GPU 显存充足&#xff0c;可以逐步增加 batch_size_per_card 直至显存占满&#xff…

STM32学习记录--Day4

今天了解了一下SPI总线&#xff1a;1.SPI内部结构​​&#x1f50c; SPI 四大核心引脚功能详解​​1. ​​MOSI (Master Output Slave Input)​​​​功能​​&#xff1a;​​主机输出数据线​​​​工作流程​​&#xff1a;主机内部发送数据寄存器 (TxDR) 的数据 → 移位寄存…