我有一个运行v8.4的ASA 5505。 我有一个静态IP,我的ISP给我,我需要使用我的INSIDEnetworking以及我的DMZ。 这成为一个PAT问题,因为我需要一些端口在DMZ终止,一些端口在INSIDE接口终止。 如果我有多个IP但是我没有,这将是简单的。
我想知道是否有人可以帮助我正确的NAT语句。 8.4与我以前的习惯有很大的不同,所以我对如何让这一切发挥作用感到茫然。
ASA 8.3和几乎在configurationNAT时强制使用对象。 虽然这对于那些一直在使用PIX / ASA多年而不使用对象的人来说是个麻烦,但在过去的6个月左右,我已经开始喜欢新的NAT模式。 静态PAT – 你将要做的“端口转发”到端口内部和DMZ主机,并不像我希望的那么干净。
有些人可能不同意我的对象命名scheme – 知道它在超过100个ASA中使用,less数有超过1500个线路configuration文件 – 并且在CLI上保持直线的奇迹。
上述答案中的链接是一个很好的开始。
我强烈build议先阅读ASA 8.4 CLIconfiguration指南NAT部分。 即使你不了解它 – 先阅读它才能得到这些条款。
http://www.cisco.com/en/US/docs/security/asa/asa84/configuration/guide/nat_overview.html
然后跟随Jay Johnston的video。 当我第一次尝试围绕着事物时,我发现它非常有帮助。
https://supportforums.cisco.com/docs/DOC-12324
直接转到你的问题。
假设
dmz接口IP:192.168.20.1/24
内部和dmz子网需要dynamicPAT。
下面定义的特定的内部和dmz主机需要静态PAT(端口转发)
首先为networking定义networking对象,然后为两个对象configurationdynamicPAT的对象NAT。 请注意,我正在使用我的对象命名标准。 如果您显示运行,您将看到每个对象的“对象networking…”两次。 一次用于对象定义,然后再用只有nat语句的configuration。
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
为主机定义networking对象。 这是PAT在8.3和以上有点毛的地方。 我们为主机本身定义一个对象(在ACL中使用它使其变得容易)。 然后我们为每个需要的端口定义另一个networking对象。 使用传统的静态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
通过configuration对象和对象组,NATconfiguration(使用networking对象NATdynamicPAT和静态PAT) – 剩下的就是事物的ACL端。
这就是真正聚集在一起的地方 – 尤其是传统的静态NAT场景。 在ASA 8.3+中,在L3 / L4 / access-group ACL检查之前发生UN-NAT(和NAT),所以即使绑定到外部接口,也要在访问组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上进行debugging时,使其成为PITA。 我发现我使用的对象名称在现实世界中非常具有描述性和方便性。
此外,使用静态NAT允许其他端口,您只需将端口对象条目添加到主机的svcgrp对象。 但是,使用静态PAT时,必须为静态PAT添加一个新的networking对象 – 每个对象只允许一个nat语句 – 并将端口对象添加到主机的svcgrp对象。
已向思科提交了一项function请求,允许为每个networking对象提供多个静态PAT语句。 这将减less静态PAT场景中所需的networking对象的数量。 到目前为止,还没有添加。
-Weaver
8.3和更新的NAT有很不同的命令。 这里列出NAT和其他方面的差异(以及相关的新命令)。
另外,在8.4中,lan-to-lan隧道的configuration也有所不同。 这些变化在这里概述。
以下是我在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主机IP地址192.168.1.2在dmz界面上
内部主机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