23 августа 2012 г.

IPTABLES vs Asterisk

#!/bin/bash

IPTABLES='/sbin/iptables'

LOCAL='192.168.2.0/23'
INTIF='eth0'
INTIP2='188.128.xx.xx'

$IPTABLES -F

$IPTABLES -A INPUT -i lo -j ACCEPT

$IPTABLES -A INPUT -i $INTIF -s $LOCAL --protocol udp --dport 5060 -j ACCEPT
$IPTABLES -A INPUT -i $INTIF -s $LOCAL --protocol udp --dport 4569 -j ACCEPT
$IPTABLES -A INPUT -i $INTIF -s $LOCAL --protocol udp --dport 5036 -j ACCEPT
$IPTABLES -A INPUT -i $INTIF -s $LOCAL --protocol udp --dport 10000:20000 -j ACCEPT
$IPTABLES -A INPUT -i $INTIF -s $LOCAL --protocol udp --dport 2727 -j ACCEPT

$IPTABLES -A INPUT -i $INTIF -s $INTIP2 --protocol udp --dport 5060 -j ACCEPT
$IPTABLES -A INPUT -i $INTIF -s $INTIP2 --protocol udp --dport 4569 -j ACCEPT
$IPTABLES -A INPUT -i $INTIF -s $INTIP2 --protocol udp --dport 5036 -j ACCEPT
$IPTABLES -A INPUT -i $INTIF -s $INTIP2 --protocol udp --dport 10000:20000 -j ACCEPT
$IPTABLES -A INPUT -i $INTIF -s $INTIP2 --protocol udp --dport 2727 -j ACCEPT

$IPTABLES -A INPUT --protocol tcp --dport 22 -j ACCEPT
$IPTABLES -A INPUT --protocol tcp --dport 80 -j ACCEPT
$IPTABLES -A INPUT --protocol tcp --dport 4445 -j ACCEPT
$IPTABLES -A INPUT --protocol tcp --dport 40973 -j ACCEPT
$IPTABLES -A INPUT --protocol tcp --dport 161 -j ACCEPT
$IPTABLES -A INPUT --protocol tcp --dport 3306 -j ACCEPT

$IPTABLES -A INPUT -i $INTIF -m state --state NEW,INVALID -j DROP
$IPTABLES -A FORWARD -i $INTIF -m state --state NEW,INVALID -j DROP