Cisco ASA 5505 DMZ 设置问题

Cisco ASA 5505 DMZ 设置问题

我有一台运行 v8.4 的 ASA 5505。我的 ISP 为我提供了一个静态 IP,我需要将其用于我的 INSIDE 网络和 DMZ。这成为一个 PAT 问题,因为我需要一些端口终止于 DMZ,一些端口终止于 INSIDE 接口。如果我有多个 IP,这会很简单,但我没有。

我想知道是否有人可以帮助我提供正确的 NAT 语句。8.4 与我习惯的非常不同,所以我不知道如何让这一切正常工作。

答案1

ASA 8.3 及更高版本在配置 NAT 时几乎强制使用对象。虽然这可能会让那些多年来一直不使用对象来管理 PIX/ASA 的人感到困扰,但在过去 6 个月左右的时间里,我实际上已经喜欢上了新的 NAT 范例。静态 PAT——您将在端口中“端口转发”到内部和 dmz 主机,并不像我希望的那样干净利落。

有些人可能不同意我的对象命名方案 - 但要知道它在超过 100 个 ASA 中使用,其中一些有超过 1500 行配置文件 - 并且对于在 CLI 上保持事物的直接性有很大帮助。

上述答案中发布的链接是一个很好的开始。

我强烈建议您先阅读 ASA 8.4 CLI 配置指南 NAT 部分。即使您不理解它,也请先阅读它以了解术语。

http://www.cisco.com/en/US/docs/security/asa/asa84/configuration/guide/nat_overview.html

然后继续观看 Jay Johnston 的视频。当我第一次尝试理解事物时,我发现它非常有帮助。

https://supportforums.cisco.com/docs/DOC-12324

直接回答你的问题。

假设

  • 外部接口 IP:1.1.1.2/30
  • 内部接口IP:192.168.10.1/24
  • dmz 接口 IP:192.168.20.1/24

  • 内部和 dmz 子网需要动态 PAT。

  • 特定内部和 dmz 主机需要静态 PAT(端口转发),具体定义如下

    • 192.168.10.10 内部需要 TCP/22
    • dmz 192.168.20.20 需要 TCP/53、TCP/80、TCP/443 和 UDP/53

首先为您的网络定义网络对象,然后为两个对象配置动态 PAT 的对象 NAT。请注意,我使用的是我的对象命名标准。 如果您运行 show run,您将看到每个对象出现两次“对象网络...”。一次是针对对象定义,然后稍后在仅包含 nat 语句的配置中再次出现。

object network net-192.168.10.0-24
 description inside Network
 subnet 192.168.10.0 255.255.255.0
 nat (inside,outside) dynamic interface

object network net-192.168.20.0-24
 description dmz Network
 subnet 192.168.20.0 255.255.255.0
 nat (dmz,outside) dynamic interface

为您的主机定义网络对象。 这就是 PAT 在 8.3 及更高版本中变得有点棘手的地方。我们为主机本身定义一个对象(用于 ACL 以使其变得简单)。然后我们为每个需要的端口定义另一个网络对象。使用传统的静态 NAT 非常容易和漂亮——使用静态 PAT 可能会变得有点麻烦,但仍然非常具有描述性。

object network hst-192.168.10.10
 description My inside Host
 host 192.168.10.10

object network hst-192.168.10.10-tcp22
 description My inside Host NAT SSH
 host 192.168.10.10
 nat (inside,outside) static interface service tcp 22 22

object network hst-192.168.20.20
 description My dmz Host
 host 192.168.20.20

object network hst-192.168.20.20-udp53
 description My dmz Host DNS
 host 192.168.20.20
 nat (dmz,outside) static interface service udp 53 53

object network hst-192.168.20.20-tcp80
 description My dmz Host HTTP
 host 192.168.20.20
 nat (dmz,outside) static interface service tcp 80 80

object network hst-192.168.20.20-tcp443
 description My dmz Host HTTPS
 host 192.168.20.20
 nat (dmz,outside) static interface service tcp 443 443

现在定义用于 ACL 的对象组服务组。

object-group service svcgrp-192.168.10.10-tcp tcp
 port-object eq 22

object-group service svcgrp-192.168.20.20-udp udp
 port-object eq 53

object-group service svcgrp-192.168.20.20-tcp tcp
 port-object eq 80
 port-object eq 443

配置了对象和对象组,配置了 NAT(使用网络对象 NAT 动态 PAT 和静态 PAT)——剩下的就是 ACL 方面的事情。

这就是真正的结合点——特别是传统的静态 NAT 场景。 在 ASA 8.3+ 中,UN-NAT(和 NAT)发生在 L3/L4/访问组 ACL 检查之前 - 因此在访问组 ACL 中使用真实 IP - 即使绑定到外部接口。

access-list outside_access_in extended permit tcp any object hst-192.168.10.10 object-group svcgrp-192.168.10.10-tcp
access-list outside_access_in extended permit udp any object hst-192.168.20.20 object-group svcgrp-192.168.20.20-udp
access-list outside_access_in extended permit tcp any object hst-192.168.20.20 object-group svcgrp-192.168.20.20-tcp

不要忘记将您的 ACL 绑定到接口。

access-group outside_access_in in interface outside

请注意,我避免在对象标识符中使用“友好名称”。在 CLI 上调试时,这会成为一件麻烦事。我发现我使用的对象名称非常具有描述性,并且在实际场景中非常方便。

此外,如果静态 NAT 允许使用更多端口,您只需向主机的 svcgrp 对象添加一个端口对象条目即可。但是,如果使用静态 PAT,则必须为静态 PAT 添加一个新的网络对象 - 每个对象只允许一个 nat 语句 -将端口对象添加到主机的 svcgrp 对象。

已向 Cisco 提交了功能请求,以允许每个网络对象使用多个静态 PAT 语句。这将大大减少静态 PAT 场景中所需的网络对象数量。到目前为止,尚未添加此功能。

·韦弗

答案2

8.3 及更新版本对 NAT 的命令有很大不同。NAT 和其他方面的差异(以及相关的新命令)概述如下这里

顺便提一下,8.4 版的 LAN 到 LAN 隧道配置也有所不同;这些变化概述如下这里

答案3

这是我在 8.4 中用于 NAT 的链接,http://www.cisco.com/en/US/docs/security/asa/asa84/configuration/guide/nat_objects.html#wp1106703

这是一个可以帮助您入门的示例。

假设

外部接口上的 ISP 静态 IP 10.0.0.1
dmz 接口上的 DMZ 主机 IP 192.168.1.2
内部接口上的 INSIDE 主机 IP 192.168.2.2

http 转到 dmz 主机
https 转到内部主机

样本

object service DMZ-HTTP
service tcp eq http

object service INSIDE-HTTPS
service tcp eq https

object network OUTSIDE_INT_10.0.0.1
host 10.0.0.1

object network DMZ_SERVER_192.168.1.2
host 192.168.1.2

object network INSIDE_SERVER_192.168.2.2
host 192.168.2.2

nat (dmz,outside) source static DMZ_SERVER_192.168.1.2 OUTSIDE_INT_10.0.0.1 service DMZ-HTTP DMZ-HTTP
nat (inside,outside) source static INSIDE_SERVER_192.168.2.2 OUTSIDE_INT_10.0.0.1 service INSIDE-HTTPS INSIDE-HTTPS

相关内容