热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

CISCOASA防火墙Failover+multiplecontext详细部署By年糕泰迪[操作系统入门]

一.文章概述本文主要就CISCOASA防火墙的高可用和扩张性进行阐述和部署。再cisco防火墙系列中主要有3种技术来实现高可用和扩张性。分别是Failover,multiplese

CISCO ASA防火墙Failover+multiple context详细部署--By 年糕泰迪[操作系统入门]

一.文章概述
本文主要就CISCO ASA 防火墙的高可用和扩张性进行阐述和部署。再cisco 防火墙系列中主要有3种技术来实现高可用和扩张性。分别是Failover ,multiple security context 和cluster 。
第一个Failover应该是大家最为熟悉的一项技术也是最常用的,它就是Cisco ASA的 HA 技术,有Active/Standby 和 Active/Active 2种模式。这个技术Cisco ASA 绝大部分系列都支持,而且license 也都是base license 即不需要额外去采购许可,实现这一HA技术的门槛也是最低的。AS模式下一台工作另一台备份随时等待接管,AA模式下2台都工作都进行数据转发。
第二个即 multiple security context ,就是翻译过来就是多安全上下文环境,和飞塔 checkpoint 的 domain是一个概念,就是根据需要将一台物理防火墙虚拟成若干台虚拟墙,墙之间相互独立,但他们公用物理墙的硬件配置资源。在某些时候用户业务的多样性和复杂性,一台或者两台物理墙很难满足需求,新采购又会代理额外的成本,这时候使用multiple security context就会带来不错的性价比收益,这一技术license要求也不是很高,ASA的硬件设备也大都支持,不过ASAv 虚拟平台不支持。这个技术通常和上面的Failover一起组合使用才会相辅相成相得益彰,failover保证物理层面的HA,multiple security context 又满足了物理设备的扩展性,堪称完美组合。
第三个就是cluster,就是我们所说的集群,这个技术是把2台以上的设备组成一个集群提供高可用,跟我们的服务器集群差不多是一个概念,这个技术相对接触的比较少,应用场景也不是很多,只有在SLA非常非常非常高的场景下才会投入不菲的成本去组建物理层面集群。正常大多数情况下Failover+multiple context 就已经可以保障业务的良性运转了。
所以这里只说failover和multiple context 2种技术的结合使用。
二.部署实验
因为ASAv虚拟平台不支持多上下文模式部署,所以在EVE-NG种选用ASA8.42的物理机版本,platform是 ASA5512。
本文目的为说明2种技术从零配置开机的部署过程。
部署拓扑图如下:
技术分享图片
本文主要相关的为拓扑中的2台ASA和其上/下联交换机。
1.部署前选取的2台ASA所以配置必须一致,包括cpu/内存/版本/接口数等一系列配置,最好就是2台完全一样的设备,避免一些兼容问题。
2.空配置开机进行配置,这里我们要考虑一下配置哪一个在先,按照技术来讲都可以,2种技术的配置都没有多复杂,最终都可以实现。但是从经验来说,建议先配置Failover再开启多上下文环境,因为在先配置了failover后再去配置多上下文环境的时候,防火墙模式发生变化会重启,这时候2台墙就不会再重新组成failover的状态,需要重新手动刷新下failover的进程才行(no failover &failover)这个也没什么复杂的,单后面的多上下文环境配置只需要配置再主墙,备份墙会自动同步,个人经验只谈,全凭个人喜好。
3.在2台ASA开启multiple context
技术分享图片
在经过2次的回车确认后设备将会重启,
技术分享图片
上面提示内容中有很重要的信息显示,即原来设备种的旧运行配置文件被保存在本机的flash,还有默认生产的 admin context 配置文件也保存在flash中,最后新的运行配置文件也是保存在了flash中。
启动完成后和之前是没什么区别的,
技术分享图片
通过相应命令可以查看,
技术分享图片
在刚开启context的时候我们能用的就是 context admin ,然后system 和null 这2个都是系统自带而且不能修改,所以我们暂时先忽略它们。
4.配置Failover(AS模式)
ASA1配置:
技术分享图片

