小霞米 发表于 2024-7-21 10:38
  
一起来学习,一起来学习
taoyb 发表于 2024-7-21 10:38
  
一起来学习,一起来学习
头像被屏蔽
新手741261 发表于 2024-9-5 10:20
  
提示: 作者被禁止或删除 内容自动屏蔽
AF8.0.85替换老型号Juniper防火墙组网分享
  

新手199210270123 3250

{{ttag.title}}
AF8.0.85替换Juniper防火墙
一、项目背景:
       某客户因看中我司AF安全能力,故采购了三台AF替换juniper老防火墙。客户的juniper防火墙分布在三个区域A城、B城、C城,考虑到逐台替换难度较大,所以割接时是三个地方一块替换,均使用我司防火墙进行组网连接。三台juniper防火墙型号为:
A: juniper SRX240
B: juniper SRX240
C: SSG 550M
       项目主要难度在于前期脚本翻译等技术性问题,后期主要是割接路由组网问题,项目涉及老型号Juniper设备防火墙脚本翻译,OSPFBGP以及IPSECVPN



二、前期准备工作
       因涉及到前期juniper设备脚本的翻译,配置较多,翻译难度较大,故花了较长时间,在交付和研发同事的共同努力下完成了脚本的翻译,这里提供部分脚本内容以及里边的字段解释,仅供参考:
