Rules for iptables: различия между версиями

Материал из Webko Wiki
Перейти к навигации Перейти к поиску
м (Sol переименовал страницу Rules fo iptables в Rules for iptables)
 
(не показаны 3 промежуточные версии этого же участника)
Строка 30: Строка 30:
 
Я бы рекомендовал использовать вместе с ipset, и пускал только с доверенных ip. Например:
 
Я бы рекомендовал использовать вместе с ipset, и пускал только с доверенных ip. Например:
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
iptables -I INPUT -p udp -m udp -m -multiports --dport 5060
+
-A INPUT -p udp -m set --match-set voip src -m udp -m multiport --dports 5060,4569,5036,2727,10000:20000 -j ACCEPT
 +
 
 +
ipset add voip x.y.x.y # добавить доверенный адрес
 
</syntaxhighlight>
 
</syntaxhighlight>
 
Больше информации [http://www.voip-info.org/wiki/view/Asterisk+firewall+rules тут].
 
Больше информации [http://www.voip-info.org/wiki/view/Asterisk+firewall+rules тут].

Текущая версия на 10:02, 4 января 2019


Стандартные правила для iptables

# SIP on UDP port 5060. Other SIP servers may need TCP port 5060 as well
iptables -A INPUT -p udp -m udp --dport 5060 -j ACCEPT
# IAX2- the IAX protocol
iptables -A INPUT -p udp -m udp --dport 4569 -j ACCEPT
# IAX - most have switched to IAX v2, or ought to
iptables -A INPUT -p udp -m udp --dport 5036 -j ACCEPT
# RTP - the media stream
# (related to the port range in /etc/asterisk/rtp.conf) 
iptables -A INPUT -p udp -m udp --dport 10000:20000 -j ACCEPT
# MGCP - if you use media gateway control protocol in your configuration
iptables -A INPUT -p udp -m udp --dport 2727 -j ACCEPT

Более ухищренные

iptables -I INPUT -p udp -m udp --dport 5060 -m string --string "User-Agent: VaxSIPUserAgent" --algo bm --to 65535 -j DROP 
iptables -I INPUT -p udp -m udp --dport 5060 -m string --string "User-Agent: friendly-scanner" --algo bm --to 65535 -j REJECT --reject-with icmp-port-unreachable 
iptables -I INPUT -p udp -m udp --dport 5060 -m string --string "REGISTER sip:" --algo bm -m recent --set --name VOIP --rsource 
iptables -I INPUT -p udp -m udp --dport 5060 -m string --string "REGISTER sip:" --algo bm -m recent --update --seconds 60 --hitcount 12 --rttl --name VOIP --rsource -j DROP 
iptables -I INPUT -p udp -m udp --dport 5060 -m string --string "INVITE sip:" --algo bm -m recent --set --name VOIPINV --rsource 
iptables -I INPUT -p udp -m udp --dport 5060 -m string --string "INVITE sip:" --algo bm -m recent --update --seconds 60 --hitcount 12 --rttl --name VOIPINV --rsource -j DROP 
iptables -I INPUT -p udp -m hashlimit --hashlimit 6/sec --hashlimit-mode srcip,dstport --hashlimit-name tunnel_limit -m udp --dport 5060 -j ACCEPT 
iptables -I INPUT -p udp -m udp --dport 5060 -j DROP

Я бы рекомендовал использовать вместе с ipset, и пускал только с доверенных ip. Например:

-A INPUT -p udp -m set --match-set voip src -m udp -m multiport --dports 5060,4569,5036,2727,10000:20000 -j ACCEPT

ipset add voip x.y.x.y # добавить доверенный адрес

Больше информации тут.