failover lan unit primary
//设置当前设备为主墙
failover lan interface folink Ethernet5
//指定接口5为lan failover 链路接口 命名为folink这个名字可以随意,好识别就行
failover interface ip folink 169.254.1.1 255.255.255.252 standby 169.254.1.2
//配置folink的本地和对端IP地址,这个一般使用不可通信的地址,我们使用Windows保留的地址
failover link stlink Ethernet6
//可选,单独指定状态链路接口为6口,命名stlink名字同样随意,这个我们也可以不用单独指定,默认适合failover 接口共享
failover interface ip stlink 169.254.2.1 255.255.255.252 standby 169.254.2.2
//对于指定了单独指定了状态链路的接口配置IP,取决于上面是否指定,不指定的话就不需要配置这个。
failover key xxx
//配置双方通信的密钥
failover
//开启failover功能。
PS:记的开启配置了failover接口,默认情况下接口时关闭的。
ASA2配置:
技术分享图片
配置除了
failover lan unit primary 这一条不同外,其他配置完全一致。
在配置完failover后我们检查2台设备的failover状态
ASA1:
技术分享图片
ASA2
技术分享图片
可以看出ASA1当前为active,对端为standby ,配置同步已经完成。ASA2当前状态为Standby,配置也已经同步完成,这就说明failover建立成功。
这里可以看到当failover建立以后ASA2会自动同步ASA1的所以配置,所以此时ASA2内部的hostname也显示ASA1,为了便于识别我们可以在ASA2中修改hostname。但是在备机中修改的配置不会同步到ASA1,而主机中后续的配置还是会同步给备机,说明这种同步应该时增量更新同步,而非全同步。
技术分享图片
failover 的配置就结束了,对于failover参数的调优不在这里进行说明,官方文档有详细解释,后续会对failover官方指导文档进行翻译笔记。下面进行多上下文环境的具体配置。
5.multiple context 具体配置
这里模拟的场景为,将物理墙虚拟出2个墙,一个用户正常用户访问我们命名为USERS,另一个用于DMZ管理。
ASA1配置:

在开启了multiple context后接下来要做的时定义物理管理资源分配class,这就就是对物理管理资源使用的一个分配限制,不同的context(虚拟墙)根据业务需要将其管理资源使用限制在一个class中。这里同样不进行自定义我们先使用default class ,在开启multiple context后system configuration 中会自动生成,详细定义后续会对官方文档做翻译笔记。
限制的资源类型有以下类型,
技术分享图片
默认的default class 配置为:
技术分享图片
接下来就进入正题了,开机配置security context,也就是新建虚拟墙了。
对于security context ,admin context 时必须要有的,这个admin context 和其他一般context没有什么区别也同样可以作为一个虚拟墙来使用,在开启多上下文环境的时候,系统就自动生产了,在我们不对其修改的前提下我们是不需要进行调整或者新建的。但是这个admin context 拥有除system之外的最高权限。
在定义一个虚拟墙的过程中有一下几个步骤:
1/命名
2/分配这个虚拟墙需要使用的物理接口,可以和其他虚拟墙共享物理接口。
3/指定该虚拟墙的配置文件存放路径,可以指定本地也可以网络存储
4/可选,自定义分配class,默认会选择default class
5/可选,分配虚拟IPS传感器
6/可选,如果failover是AA模式,则需要将该context 加入到failover group中
7/可选,选择是否需要开启cisco cloud web 安全功能。

