用于动态打开SIP RTP端口的firewalld上的nf_conntrack的等效值

时间:2015-12-03 20:56:36

标签: networking sip firewall centos7 freeswitch

使用netfilter / iptables时,您可以设置nf_conntrack来读取端口5060上的SIP信令消息,它会自动打开所需的RTP端口,以便为该呼叫传递音频。

任何人都可以解释或帮助我找到在CentOS 7上使用firewalld执行此操作的等效文件吗?

我知道我可以打开整个范围,但我只想打开必要的端口。

编辑1 - This suggests nf_conntrack计划在稍后发布,但该信息至少有8个月(因为它是referred to here,日期为4月16日)。还有另一种方式吗?

1 个答案:

答案 0 :(得分:2)

在/ etc / firewalld / services中,创建一个服务定义,即带有以下内容的sip.xml:

<?xml version="1.0" encoding="utf-8"?>
<service>
  <short>SIP</short>
  <description>SIP over UDP on port 5060</description>
  <port protocol="udp" port="5060"/>
  <module name="nf_conntrack_sip"/>
</service>

要将其永久添加到默认区域:

# firewall-cmd --add-service=sip --permanent

并申请:

# firewall-cmd --reload

此时,如果查看lsmod,您应该看到nf_conntrack_sip模块已加载,例如

# lsmod |grep sip

nf_conntrack_sip       33860  0
nf_conntrack          105702  7 nf_nat,nf_nat_ipv4,nf_nat_ipv6,xt_conntrack,nf_conntrack_sip,nf_conntrack_ipv4,nf_conntrack_ipv6