穿越ASA进行traceroute或tracert测试

一.概述:

   默认情况下,ASA不会回应TTL Exceeded的包,因此traceroute/tracert看不到ASA设备;另外,由于防火墙策略限制,traceroute/tracert也无法穿越防火墙。

二.基本思路:

   根据traceroute/tracert不同处理方式,确定为什么无法穿越防火墙,从而放开相应的防火墙策略:

A.Windows主机:

   Windows主机tracert命令,发出icmp request包,从TTL=1开始,逐跳TTL加1,每跳发送三个包,中间设备回复ICMP type 11 Code 0 的TTL超时的ICMP包,目的设备回复icmp reply的包。
----如果开启icmp审查,虽然内网发出的icmp reply的包可以正常返回,但是TTL超时的ICMP包不能正常返回,需要策略放行。  

B.Linux、网络设备:

   Linux、网络设备traceroute命令,发出UDP包,第一个包目的端口为33434,从TTL=1开始,每个TTL会发三个包,逐跳TTL加1,UDP目的端口每个包会加1,中间设备回复ICMP type 11的TTL超时的ICMP包,目的设备回复ICMP type 3 Code 3的端口不可达的ICMP包 。

----Linux、网络设备traceroute默认支持30跳,每跳发三个UDP包,所以UDP目的端口为33434~33434+30*3-1,即33434~33523

----如果从防火墙的高安全区到低安全区进行traceroute,则需要放行TTL超时的ICMP包和端口不可达的ICMP包

----如果从防火墙的低安全区高安全区进行traceroute,则只需要放行起始的UDP包,目标端口从33434~33523

三.防火墙策略设置:

A.从高安全区到低安全区

---比如从Inside到Outside

①ASA设备回复TTL超时
class-map ALL_IP
match any
policy-map global_policy
class ALL_IP
set connection decrement-ttl

②全局开启ICMP审查

policy-map global_policy
class inspection_default

 inspect icmp
 inspect icmp error   //*这个还不明白到底是什么作用,针对什么情况

③防火墙策略:

access-list outside_access_in remark ICMP type 11 for Windows Traceroute
access-list outside_access_in extended permit icmp any any time-exceeded
access-list outside_access_in remark ICMP type 3 for Cisco and Linux
access-list outside_access_in extended permit icmp any any unreachable
access-group outside_access_in in interface outside

④调整icmp unreachable的速率

ciscoasa(config)#icmp unreachable rate-limit 10 burst-size 5
!--- Adjust ICMP unreachable replies:
!--- The default is rate-limit 1 burst-size 1.
!--- The default will result in timeouts for the ASA hop:

B.从低安全区高安全区