具体配置:
创建context 名称为USERS
技术分享图片
对USERS的虚拟墙分配物理接口:
技术分享图片
指定该虚拟墙配置文件存放位置:
技术分享图片
到这里USERS 虚拟墙就配置完成了。
但对于这个墙中映射的接口只有在配置nameif 的时候,接口mac地址才会离开生成,下面的命令可以让映射的接口自动生成mac地址:
技术分享图片
当前我们配置完毕以后所处在界面还是物理墙界面,想要切换到我们新建了的USERS 虚拟墙,可以使用如下命令:
技术分享图片
这样就进入到了我们新建的虚拟墙USERS中了,可以看到当前位置为ASA1/USERS,到这里以后我们就可以USERS这个虚拟墙看作是一个普通的墙来操作。
同样对ASA1的context USERS新建操作也会通过failover同步到ASA2中,
技术分享图片
虚拟墙USERS到这里就建立完毕了,可以开始表演了。
接下来我们再用同样的方式新建另一个墙DMZ,
再切回到system模式中,
技术分享图片
新建DMZ虚拟墙
技术分享图片
技术分享图片
DMZ墙也建立完成了。
查看当前物理墙建立虚拟墙的基本分配情况:
技术分享图片
挡墙物理墙有3个虚拟墙,admin我们没有分配接口,所以可用的虚拟墙有2个class都为default ,分配的物理接口情况也可以看出来。
技术分享图片
虚拟墙DMZ中的初始running-config配置,这里可以看出唯一的区别就是接口名称是我们在新建的时候和实际的物理接口映射的名称。
我们怎么知道挡墙虚拟机中映射的接口对应的是那个实际的物理接口呢,可以通过查看接口得知,
技术分享图片
PS:在新建完虚拟墙或者新建前要把映射的物理接口开启了,否则在即使在虚拟墙对应的接口下no shutdown ,也是不会生效的。
到这里我们在failover模式下2个虚拟墙的建立就全部完成了。
三.配置验证
1.对USERS虚拟墙进行配置演示
配置
ASA1/USERS(config)# show running-config
: Saved
:
ASA Version 8.4(2)
!
hostname USERS
enable password 8Ry2YjIyt7RRXU24 encrypted
passwd 2KFQnbNIdI.2KYOU encrypted
names
!
interface int1
nameif outside1
security-level 0
ip address 100.100.100.1 255.255.255.252
!
interface int2
nameif outside2
security-level 0
ip address 200.200.200.1 255.255.255.252
!
interface int3
nameif inside1
security-level 100
ip address 10.10.10.1 255.255.255.0
!
interface int4
nameif inside2
security-level 100
ip address 10.10.20.1 255.255.255.0
!
interface mgmt0
nameif Mgmt
security-level 100
ip address 192.168.70.200 255.255.255.0
!
object network USERS
subnet 10.0.0.0 255.0.0.0
access-list inside1_in extended permit icmp any any
access-list inside1_in extended permit ip object USERS any
access-list outside1_in extended permit icmp any any
pager lines 24
mtu outside1 1500
mtu outside2 1500
mtu inside1 1500
mtu inside2 1500
mtu Mgmt 1500
icmp unreachable rate-limit 1 burst-size 1
no asdm history enable
arp timeout 14400
nat (inside1,outside1) source dynamic USERS interface
route outside1 0.0.0.0 0.0.0.0 100.100.100.2 1
route outside2 0.0.0.0 0.0.0.0 200.200.200.2 10
route inside1 10.0.0.0 255.0.0.0 10.10.10.2 1
route inside2 10.0.0.0 255.0.0.0 10.10.20.2 10
timeout xlate 3:00:00
timeout conn 1:00:00 half-closed 0:10:00 udp 0:02:00 icmp 0:00:02
timeout sunrpc 0:10:00 h323 0:05:00 h225 1:00:00 mgcp 0:05:00 mgcp-pat 0:05:00
timeout sip 0:30:00 sip_media 0:02:00 sip-invite 0:03:00 sip-disconnect 0:02:00
timeout sip-provisional-media 0:02:00 uauth 0:05:00 absolute
timeout tcp-proxy-reassembly 0:01:00
timeout floating-conn 0:00:00
user-identity default-domain LOCAL
http server enable
http 192.168.70.0 255.255.255.0 Mgmt
no snmp-server location
no snmp-server contact
telnet timeout 5
ssh timeout 5
no threat-detection statistics tcp-intercept
!
class-map inspection_default
match default-inspection-traffic
!
!
policy-map type inspect dns migrated_dns_map_1
parameters
message-length maximum client auto
message-length maximum 512
policy-map global_policy
class inspection_default
inspect dns migrated_dns_map_1
inspect ftp
inspect h323 h225
inspect h323 ras
inspect ip-options
inspect netbios
inspect rsh
inspect rtsp
inspect skinny
inspect esmtp
inspect sqlnet
inspect sunrpc
inspect tftp
inspect sip
inspect xdmcp
!
service-policy global_policy global
Cryptochecksum:49e80afb8d52b8a3602b055e84a72730
: end
ASA1/USERS(config)#
上述配置补充说明,本来计划根据拓扑的结构对于USERS虚拟墙要实现双出口切换,下联口自动切换的模拟演练,但在操作过程中无奈发现这个8.4版本具体没有track和sla指令(官网文档却有...),所以就只是把基础配置先放在这里,同样也可以看出来,除了接口名称外,其他和实际的物理墙配置没有区别。

CISCO ASA防火墙Failover+multiple context详细部署--By 年糕泰迪

原文:https://blog.51cto.com/pinglife/2509837


