ASA 5500 防火墙中的 SIP 检查是否仅针对端口 5060 上的流量启动?Cisco Docs 上对此有一些提示,但不是 100% 确定 -http://www.cisco.com/c/en/us/support/docs/security/asa-5500-x-series-next-generation-firewalls/82446-enable-voip-config.html#sip。
当我的 IP PBX 配置为在 5060 以外的其他端口上接收入站呼叫时,我无法使音频正常工作。我使用的 IP PBX 是带有内置 SBC 的 SIP 代理,它要求将入站流量发送到端口 5080。IP PBX 和 ITSP 之间的流量通过 ASA 5505 防火墙(这是老一代)。
入站呼叫确实可以连接,但我只有单向音频。RTP 不会从外部流向内部。(出站呼叫没有问题,双向音频都很好 - 但它们是通过目标端口 5060 发送的)。如果 ASA 由于端口 5080 不同而无法启动 SIP 检查,那么这将是有意义的。
但事实真的如此吗?如果是这样,我可以在某处配置 ASA 应该寻找哪个 SIP 端口吗?或者有什么解决方法吗?(我可能可以打开所有入站 RTP 端口……但我想避免这种情况)
为了更清楚地说明这一点,ITSP 实际上会在端口 5060 上尽职尽责地向 ASA 发送入站呼叫。我的静态 NAT 规则会将端口从 5060 转换为 5080。根据 Cisco 文档,SIP 检查是在 IP 标头重写之前完成的,因此“sip inspect”应该会看到端口 5060。有人对此有明确的答案吗?我自己很难测试不同的场景,因为 PBX 根本不允许使用 5060,所以我没有机会进行反测试。
答案1
您可以随时更改触发检查的条件。
为此,您需要创建一个类映射和一个政策图。
首先进入配置终端并创建类映射;
asa(config)# class-map SIP_5080
asa(config-cmap)# match port tcp eq 5080
asa(config-cmap)# exit
然后创建一个政策图;
asa(config)# policy-map SIP_Policy
asa(config-pmap)# class SIP_5080
asa(config-pmap-c)# inspect sip
asa(config-pmap-c)# exit
最后,分配政策图到界面;
asa(config)# service-policy SIP_Policy interface [name of your interface]