jjzjj

玩转华为ENSP模拟器系列 | IPSec网关主备双机热备

COCOgsta 2023-10-15 原文

素材来源:华为防火墙配置指南

一边学习一边整理试验笔记,并与大家分享,侵权即删,谢谢支持!

附上汇总贴:玩转华为ENSP模拟器系列 | 合集_COCOgsta的博客-CSDN博客_华为模拟器实验


目标

建立IPSec隧道的一端使用两台设备进行双机热备,可以将IPSec的配置信息、隧道建立信息等从主设备备份到备用设备上,保证即使主设备断开后隧道也不会拆除,提高了网络的可靠性。

组网需求

图1所示,公司总部(HQ)通过FW_A和FW_B接入外网。分支机构(Branch)员工使用FW_C接入总部。要求实现分支机构安全访问IPSec保护的总部内网服务器。公司由多个分支机构组成,此举例中只以其中一个为例,其网关为FW_C。为提高网络可靠性,FW_A和FW_B配置组成主备方式的双机热备,其上下行设备均是交换机。

配置思路

  1. 配置FW_A和FW_B的双机热备功能。
  1. 配置FW_A的安全策略和IPSec业务。 FW_A和FW_B的双机热备功能启用以后,FW_A的安全策略和IPSec业务将会自动备份到FW_B。
  1. 在FW_C上配置IPSec隧道。