推荐阅读
  • 在 Linux 系统中,`/proc` 目录实现了一种特殊的文件系统,称为 proc 文件系统。与传统的文件系统不同,proc 文件系统主要用于提供内核和进程信息的动态视图,通过文件和目录的形式呈现。这些信息包括系统状态、进程细节以及各种内核参数,为系统管理员和开发者提供了强大的诊断和调试工具。此外,proc 文件系统还支持实时读取和修改某些内核参数,增强了系统的灵活性和可配置性。 ... [详细]
  • 欢迎来到Netgen新时代:探索网络生成技术的无限可能
    欢迎进入Netgen的新时代:探索网络生成技术的无限潜力。本文将详细介绍如何编译下载的Netgen源代码,生成Netgen程序,并提供开发所需的库nglib。此外,还将探讨Netgen在现代网络设计与仿真中的应用前景,以及其在提高网络性能和可靠性方面的关键作用。 ... [详细]
  • JVM参数设置与命令行工具详解
    JVM参数配置与命令行工具的深入解析旨在优化系统性能,通过合理设置JVM参数,确保在高吞吐量的前提下,有效减少垃圾回收(GC)的频率,进而降低系统停顿时间,提升服务的稳定性和响应速度。此外,本文还将详细介绍常用的JVM命令行工具,帮助开发者更好地监控和调优JVM运行状态。 ... [详细]
  • 在2020年8月19日的深度分析中,我们探讨了HTML标签中同时存在`a`标签的`href`和`onclick`属性时的触发顺序问题。此外,还讨论了如何在一个自适应高度的父级`div`中,使两个子`div`中的一个固定高度为300px,另一个自动填充剩余空间的方法。最后,文章详细介绍了JavaScript异步加载的多种实现方式,包括但不限于`async`、`defer`属性以及动态脚本插入技术,为开发者提供了丰富的技术参考。 ... [详细]
  • Java 零基础入门:SQL Server 学习笔记(第21篇)
    Java 零基础入门:SQL Server 学习笔记(第21篇) ... [详细]
  • OPPO PFUM10实际上是OPPO A96的型号名称。这款手机于2022年1月发布,配备了一块6.43英寸的OLED显示屏,并搭载了高通骁龙695 5G处理器,采用6纳米工艺制造。此外,OPPO A96还拥有出色的续航能力和流畅的系统体验,适合日常使用和娱乐需求。 ... [详细]
  • 如何创建和使用快捷链接:掌握打开链接的快捷方式技巧 ... [详细]
  • Django框架下的对象关系映射(ORM)详解
    在Django框架中,对象关系映射(ORM)技术是解决面向对象编程与关系型数据库之间不兼容问题的关键工具。通过将数据库表结构映射到Python类,ORM使得开发者能够以面向对象的方式操作数据库,从而简化了数据访问和管理的复杂性。这种技术不仅提高了代码的可读性和可维护性,还增强了应用程序的灵活性和扩展性。 ... [详细]
  • 西北工业大学作为陕西省三所985和211高校之一,虽然在农业和林业领域不如某些顶尖院校,但在航空航天领域的实力尤为突出。该校的计算机科学专业在科研和教学方面也具有显著优势,是考研的理想选择。 ... [详细]
  • 本文将介绍一种扩展的ASP.NET MVC三层架构框架,并通过使用StructureMap实现依赖注入,以降低代码间的耦合度。该方法不仅能够提高代码的可维护性和可测试性,还能增强系统的灵活性和扩展性。通过具体实践案例,详细阐述了如何在实际开发中有效应用这一技术。 ... [详细]
  • MySQL 数据操作:增、删、查、改全面解析
    MySQL 数据操作:增、删、查、改全面解析 ... [详细]
  • 本文提供了 RabbitMQ 3.7 的快速上手指南,详细介绍了环境搭建、生产者和消费者的配置与使用。通过官方教程的指引,读者可以轻松完成初步测试和实践,快速掌握 RabbitMQ 的核心功能和基本操作。 ... [详细]
  • NVIDIA最新推出的Ampere架构标志着显卡技术的一次重大突破,不仅在性能上实现了显著提升,还在能效比方面进行了深度优化。该架构融合了创新设计与技术改进,为用户带来更加流畅的图形处理体验,同时降低了功耗,提升了计算效率。 ... [详细]
  • Android目录遍历工具 | AppCrawler自动化测试进阶(第二部分):个性化配置详解
    终于迎来了“足不出户也能为社会贡献力量”的时刻,但有追求的测试工程师绝不会让自己的生活变得乏味。与其在家消磨时光,不如利用这段时间深入研究和提升自己的技术能力,特别是对AppCrawler自动化测试工具的个性化配置进行详细探索。这不仅能够提高测试效率,还能为项目带来更多的价值。 ... [详细]
  • 第五章详细探讨了 Red Hat Enterprise Linux 6 中的 Ext3 文件系统。5.1 节介绍了如何创建 Ext3 文件系统,包括必要的命令和步骤,以及在实际操作中可能遇到的问题和解决方案。此外,还涵盖了 Ext3 文件系统的性能优化和维护技巧,为用户提供全面的操作指南。 ... [详细]
author-avatar
RaymondKit
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有