项目中涉及到的命令行解释示例:
基础配置部分:
name-sever //DNS配置。
interfaces {
    ge-0/0/3 {
        unit 0 {
            family inet {
                address xx.xx.xx.xx/xx;
            }
        }
}
//防火墙接口配置(interface有可能为lo0为本地环回口配置,为st0则是聚合口配置)。
routing-options {
    static {
        route 0.0.0.0/0 next-hop 121.18.55.161;
//静态(static)路由信息,next-hop为下一跳。
router-id xx.xx.xx.xx/xx;
autonomous-system xxxx;
//本地环回配置,autonomous-systemOSPFAS

BGP部分
bgp:这个部分定义了BGP协议的配置。

metric-out 200
//这个配置设置了BGP出口路由的度量值为200
preference 40
//这个配置设置了BGP路由的优先级为40
local-as xxxx
//这个配置设置了本地AS号为xxxx
group xxxx
//这个部分定义了一个名为"xxxx"BGP邻居组。
type external
//这个配置指定了邻居组的类型为外部。
import  xxxxx
//这个配置指定了导入路由的策略为"xxxx"
export [ 2bgp xxxxx ]
//这个配置指定了导出路由的策略为"2bgp""xxxx"
neighbor  xx.xx.xx.xx
//这个配置指定了邻居的IP地址为xx.xx.xx.xx
peer-as xxxx
//对应的AS号为xxxx
export  abc-def-h
//这个配置指定了导出路由的策略为"abc-def-h"



OSFP协议部分:
Ospf:
//表示这个部分定义了OSPF协议的配置。
export VPN2OSPF
//这个配置指定了导出路由的策略为"VPN2OSPF"
reference-bandwidth 1g
//这个配置设置了参考带宽为1G
area 0.0.0.0
//这个配置定义了OSPF区域0.0.0.0
interface lo0.0
//这个配置指定了接口lo0.0作为OSPF区域0.0.0.0的一部分。
interface st0.0
//这个配置指定了接口st0.0作为OSPF区域0.0.0.0的一部分, passive设置为被动模式。
interface ge-0/0/8.0
//这个配置指定了接口ge-0/0/8.0作为OSPF区域0.0.0.0的一部分,并设置度量值为10

路由映射和访问控制列表:
prefix-list  xxxx
//定义某个访问控制列表的名称,后边可以添加地址段
policy-statement   xxxx
//创建某个路由映射规则,xxxx为规则名称,命令后边一般是路由映射的具体内容,
例如:
    policy-statement 2bgp {
        term ZHZ1 {
            from {
                prefix-list ZHZ;
            }
            then accept;
        }
}

意思是创建了一条名为2bgp的路由映射条目,定义ZHZ1的执行动作(term),内容为匹配到访问控制列表为ZHZ的网段后进行放通处理(accept),若有preference字样为设置路由优先级。

网络对象和区域:
security-zone trust
//安全区,定义名称为trust,类似于我们的内网区域
address-book
//地址池,我们AF的网络对象,后边一般就是跟很多自定义的地址

application tcp445 {
        protocol tcp;
        source-port 0-65535;
        destination-port 445;
    }
//端口组,类似于防火墙的自定义服务对象,后边定义了具体协议、源目端口等信息。
地址转换:
    nat {
        source {
            pool INTERNET {
                address {
                    123.xx.xx.xx/32; 公网地址
                }
            }
            rule-set TtoP {
                from zone trust;
                to zone Public;
                rule source-nat-rule {
                    match {
                        source-address 0.0.0.0/0;
                    }
                    then {
                        source-nat {
                            interface;
                        }
                    }
                }
            }
        }
//源地址转换策略,简单来说就是源区域为trust区域,访问目的区域为public区域,所有的源地址转换为出接口公网地址.

应用控制策略(命令示例):
        from-zone trust to-zone Public {
            policy VPN-data {
                match {
                    source-address any;
                    destination-address any;
                    application any;
                }
                then {
                    permit;
                }
            }
        }
//规则名称:VPN-data,原区域trust,目的区域Public,规则内容为源目地址端口都为any,最终动作为拒绝。(类似于我司AF的默认拒绝策略)


三、最终方案
        在翻译完ABC城三个地方的脚本之后,剩下的就是割接验证,由于是三个地方同时进行割接,故提前和研发同事沟通好了割接方案。方案中涉及两个补丁包,后来合成为一个补丁包,主要解决了两个问题:
1. bgp 不支持通过vpntun口建立邻居
2.traceroute 跟踪路由,经过vpn口后显示*号(应客户要求必须将路由跟踪的*去掉)

改动思路:
1.放开动态路由对vpntun口的引用, bgp 可以通过vpntun建立邻居(因为目前的AF还不支持,客户场景特殊,需要通过vpntun口建立BGP邻居)
2.上送vpn口的icmp差错报文,需要填充反方向flow,使其可以找到正确的session

最终方案确定:OSPF+BGP+ipsecvpn组网
整体方案:
1)ABC三地AF之间建立IPsec VPN隧道,然后通过VPN建立BGP邻居
2)BGP重发布OSPF路由,可根据联网需求,在重发布时配置路由映射,控制对端能拿到的本端内网网段路由;
3)ABC三个地方内部分别跑OSPF(内网使用OSPF,并且OSPF重发布BGP的路由,重发布时配置路由映射,过滤自身内网网段,避免路由冲突
4)客户AF直连了一个国外SDW设备,主要功能就是通过SDW建立VPN隧道,下发BGP路由信息,SDW设备为Aryaka,使用这类设备组网,如果隧道建立不起来,那么路由无法下发,没有路由信息自然国内外的业务也就不通了。


Aryaka设备原理简单介绍:该设备需要通过连公网,然后使用防火墙的公网接口地址与中心端建立IPSEC隧道。值得注意的是,这里只能用特定的公网地址去连接中心端,若接口上有多个公网IP,做源地址转换的时候需要指定转换公网地址。如果后续有接触这种国外的SDW设备,可以了解一下设备工作原理再进行排查,会节省很多时间。


四、总结
   类似于这类国外设备的替换,通常都是比较困难的,尤其是在配置翻译这块,像juniper这样的设备,本身就全是英文,虽然有WEB界面但是找起来也比较困难,如果遇到只有命令行的界面,翻译替换难度就可想而知。建议在替换这类包含多分支组网、复杂的路由环境的设备时,先了解清楚客户的组网拓扑,帮助我们在割接时有更多的思路,也便于理解客户的网络,从而缩短割接时间甚至一次性成功。

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

打赏
9人已打赏

发表新帖
热门标签
全部标签>
西北区每日一问
安全效果
高手请过招
【 社区to talk】
社区新周刊
产品连连看
每日一问
干货满满
技术咨询
标准化排查
GIF动图学习
纪元平台
新版本体验
社区帮助指南
信服课堂视频
功能体验
安装部署配置
解决方案
SDP百科
自助服务平台操作指引
技术盲盒
S豆商城资讯
秒懂零信任
每周精选
畅聊IT
答题自测
专家问答
技术笔记
技术圆桌
在线直播
MVP
网络基础知识
升级
安全攻防
上网策略
测试报告
日志审计
问题分析处理
流量管理
每日一记
运维工具
云计算知识
用户认证
原创分享
sangfor周刊
VPN 对接
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
功能咨询
终端接入
授权
设备维护
资源访问
地址转换
虚拟机
存储
迁移
加速技术
排障笔记本
产品预警公告
玩转零信任
信服圈儿
技术争霸赛
「智能机器人」
追光者计划
深信服技术支持平台
答题榜单公布
2023技术争霸赛专题
通用技术
卧龙计划
华北区拉练
天逸直播
以战代练
技术晨报
山东区技术晨报
文档捉虫活动
齐鲁TV
华北区交付直播
2024年技术争霸赛
北京区每日一练
场景专题
故障笔记
排障那些事
升级&主动服务
高频问题集锦
POC测试案例
全能先锋系列
云化安全能力

本版版主

1
3
10

发帖

粉丝

关注

396
143
63

发帖

粉丝

关注

5
8
7

发帖

粉丝

关注

0
1
0

发帖

粉丝

关注

本版达人

新手61940...

本周建议达人

BGP网络

本周分享达人

BGP网络

本周提问达人