操作步骤

  1. 配置FW_A(总部)和FW_B(总部)的双机热备功能。

    1. 配置各接口的IP地址,并将接口加入相应的安全区域。
    2. <sysname> system-view
      [sysname] sysname FW_A
      [FW_A] interface gigabitethernet 1 / 0 / 1
      [FW_A-GigabitEthernet1/0/1] ip address 10.10.0.1  24
      [FW_A-GigabitEthernet1/0/1] quit
      [FW_A] interface gigabitethernet 1 / 0 / 2
      [FW_A-GigabitEthernet1/0/2] ip address 1.1.1.2  24
      [FW_A-GigabitEthernet1/0/2] quit
      [FW_A] interface gigabitethernet 1 / 0 / 3
      [FW_A-GigabitEthernet1/0/3] ip address 10.3.0.3  24
      [FW_A-GigabitEthernet1/0/3] quit
      [FW_A] firewall zone trust
      [FW_A-zone-trust] add interface gigabitethernet 1 / 0 / 3
      [FW_A-zone-trust] quit
      [FW_A] firewall zone untrust
      [FW_A-zone-untrust] add interface gigabitethernet 1 / 0 / 2
      [FW_A-zone-untrust] quit
      [FW_A] firewall zone dmz
      [FW_A-zone-dmz] add interface gigabitethernet 1 / 0 / 1
      [FW_A-zone-dmz] quit
      复制代码
    3. 在FW_A上配置VRRP备份组。
    4. [FW_A] interface gigabitethernet 1 / 0 / 2
      [FW_A-GigabitEthernet1/0/2] vrrp vrid 2 virtual-ip 1.1.1.1  24 active
      [FW_A-GigabitEthernet1/0/2] quit
      [FW_A] interface gigabitethernet 1 / 0 / 3
      [FW_A-GigabitEthernet1/0/3] vrrp vrid 1 virtual-ip 10.3.0.2  24 active
      [FW_A-GigabitEthernet1/0/3] quit
      复制代码
    5. 在FW_A上指定心跳口并启用双机热备功能。
    6. [FW_A] hrp interface gigabitethernet 1 / 0 / 1 remote 10.10.0.2
      [FW_A] hrp enable
      复制代码
    7. 完成FW_B的配置,建立双机热备状态。
    8.   # FW_B和上述FW_A的配置基本相同,不同之处在于:
    9. FW_B各接口的IP地址与FW_A各接口的IP地址不相同。
    10. FW_B的业务接口GE1/0/2和GE1/0/3的VRRP备份组需要加入状态为Standby的VGMP组。
  1. 在FW_A上配置安全策略和IPSec业务。

    1. 配置安全策略。

      1. 配置Trust域与Untrust域的安全策略,允许封装前和解封后的报文能通过FW_A。
      2. [FW_A] security-policy
        [FW_A-policy-security] rule name policy_ipsec_1
        [FW_A-policy-security-rule-policy_ipsec_1] source-zone trust
        [FW_A-policy-security-rule-policy_ipsec_1] destination-zone untrust
        [FW_A-policy-security-rule-policy_ipsec_1] source-address 10.3.0.0  24
        [FW_A-policy-security-rule-policy_ipsec_1] destination-address 10.4.1.0  24 
        [FW_A-policy-security-rule-policy_ipsec_1] action permit
        [FW_A-policy-security-rule-policy_ipsec_1] quit
        [FW_A-policy-security] rule name policy_ipsec_2
        [FW_A-policy-security-rule-policy_ipsec_2] source-zone untrust
        [FW_A-policy-security-rule-policy_ipsec_2] destination-zone trust
        [FW_A-policy-security-rule-policy_ipsec_2] source-address 10.4.1.0  24 
        [FW_A-policy-security-rule-policy_ipsec_2] destination-address 10.3.0.0  24 
        [FW_A-policy-security-rule-policy_ipsec_2] action permit
        [FW_A-policy-security-rule-policy_ipsec_2] quit
        复制代码
      3. 配置Local域与Untrust域的安全策略,允许IKE协商报文能正常通过FW_A。
      4. [FW_A-policy-security] rule name policy_ipsec_3
        [FW_A-policy-security-rule-policy_ipsec_3] source-zone local
        [FW_A-policy-security-rule-policy_ipsec_3] destination-zone untrust
        [FW_A-policy-security-rule-policy_ipsec_3] source-address 1.1.1.1  32 
        [FW_A-policy-security-rule-policy_ipsec_3] destination-address 4.4.4.4  32
        [FW_A-policy-security-rule-policy_ipsec_3] action permit
        [FW_A-policy-security-rule-policy_ipsec_3] quit
        [FW_A-policy-security] rule name policy_ipsec_4
        [FW_A-policy-security-rule-policy_ipsec_4] source-zone untrust
        [FW_A-policy-security-rule-policy_ipsec_4] destination-zone local
        [FW_A-policy-security-rule-policy_ipsec_4] source-address 4.4.4.4  32 
        [FW_A-policy-security-rule-policy_ipsec_4] destination-address 1.1.1.1  32
        [FW_A-policy-security-rule-policy_ipsec_4] action permit
        [FW_A-policy-security-rule-policy_ipsec_4] quit
        [FW_A-policy-security] quit
        复制代码
    2. 配置FW_A的路由。

    3.   # 配置一条缺省路由,下一跳为1.1.1.254。

    4. [FW_A] ip route- static  0.0.0.0  0.0.0.0  1.1.1.254
      复制代码
    5.   # 配置到达分支机构内网的路由,下一跳为1.1.1.254。

    6. [FW_A] ip route- static  10.4.1.0  255.255.255.0  1.1.1.254
      复制代码
    7. 配置FW_A的IPSec隧道。

      1. 配置访问控制列表,定义需要保护的数据流。
      2. [FW_A] acl 3000
        [FW_A-acl-adv-3000] rule 5 permit ip source 10.3.0.0  0.0.0.255 destination 10.4.1.0  0.0.0.255
        [FW_A-acl-adv-3000] quit
        复制代码
      3. 配置序号为10的IKE安全提议。
      4. [FW_A] ike proposal 10
        [FW_A-ike-proposal-10] quit
        复制代码
      5. 配置IKE Peer。
      6. [FW_A] ike peer any
        [FW_A-ike-peer-any] ike-proposal 10
        [FW_A-ike-peer-any] pre-shared-key Admin @ 123
        [FW_A-ike-peer-any] quit
        复制代码
      7. 配置名称为tran1的IPSec安全提议。
      8. [FW_A] ipsec proposal tran1
        [FW_A-ipsec-proposal-tran1] encapsulation-mode tunnel
        [FW_A-ipsec-proposal-tran1] transform esp
        [FW_A-ipsec-proposal-tran1] esp authentication-algorithm sha2- 256
        [FW_A-ipsec-proposal-tran1] esp encryption-algorithm aes- 256
        [FW_A-ipsec-proposal-tran1] quit
        复制代码
      9. 配置策略模板policy1,并在IPSec安全策略组map1中引用该策略模板。
      10. [FW_A] ipsec policy-template policy1 1
        [FW_A-ipsec-policy-templet-policy1-1] security acl 3000
        [FW_A-ipsec-policy-templet-policy1-1] proposal tran1
        [FW_A-ipsec-policy-templet-policy1-1] ike-peer any
        [FW_A-ipsec-policy-templet-policy1-1] quit
        [FW_A] ipsec policy map1 10 isakmp template policy1
        复制代码
      11. 在出接口GE1/0/2上应用安全策略组map1。
      12. [FW_A] interface gigabitethernet 1 / 0 / 2
        [FW_A-GigabitEthernet1/0/2] ipsec policy map1
        [FW_A-GigabitEthernet1/0/2] quit
        复制代码
  1. 在FW_B上配置路由。

