networking问题与星号服务器

下车后我换了一个IVR机器来打电话。 它在ubunutu上运行星号1.4.23 10.04我决定把服务器放在iptables后面,因为我的服务器遭受了powershell攻击。 eth0是我的私人卡,eth1是公共卡。

这是我的规则:

# only allow PING on PRIVATE NET iptables -A INPUT -p icmp -i eth0 -j ACCEPT # allow all the lo traffic on loopback. iptables -A INPUT -i lo -j ACCEPT # START OPEN PORTS #================= #SSH (22) iptables -A INPUT -p tcp -i eth0 --dport 22 -j ACCEPT #iptables -A INPUT -p tcp -i eth1 --dport 22 -j ACCEPT #SAMBA: netbios (139) , microsoft-ds (445) -- only on internal iptables -A INPUT -p tcp -i eth0 --dport 139 -j ACCEPT iptables -A INPUT -p tcp -i eth0 --dport 445 -j ACCEPT #ASTERISK # SIP (UDP 5060) #Port 5060 must be open for SIP. #Ports 1024 - 64000 should be open for Media. #iptables -A INPUT -p tcp -m tcp -i eth1 --dport 5060 -j ACCEPT #iptables -A INPUT -p udp -m udp -i eth1 --dport 1024:64000 -j ACCEPT iptables -A INPUT -p udp -m udp -i eth1 --dport 10000:20000 -j ACCEPT #iptables -A INPUT -p udp -m udp --dport 5060 -j ACCEPT iptables -A INPUT -p udp -m udp -i eth1 -s xxx.xx.xx.xx --dport 5060 -j ACCEPT iptables -A INPUT -p udp -m udp -i eth1 -s xx.xx.xx.xxx --dport 5060 -j ACCEPT iptables -A INPUT -p tcp -m tcp -i eth1 -s xxx.xx.xx.xx --dport 5060 -j ACCEPT iptables -A INPUT -p tcp -m tcp -i eth1 -s xx.xx.xx.xxx --dport 5060 -j ACCEPT #END ASTERISK # END OPEN PORTS #Deny everything else iptables -A INPUT -p all -i eth1 -j DROP 

xxx.xx.xx.xx和xx.xx.xx.xxx是我的SIP提供商的IP,我ping了SIP域

我们的客户在拨打号码时遇到忙碌的信号,我检查了日志,并看到各种警告。 以下是我在日志中发现的一些问题:

 [Jan 24 05:02:00] WARNING[939] chan_sip.c: Maximum retries exceeded on transmission [email protected] for seqno 102 (Critical Response) -- See doc/sip-retransmit.txt. [Jan 24 05:02:00] WARNING[939] chan_sip.c: Hanging up call [email protected] - no reply to our critical packet (see doc/sip-retransmit.txt). [Jan 24 06:29:37] WARNING[939] chan_sip.c: Got 200 OK on REGISTER, but there isn't a registry entry for 'mpdhbf867' (we probably already got the OK) [Jan 24 06:34:07] WARNING[939] chan_sip.c: Got 200 OK on REGISTER, but there isn't a registry entry for 'mpdhbf867' (we probably already got the OK) [Jan 24 17:00:32] NOTICE[939] chan_sip.c: -- Registration for '[email protected]' timed out, trying again (Attempt #1) 

当我关掉我的iptables的时候,一切都恢复正常了,电话也不会掉线或者忙着工作。 这是一个很难的权衡,因为我不想让我的服务器开放到公共互联网。 我愿意改变

您错过了一个规则来接受基于现有stream量的stream量(使iptables有状态的规则)。 这应该是你的第一条规则:

 -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT 

当您处于这个状态时,您还应该检查以确保您所期望的传入SIPstream量具有正确的IP地址。 如果上游提供商改变了他们,你就麻烦了。