我有一个ASA 5505,运行8.4。我有一个静态IP,我的ISP给我,我需要使用我的内部网络,以及我的DMZ。这就变成了PAT问题,因为我需要一些端口来终止DMZ,还有一些端口需要在内部接口中终止。如果我有多个I,这会很简单,但我没有。
我想知道是否有人能帮我做正确的NAT声明。8.4和我习惯的完全不同,所以我对如何让这一切发挥作用感到不知所措。
发布于 2011-07-20 02:27:06
在配置NAT时,ASA 8.3和up几乎强制使用对象。虽然这可能会困扰那些多年来一直在管理PIX/ASA而不使用对象的人,但在过去6个月左右的时间里,我实际上逐渐喜欢上了新的NAT范式。静态PAT --您将在端口中对内部和dmz主机进行“端口转发”的操作,并不像我所希望的那么干净。
有些人可能不同意我的对象命名方案--知道它在100多个ASA中使用,有几个有超过1500个行配置文件--并且为保持CLI上的直接性创造了奇迹。
上述答案中的链接是一个很好的开始。
我强烈建议先阅读ASA8.4CLI配置指南NAT部分。即使你不理解它-先读一读,才能得到条款。
http://www.cisco.com/en/US/docs/security/asa/asa84/configuration/guide/nat_overview.html
然后跟进杰伊·约翰斯顿的视频。当我第一次试着把我的头放在事情上时,我发现这很有帮助。
https://supportforums.cisco.com/docs/DOC-12324
直接回答你的问题。
首先为网络定义网络对象,并为两个对象配置用于动态PAT的对象NAT。注意,我正在使用我的对象命名标准。如果您显示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定义主机的网络对象。这就是帕特在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中使用的对象组服务组。
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场景。在ASA 8.3+中,UN-NAT (和NAT)发生在L3/L4/access之前--组ACL检查--所以即使绑定到外部接口,也要使用访问中的真实IP--组ACL。
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-tcpaccess-group outside_access_in in interface outside注意,我远离对象标识符中的“友好名称”。当您在CLI上调试时,使它成为一个皮塔。我发现我使用的对象名称在实际场景中非常具有描述性和方便性。
此外,在静态NAT允许附加端口的情况下,您只需向主机的svcgrp对象添加一个端口对象条目。但是,使用静态PAT,您必须为静态PAT添加一个新的网络对象--每个对象只允许一个nat语句--并将端口对象添加到主机的svcgrp对象中。
已向Cisco提交了一个功能请求,以允许每个网络对象具有多个静态PAT语句。这将大大减少静态PAT场景中所需的网络对象的数量。到目前为止,它还没有增加。
-Weaver
https://serverfault.com/questions/291495
复制相似问题