配置一条缺省路由,下一跳为1.1.1.254。

HRP_S[FW_B] ip route- static  0.0.0.0  0.0.0.0  1.1.1.254
复制代码

配置到达分支机构内网的路由,下一跳为1.1.1.254。

HRP_S[FW_B] ip route- static  10.4.1.0  255.255.255.0  1.1.1.254
复制代码
  1. 配置FW_C(分支)。

    1. 配置接口IP地址。

    2. <sysname> system-view
      [sysname] sysname FW_C
      [FW_C] interface gigabitethernet 1 / 0 / 3
      [FW_C-GigabitEthernet1/0/3] ip address 10.4.1.1  24
      [FW_C-GigabitEthernet1/0/3] quit
      [FW_C] interface gigabitethernet 1 / 0 / 1
      [FW_C-GigabitEthernet1/0/1] ip address 4.4.4.4  24
      [FW_C-GigabitEthernet1/0/1] quit
      复制代码
    3. 配置接口加入相应安全区域。

    4. [FW_C] firewall zone trust
      [FW_C-zone-trust] add interface gigabitethernet 1 / 0 / 3
      [FW_C-zone-trust] quit
      [FW_C] firewall zone untrust
      [FW_C-zone-untrust] add interface gigabitethernet 1 / 0 / 1
      [FW_C-zone-untrust] quit
      复制代码
    5. 配置安全策略。

      1. 配置Trust域与Untrust域的安全策略,允许封装前和解封后的报文能通过FW_C。
      2. [FW_C] security-policy
        [FW_C-policy-security] rule name policy_ipsec_1
        [FW_C-policy-security-rule-policy_ipsec_1] source-zone trust
        [FW_C-policy-security-rule-policy_ipsec_1] destination-zone untrust
        [FW_C-policy-security-rule-policy_ipsec_1] source-address 10.4.1.0  24
        [FW_C-policy-security-rule-policy_ipsec_1] destination-address 10.3.0.0  24 
        [FW_C-policy-security-rule-policy_ipsec_1] action permit
        [FW_C-policy-security-rule-policy_ipsec_1] quit
        [FW_C-policy-security] rule name policy_ipsec_2
        [FW_C-policy-security-rule-policy_ipsec_2] source-zone untrust
        [FW_C-policy-security-rule-policy_ipsec_2] destination-zone trust
        [FW_C-policy-security-rule-policy_ipsec_2] source-address 10.3.0.0  24 
        [FW_C-policy-security-rule-policy_ipsec_2] destination-address 10.4.1.0  24
        [FW_C-policy-security-rule-policy_ipsec_2] action permit
        [FW_C-policy-security-rule-policy_ipsec_2] quit
        复制代码
      3. 配置Local域与Untrust域的安全策略,允许IKE协商报文能正常通过FW_C。
      4. [FW_C-policy-security] rule name policy_ipsec_3
        [FW_C-policy-security-rule-policy_ipsec_3] source-zone local
        [FW_C-policy-security-rule-policy_ipsec_3] destination-zone untrust
        [FW_C-policy-security-rule-policy_ipsec_3] source-address 4.4.4.4  32 
        [FW_C-policy-security-rule-policy_ipsec_3] destination-address 1.1.1.1  32
        [FW_C-policy-security-rule-policy_ipsec_3] action permit
        [FW_C-policy-security-rule-policy_ipsec_3] quit
        [FW_C-policy-security] rule name policy_ipsec_4
        [FW_C-policy-security-rule-policy_ipsec_4] source-zone untrust
        [FW_C-policy-security-rule-policy_ipsec_4] destination-zone local
        [FW_C-policy-security-rule-policy_ipsec_4] source-address 1.1.1.1  32 
        [FW_C-policy-security-rule-policy_ipsec_4] destination-address 4.4.4.4  32
        [FW_C-policy-security-rule-policy_ipsec_4] action permit
        [FW_C-policy-security-rule-policy_ipsec_4] quit
        [FW_C-policy-security] quit
        复制代码
    6. 配置FW_C的路由。

    7.   # 配置一条缺省路由,下一跳为4.4.4.254。

    8. [FW_C] ip route- static  0.0.0.0  0.0.0.0  4.4.4.254
      复制代码
    9.   # 配置到达总部内网的路由,下一跳为4.4.4.254。

    10. [FW_C] ip route- static  10.3.0.0  255.255.255.0  4.4.4.254
      复制代码
    11. 配置FW_C的IPSec隧道。

      1. 配置访问控制列表,定义需要保护的数据流。
      2. [FW_C] acl 3000 
        [FW_C-acl-adv-3000] rule 5 permit ip source 10.4.1.0  0.0.0.255 destination 10.3.0.0  0.0.0.255
        [FW_C-acl-adv-3000] quit
        复制代码
      3. 配置序号为10的IKE安全提议。
      4. [FW_C] ike proposal 10
        [FW_C-ike-proposal-10] quit
        复制代码
      5. 配置IKE Peer。
      6. [FW_C] ike peer a
        [FW_C-ike-peer-a] ike-proposal 10
        [FW_C-ike-peer-a] remote-address 1.1.1.1
        [FW_C-ike-peer-a] pre-shared-key Admin @ 123
        [FW_C-ike-peer-a] quit
        复制代码
      7. 配置名称为tran1的IPSec安全提议。
      8. [FW_C] ipsec proposal tran1
        [FW_C-ipsec-proposal-tran1] encapsulation-mode tunnel
        [FW_C-ipsec-proposal-tran1] transform esp
        [FW_C-ipsec-proposal-tran1] esp authentication-algorithm sha2- 256
        [FW_C-ipsec-proposal-tran1] esp encryption-algorithm aes- 256
        [FW_C-ipsec-proposal-tran1] quit
        复制代码
      9. 配置IPSec安全策略组map1。
      10. [FW_C] ipsec policy map1 10 isakmp
        [FW_C-ipsec-policy-isakmp-map1-10] security acl 3000
        [FW_C-ipsec-policy-isakmp-map1-10] proposal tran1
        [FW_C-ipsec-policy-isakmp-map1-10] ike-peer a
        [FW_C-ipsec-policy-isakmp-map1-10] quit
        复制代码
      11. 在出接口GE1/0/1上应用安全策略组map1。
      12. [FW_C] interface gigabitethernet 1 / 0 / 1
        [FW_C-GigabitEthernet1/0/1] ipsec policy map1
        [FW_C-GigabitEthernet1/0/1] quit
        复制代码
  1. 配置交换机。 将图1中交换机的各接口加入到同一个VLAN。 具体配置命令请参考交换机的相关文档。

