当前位置:   article > 正文

Linux xfrm 框架详解_xfrm 名称来源

xfrm 名称来源

Linux引入XFRM是在不打乱原有的网络协议结构和HOOK点安全架构设计前提下,成功引入了一种基于策略的高扩展性的网络安全架构。

有人会说在HOOK点也能实现IPSEC的问题,为何还要XFRM?!!好问题,但是不是一两句话能把你说明白,只有去设计一安全网络系统才能深深体会到好处。这里就不过多描述。

XFRM 框架数据接收协议(如AH/ESP,与TCP/UDP并列属于4层网络协议)

XFRM 框架数据发送协议(相当于虚拟网卡驱动)

XFRM 框架策略引擎(与策略路由整合再一起)

XFRM的正确读音是transform(转换), 这表示内核协议栈收到的IPsec报文需要经过转换才能还原为原始报文;同样地,要发送的原始报文也需要转换为IPsec报文才能发送出去。

    • 发送数据

skb_buff XFRM 框架策略引擎命中策略(skb_buff明文) -> XFRM 框架数据发送协议处理->再次回到OUT点处理(skb_buff已经加密)->其它网卡驱动发送出去

    • 接收数据

skb_buff PRE点(skb_buff加密)->路由查询 是本地数据 -> XFRM四层协议处理 ->再次回到PRE点处理(skb_buff已经解密)->根据路由转发/本地接收

    • 转发数据

在forward点策略查询,然后根据是否命中策略,决点在POST点后是否加密还是直接发送出去。

    • Ip XFRM命令

用来设置xfrm。xfrm(transform configuration)是一个IP框架,用来转换数据包的格式,也就是使用算法来加密数据包,该框架用作IPsec协议的一部分

  ip xfrm state flush - 刷新状态

  ip xfrm state add - 将新状态添加到xfrm中

  ip xfrm policy add - 将新策略添加到xfrm中

  ip xfrm policy flush - 刷新策略

    • XFRM实例

IPsec中有两个重要概念:安全关联(Security Association)和安全策略(Security Policy),这两类信息都需要存放在内核XFRM。XFRM使用netns_xfrm这个结构来组织这些信息,它也被称为xfrm instance(实例)。从它的名字也可以看出来,这个实例是与network namespace相关的,每个命名空间都有这样的一个实例,实例间彼此独立。所以同一台主机上的不同容器可以互不干扰地使用XFRM。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/814588
推荐阅读
相关标签
  

闽ICP备14008679号