【freeswitch】云服务器freeswitch防止外网ip攻击盗打
第一步,我们配置一个名字叫china的ipset:
firewall-cmd --permanent --zone=public --new-ipset=china --type=hash:net
第二步,我们通过linux脚本向这个ipset中增加中国国内的ip地址段,国内地址段的数据来自于http://www.ipdeny.com/ipblocks/data/countries/cn.zone,通过bash执行脚本文件(注意脚本文件要加可执行权限)。
#!/bin/bash
rm -f cn.zone
wget http://www.ipdeny.com/ipblocks/data/countries/cn.zone
for i in $(cat cn.zone)
do
firewall-cmd --permanent --ipset=china --add-entry=$i >> /dev/null 2>&1
done
这步的执行比较慢,稍后介绍如果优化处理这个问题。
第三步,我们将这个ipset配置给freeswitch的端口用于访问控制。
firewall-cmd --permanent --add-rich-rule "rule family="ipv4" source ipset="china" port protocol="udp" port="5080" accept"
firewall-cmd --permanent --add-rich-rule "rule family="ipv4" source ipset="china" port protocol="udp" port="5060" accept"
firewall-cmd --reload
service firewalld restart
这样就完成了配置,国外的攻击将被防火墙挡住。
再回顾下第二步中写ipset比较慢的问题,其实研究下ipset,发现地址段是保存在如下的位置中,在这个位置中会有一个china.xml的文件:
/etc/firewalld/ipsets/china.xml
我们可以将这个文件保存下来,以后重新安装或者在其他机器安装的话,只需在完成第一步后,用这个文件替换系统生成的china.xml即可,然后再执行第三步就可以了。
以上就是Freeswitch配置防止国外Sip攻击的方法。
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=8761/tcp --permanent
firewall-cmd --zone=public --add-port=8784/tcp --permanent
firewall-cmd --zone=public --add-port=9001/tcp --permanent
firewall-cmd --zone=public --add-port=9002/tcp --permanent
firewall-cmd --zone=public --add-port=8774/tcp --permanent
firewall-cmd --zone=public --add-port=8776/tcp --permanent
firewall-cmd --zone=public --add-port=8775/tcp --permanent
firewall-cmd --zone=public --add-port=8780/tcp --permanent
firewall-cmd --zone=public --add-port=8782/tcp --permanent
firewall-cmd --zone=public --add-port=6379/tcp --permanent
firewall-cmd --zone=public --add-port=36380/tcp --permanent
firewall-cmd --zone=public --add-port=9000/tcp --permanent
firewall-cmd --zone=public --add-port=9898/tcp --permanent
firewall-cmd --zone=public --add-port=18083/tcp --permanent
firewall-cmd --zone=public --add-port=1883/tcp --permanent
firewall-cmd --zone=public --add-port=8081/tcp --permanent
firewall-cmd --zone=public --add-port=8083/tcp --permanent
firewall-cmd --zone=public --add-port=8084/tcp --permanent
firewall-cmd --zone=public --add-port=8883/tcp --permanent
firewall-cmd --zone=public --add-port=9999/tcp --permanent
firewall-cmd --zone=public --add-port=5060/udp --permanent
firewall-cmd --zone=public --add-port=5080/udp --permanent
firewall-cmd --zone=public --add-port=28761/tcp --permanent
firewall-cmd --permanent --zone=public --add-port=16384-32768/udp
firewall-cmd --reload
参考地址:
https://freeswitch.org/confluence/display/FREESWITCH/Firewall