结果验证

  1. 分支机构10.4.1.0/24网段的内网设备访问总部10.3.0.0/24网段服务器,可以访问成功。
  1. 在FW_A和FW_B上执行display ike sadisplay ipsec sa命令,IPSec SA表项生成说明IPSec隧道建立成功且隧道备份成功。
  1. 将FW_A的GE1/0/3接口或GE1/0/2接口断开,业务可以正常切换到FW_B。

有关玩转华为ENSP模拟器系列 | IPSec网关主备双机热备的更多相关文章

  1. ruby - 如何模拟 Net::HTTP::Post? - 2

    是的,我知道最好使用webmock,但我想知道如何在RSpec中模拟此方法:defmethod_to_testurl=URI.parseurireq=Net::HTTP::Post.newurl.pathres=Net::HTTP.start(url.host,url.port)do|http|http.requestreq,foo:1endresend这是RSpec:let(:uri){'http://example.com'}specify'HTTPcall'dohttp=mock:httpNet::HTTP.stub!(:start).and_yieldhttphttp.shou

  2. 华为OD机试用Python实现 -【明明的随机数】 2023Q1A - 2

    华为OD机试题本篇题目:明明的随机数题目输入描述输出描述:示例1输入输出说明代码编写思路最近更新的博客华为od2023|什么是华为od,od薪资待遇,od机试题清单华为OD机试真题大全,用Python解华为机试题|机试宝典【华为OD机试】全流程解析+经验分享,题型分享,防作弊指南华为o

  3. 华为常用命令 - 2

    system-view进入系统视图quit退到系统视图sysname交换机命名vlan20创建vlan(进入vlan20)displayvlan显示vlanundovlan20删除vlan20displayvlan20显示vlan里的端口20Interfacee1/0/24进入端口24portlink-typeaccessvlan20把当前端口放入vlan20undoporte1/0/10删除当前VLAN端口10displaycurrent-configuration显示当前配置02配置交换机支持TELNETinterfacevlan1进入VLAN1ipaddress192.168.3.100

  4. ruby-on-rails - 在这种情况下我如何模拟一个对象?没有明显的方法可以用模拟替换对象 - 2

    假设我在Store的模型中有这个非常简单的方法:defgeocode_addressloc=Store.geocode(address)self.lat=loc.latself.lng=loc.lngend如果我想编写一些不受地理编码服务影响的测试脚本,这些脚本可能已关闭、有限制或取决于我的互联网连接,我该如何模拟地理编码服务?如果我可以将地理编码对象传递到该方法中,那将很容易,但我不知道在这种情况下该怎么做。谢谢!特里斯坦 最佳答案 使用内置模拟和stub的rspecs,你可以做这样的事情:setupdo@subject=MyCl

  5. ruby - "public/protected/private"方法是如何实现的,我该如何模拟它? - 2

    在ruby中,你可以这样做:classThingpublicdeff1puts"f1"endprivatedeff2puts"f2"endpublicdeff3puts"f3"endprivatedeff4puts"f4"endend现在f1和f3是公共(public)的,f2和f4是私有(private)的。内部发生了什么,允许您调用一个类方法,然后更改方法定义?我怎样才能实现相同的功能(表面上是创建我自己的java之类的注释)例如...classThingfundeff1puts"hey"endnotfundeff2puts"hey"endendfun和notfun将更改以下函数定

  6. ruby - 在 RSpec 中 stub /模拟全局常量 - 2

    我有一个gem,它有一个根据Rails.env的不同行为的方法:defself.envifdefined?(Rails)Rails.envelsif...现在我想编写一个规范来测试这个代码路径。目前我是这样做的:Kernel.const_set(:Rails,nil)Rails.should_receive(:env).and_return('production')...没关系,只是感觉很丑。另一种方法是在spec_helper中声明:moduleRails;end而且效果也很好。但也许有更好的方法?理想情况下,这应该有效:rails=double('Rails')rails.sho

  7. ruby-on-rails - rspec 模拟对象属性赋值 - 2

    我有一个rspec模拟对象,一个值赋给了属性。我正在努力在我的rspec测试中满足这种期望。只是想知道语法是什么?代码:defcreate@new_campaign=AdCampaign.new(params[:new_campaign])@new_campaign.creationDate="#{Time.now.year}/#{Time.now.mon}/#{Time.now.day}"if@new_campaign.saveflash[:status]="Success"elseflash[:status]="Failed"endend测试it"shouldabletocreat

  8. ruby - 如何使用 rspec stub /模拟对命令行的调用? - 2

    我正在尝试测试命令行工具的输出。如何使用rspec来“伪造”命令行调用?执行以下操作不起作用:it"shouldcallthecommandlineandreturn'text'"do@p=Pig.new@p.should_receive(:run).with('my_command_line_tool_call').and_return('resulttext')end如何创建stub? 最佳答案 使用newmessageexpectationsyntax:规范/虚拟规范.rbrequire"dummy"describeDummy

  9. 华为OD机试真题 C++ 实现【带传送阵的矩阵游离】【2023 Q2 | 200分】 - 2

            所有题目均有五种语言实现。C实现目录、C++实现目录、Python实现目录、Java实现目录、JavaScript实现目录题目n行m列的矩阵,每个位置上有一个元素你可以上下左右行走,代价是前后两个位置元素值差的绝对值.另外,你最多可以使用一次传送阵(只能从一个数跳到另外一个相同的数)求从走上角走到右下角最少需要多少时间。输入描述:第一行两个整数n,m,分别代表矩阵的行和列。后面n行,每行m个整数,分别代表矩阵中的元素。输出描述:一个整数,表示最少需要多少时间。

  10. 西安华为OD面试体验 - 2

    西安华为OD面试体验开始投简历技术面试进展工作进展开始投简历去年一整年一直在考研和工作之间纠结,感觉自己的状态好像当时的疫情一样差劲。之前刚毕业的时候投了个大厂的简历,结果一面写算法的时候太拉跨了,虽然知道时dfs但是代码熟练度不够,放在平时给足时间自己可以调试通过,但是熟练度不够那面试当时就写不出来被刷了。说真的算法学到后期我感觉最重要的是熟练度和背板子(对于我这种普通玩家来说),面试题如果一上来短时间内想不出思路就完蛋了。然后由于当时找的工作不是很理想就又想考研了。但是考研是有风险的,我自我感觉自己可能冲不上那个学校,而找工作一个没成可以继续找嘛。本着抱着试试看的态度在boss上投了简历,

随机推荐