----比如从outsideinside(如果为互联网边界防火墙,不建议配置

①ASA设备回复TTL超时

同上。

②放行初始流量

1.对于windows主机放行icmp echo流量

access-list outside_access_in permit icmp any any echo

----ACL中icmp echo包,等同于icmp echo request包

2.对于linux和网络设备放行udp流量

access-list outside_access_in remark Tracert from outside

access-list outside_access_in permit udp any any range 33434 33523

access-group outside_access_in in interface outside

----因为放行了icmp echo和udp33434~33523,无法避免outside区域设备利用它们对inside区域的设备进行DOS或DDOS攻击,因此如果是互联网边界防火墙没有必要进行开放;如果为公司内部不同安全区之间的防火墙,可根据需要确定是否放行。

更多相关文章
  • traceroute和tracert的区别  二者都用于探测数据包从源到目的经过路由的IP,但两者探测的方法却有差别.不同点:一.应用环境不同tracert是应用在windows下.traceroute则是应用在linux/BSD/router/UNIX下. tracert是Windows下常用的命 ...
  • acl实现穿越ASA防火墙
    一,概述:ASA安全设备:Cisco ASA 系列5500系列自适应安全设备室最新的cisco防火墙技术产品,它提供了整合防火墙,入侵保护系统(IPS,Intrusion Prevention System).高级自适应威胁防御服务,其中包括应用安全和简化网络安全解决方案的VPN服务. 2.ASA的 ...
  • traceroute的原理:1.traceroute主机向被trace主机发送UDP的数据包,目的端口是编号较大的端口(比如33434端口)2.首包TTL=1,Dport=33434:以后的数据包TTL值和端口号以此加13.如何判断已经到达目的地,一般目的地不会在UDP33434这么大的端口开启什么 ...
  • ASA第一天实验
    1.1 ASA 5505 Default Configurationinterface Ethernet 0/0switchport access vlan 2no shutdowninterface Ethernet 0/1switchport access vlan 1no shutdownin ...
  • 实验环境(如下拓扑图所示):1.准备四台虚拟机,两台使用windows 2003系统,分别配置Web服务器和Out服务器,分别搭建站点www.sjzz.com 和www.out.com ,并在Out服务器上搭建DNS服务器,负责解析www.sjzz.com(IP地址:200.1.1.253/29)和 ...
  • 配置ASA实现内网、DMZ和外网的访问
    配置ASA实现内网.DMZ和外网之间的访问需求描述1.只能从PC1通过SSH访问ASA2.从PC1可以访问outside和dmz区的网站,从Out主机可以访问DMZ区的Web站点3.从PC1可以ping通Out主机实现思路1) 在ASA上配置只允许PC1进行SSH接入2) 配置nat和global命 ...
  • 1.配置实例基于关键字“sh/run”,过滤regex shrun“sh/run”class-map type regex match-any Amatch regex shrunclass-map type inspect http match-all http Bmatch request ur ...
  • 路由与网络连通性(三)路由测试及INTERNET的连接<!--[if !supportLists]-->1.<!--[endif]-->路由测试互联网络的通信机制复杂,环境各异,因而,有可能有各种各样的问题导致网络不通.用ping命令可以测试出网络是否畅通,但在不通时,却难以 ...
一周排行
  • 我开始玩微博了:http://t.sina.com.cn/jiaweb 感兴趣的朋友请加关注,给我一点玩好微博的鼓励!
  •     最近在学习数据可视化,突然有了以上关于线上教育培训的思考.本来已经定好向互联网方向发展了.可以在学习的过程中,发现自己又开始了迷茫.    在大数据的学习过程中,在学校里学到的都是一些关于思想上的内容.真正落 ...
  • <?php /*  *  April 19,2012  *    discuz二次开发学习  *    author:xuqin  *    不能为了完成任务去做一件事,要举一反三,融会贯  *  * @$co ...
  • 在华为设备中配置Hub&Spoke
    在华为设备中配置Hub&Spoke   如果希望在VPN中设置中心访问控制设备,其 ...
  •  把中国大学建成新型文化堡垒 最近,中国科学评价研究中心发布"世界一流大学竞争力排行榜",中国大学在前100名中榜上无名,引发了一些议论. 我的看法是:第一,办好大学并非易事,中国比西方国家起步晚 ...
  • 原文地址:http://blog.csdn.net/ithomer/article/details/9729933Linux发行版 (列表)基于DebianDebianUbuntuLinux MintKnoppixM ...
  • spring3.2.9jar包详解
    Spring这类的框架给我们开发带来非常大的好处,让我们更加快速.有效的开发. 所以我们在 ...
  • 接上篇文章,最近做视频背景的游戏.需要使用安卓的meidaplayer来播放视频,并跳转.跳转时发现,有些视频可以跳到位置上,有些不行.GG了好久,可以使用FFMPEG这个工具重新转一次.并加上关键帧即可.果然能Se ...
  • 一.日志系统    1.日志系统:syslog()        信息详细程序:日志级别        日志子系统:facility        日志记录动作:Action    2.Linux上的日志系统:    ...
  • samza是一个分布式的流式数据处理框架(streaming processing),它是基于Kafka消息队列来实现类实时的流式数据处理的.(准确的说,samza是通过模块化的形式来使用kafka的,因此可以构架在 ...