Доброго времени суток, помогите понять в каком месте прописать, чтоб открыть порт 63555 торрент на машине например с адресом 192.168.1.65, ни как не могу понять в скрипте что писать где, вот текст скрипта#!/bin/sh
#Утилиты
IPT="/sbin/iptables"
IFC="/sbin/ifconfig"
G="/sbin/grep"
SED="/bin/sed"
AWK="/usr/bin/awk"
ECHO="/bin/echo"
#Сброс существующих и очистка персональных цепочек
$IPT -P INPUT DROP
$IPT -P OUTPUT DROP
$IPT -P FORWARD DROP
CHAINS=`cat /proc/net/ip_tables_names 2>/dev/null`
for i in $CHAINS
do
$IPT -t $i -F
$IPT -t $i -X
done
#$ECHO "1">/proc/sys/net/ipv4/tcp_syncookies
$ECHO "1">/proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
#Проверка адреса источника
for f in /proc/sys/net/ipv4/conf/*/rp_filter
do
$ECHO "1">$f
done
#Отключаем роутинг источника IP и ICMP-редиректы
for f in /proc/sys/net/ipv4/conf/*/accept_source_route
do
$ECHO "0">$f
done
for f in /proc/sys/net/ipv4/conf/*/accept_redirects
do
$ECHO "0">$f
done
#Включаем форвардинг в ядре
echo "1">/proc/sys/net/ipv4/ip_forward
#Установка переменных окружения
LO_IFACE="lo"
LO_IP="127.0.0.1"
LO_MASK="255.0.0.0"
LO_NET="$LO_IP/$LO_MASK"
INET_IFACE="ppp0"
INET_IP="`$IFC $INET_IFACE | $AWK /$INET_IFACE/'{next}//{split($0,a,":");split(a[2],a," ");print a[1];exit}'`"
INET_BROADCAST="`$IFC $INET_IFACE | $AWK /$INET_IFACE/'{next}//{split($0,a,":");split(a[3],a," ");print a[1];exit}'`"
INET_MASK="`$IFC $INET_IFACE | $AWK /$INET_IFACE/'{next}//{split($0,a,":");split(a[4],a," ");print a[1];exit}'`"
INET_NET="$INET_IP/$INET_MASK"
$ECHO "INET_IP=$INET_IP INET_BROADCAST=$INET_BROADCAST INET_MASK=$INET_MASK INET_NET=$INET_NET"
LAN_IFACE="eth0"
LAN_IP="`$IFC $LAN_IFACE | $AWK /$LAN_IFACE/'{next}//{split($0,a,":");split(a[2],a," ");print a[1];exit}'`"
LAN_BROADCAST="`$IFC $LAN_IFACE | $AWK /$LAN_IFACE/'{next}//{split($0,a,":");split(a[3],a," ");print a[1];exit}'`"
LAN_MASK="`$IFC $LAN_IFACE | $AWK /$LAN_IFACE/'{next}//{split($0,a,":");split(a[4],a," ");print a[1];exit}'`"
LAN_NET="$LAN_IP/$LAN_MASK"
$ECHO "LAN_IP=$LAN_IP LAN_BROADCAST=$LAN_BROADCAST LAN_MASK=$LAN_MASK LAN_NET=$LAN_NET"
SSP_IFACE="eth2"
SSP_IP="`$IFC $SSP_IFACE | $AWK /$SSP_IFACE/'{next}//{split($0,a,":");split(a[2],a," ");print a[1];exit}'`"
SSP_BROADCAST="`$IFC $SSP_IFACE | $AWK /$SSP_IFACE/'{next}//{split($0,a,":");split(a[3],a," ");print a[1];exit}'`"
SSP_MASK="`$IFC $SSP_IFACE | $AWK /$SSP_IFACE/'{next}//{split($0,a,":");split(a[4],a," ");print a[1];exit}'`"
SSP_NET="$SSP_IP/$SSP_MASK"
$ECHO "SSP_IP=$SSP_IP SSP_BROADCAST=$SSP_BROADCAST SSP_MASK=$SSP_MASK SSP_NET=$SSP_NET
"
#Loopback
$IPT -A INPUT -i $LO_IFACE -s $LO_IP -j ACCEPT
$IPT -A INPUT -i $LO_IFACE -s $INET_IP -j ACCEPT
$IPT -A INPUT -i $LO_IFACE -s $LAN_IP -j ACCEPT
$IPT -A INPUT -i $LO_IFACE -s $SSP_IP -j ACCEPT
###########БЛОКРР РћР’РљР#############
#Цепочки журналирования событий
$IPT -N DROP1 2>/dev/null
$IPT -A DROP1 -m limit --limit 3/minute --limit-burst 10 -j LOG --log-prefix 'FIREWALL DROP BLOCKED:'
$IPT -A DROP1 -j DROP
$IPT -N REJECT1 2>/dev/null
$IPT -A REJECT1 -m limit --limit 3/minute --limit-burst 10 -j LOG --log-prefix 'FIREWALL REJECT BLOCKED:'
$IPT -A REJECT1 -j REJECT
$IPT -N DROP2 2>/dev/null
$IPT -A DROP2 -m limit --limit 3/second --limit-burst 10 -j LOG --log-prefix 'FIREWALL DROP UNKNOWN:'
$IPT -A DROP2 -j DROP
$IPT -N REJECT2 2>/dev/null
$IPT -A REJECT2 -m limit --limit 3/second --limit-burst 10 -j LOG --log-prefix 'FIREWALL REJECT UNKNOWN:'
$IPT -A REJECT2 -j REJECT
#Блокируем широковещательные пакеты
$IPT -A INPUT -i $INET_IFACE -d $INET_BROADCAST -j DROP1
$IPT -A INPUT -i $LAN_IFACE -d $LAN_BROADCAST -j DROP1
$IPT -A OUTPUT -o $INET_IFACE -d $INET_BROADCAST -j DROP1
$IPT -A OUTPUT -o $LAN_IFACE -d $LAN_BROADCAST -j DROP1
$IPT -A FORWARD -o $INET_IFACE -d $INET_BROADCAST -j DROP1
$IPT -A FORWARD -o $LAN_IFACE -d $LAN_BROADCAST -j DROP1
#Блокируем внешний доступ к локальной сети
$IPT -A INPUT -i $INET_IFACE ! -d $INET_IP -j DROP1
#Блокируем пакеты, не относящиеся к LAN
#$IPT -A INPUT -i $LAN_IFACE ! -s $LAN_NET -j DROP1
#$IPT -A OUTPUT -o $LAN_IFACE ! -d $LAN_NET -j DROP1
$IPT -A FORWARD -i $LAN_IFACE ! -s $LAN_NET -j DROP1
$IPT -A FORWARD -o $LAN_IFACE ! -d $LAN_NET -j DROP1
#Дополнительная проверка
$IPT -A OUTPUT -o $INET_IFACE ! -s $INET_NET -j DROP1
#Блокируем исходящие ICMP кроме PING
$IPT -A OUTPUT -o $INET_IFACE -p icmp ! --icmp-type 8 -j DROP1
$IPT -A FORWARD -o $INET_IFACE -p icmp ! --icmp-type 8 -j DROP1
#Блокировка отдельных портов
COMBLOCK="0:1 13 98 111 137:139 161:162 445 1214 1999 2049 3049 4329 6346 3128 8000 8008 8080 12345 65535"
TCPBLOCK="$COMBLOCK 98 512:515 1080 6000:6009 6112"
UDPBLOCK="$COMBLOCK 520 123 517:518 1427 9000"
$ECHO -n "FW: Blocking attacks to TCP port"
for i in $TCPBLOCK
do
$ECHO -n "$i "
$IPT -A INPUT -p tcp --dport $i -j DROP1
$IPT -A OUTPUT -p tcp --dport $i -j DROP1
$IPT -A FORWARD -p tcp --dport $i -j DROP1
done
$ECHO ""
$ECHO -n "FW: Blocking attacks to UDP port"
for i in $UDPBLOCK
do
$ECHO -n "$i "
$IPT -A INPUT -p udp --dport $i -j DROP1
$IPT -A OUTPUT -p udp --dport $i -j DROP1
$IPT -A FORWARD -p udp --dport $i -j DROP1
done
$ECHO ""
#Запускаем отслеживание соединенийпо ftp
MODULES="ip_nat_ftp ip_conntrack_ftp"
for i in $MODULES
do
$ECHO "Добавляем модуль $i"
modprobe $i
done
#PPTP
$IPT -A OUTPUT -o $SSP_IFACE -p udp -s $SSP_IP --dport 53 -m state --state NEW -j ACCEPT
$IPT -A INPUT -p tcp -d $SSP_IP --sport 1723 -j ACCEPT
$IPT -A INPUT -p gre -d $SSP_IP -j ACCEPT
$IPT -A OUTPUT -s $SSP_IP -j ACCEPT
#Защищаем клиенты для чата
IRC='ircd'
MSN=1863
ICQ=5190
NFS='sunrpc'
PORTAGE='rsync'
GIT=9418
SIP=5060
OpenPGP_HTTP_Keyserver=11371
#Остальные порты сервисов
TCPSERV="domain ssh http 181 3389 https ftp ftp-data mail 465 pop3 pop3s imap3 imaps imap2 8585 8090 23 4321 9443 time $SIP 20 21 5061 $PORTAGE $GIT $IRC $MSN $ICQ $OpenPGP_HTTP_Keyserver"
UDPSERV="domain time"
$ECHO -n "FW: Allowing inside systems to use service:"
for i in $TCPSERV
do
$ECHO -n "$i "
$IPT -A OUTPUT -o $INET_IFACE -p tcp -s $INET_IP --dport $i --syn -m state --state NEW -j ACCEPT
$IPT -A FORWARD -i $LAN_IFACE -p tcp -s $LAN_NET --dport $i --syn -m state --state NEW -j ACCEPT
done
$ECHO ""
$ECHO -n "FW: Allowing inside systems to use service:"
for i in $UDPSERV
do
$ECHO -n "$i "
$IPT -A OUTPUT -o $INET_IFACE -p udp -s $INET_IP --dport $i -m state --state NEW -j ACCEPT
$IPT -A FORWARD -i $LAN_IFACE -p udp -s $LAN_NET --dport $i -m state --state NEW -j ACCEPT
done
$ECHO ""
#Разрешаем внешнее пингование
$IPT -A OUTPUT -o $INET_IFACE -p icmp -s $INET_IP --icmp-type 8 -m state --state NEW -j ACCEPT
$IPT -A INPUT -i $INET_IFACE -p icmp --icmp-type 8 -m state --state NEW -j ACCEPT
$IPT -A OUTPUT -o $SSP_IFACE -p icmp -s $SSP_IP --icmp-type 8 -m state --state NEW -j ACCEPT
$IPT -A FORWARD -i $LAN_IFACE -p icmp -s $LAN_NET --icmp-type 8 -m state --state NEW -j ACCEPT
#Разрешаем файрволу пинговать внутреннюю сеть
$IPT -A OUTPUT -o $LAN_IFACE -p icmp -s $LAN_NET --icmp-type 8 -m state --state NEW -j ACCEPT
$IPT -A INPUT -i $LAN_IFACE -p icmp -s $LAN_NET --icmp-type 8 -m state --state NEW -j ACCEPT
#Aserisk SIP incoming
#$IPT -A INPUT -i $INET_IFACE -p udp --dport 5060:5061 -m state --state NEW -j ACCEPT
#$IPT -A OUTPUT -o $INET_IFACE -p udp --dport 5060:5061 -j ACCEPT
#$IPT -A INPUT -i $INET_IFACE -p udp --dport 10000:20000 -m state --state NEW -j ACCEPT
#$IPT -A OUTPUT -o $INET_IFACE -p udp --dport 10000:20000 -j ACCEPT
#$IPT -A INPUT -i $LAN_IFACE -p udp --dport 5060:5061 -j ACCEPT
#$IPT -A OUTPUT -o $LAN_IFACE -p udp --dport 5060:5061 -j ACCEPT
#$IPT -A INPUT -i $LAN_IFACE -p udp --dport 10000:20000 -j ACCEPT
#$IPT -A OUTPUT -o $LAN_IFACE -p udp --dport 10000:20000 -j ACCEPT
#Расставляем акцепты
$IPT -A INPUT -i $LAN_IFACE -p tcp --dport 22 --syn -m state --state NEW -j ACCEPT
$IPT -A INPUT -i $INET_IFACE -p tcp --dport 22 --syn -m state --state NEW -j ACCEPT
#$IPT -A INPUT -i $INET_IFACE -p tcp --dport 80 --syn -m state --state NEW -j ACCEPT
$IPT -A INPUT -i $LAN_IFACE -p udp --dport 67:68 -j ACCEPT
$IPT -A INPUT -i $LAN_IFACE -p udp --dport 53 -j ACCEPT
$IPT -A OUTPUT -o $LAN_IFACE -p udp --dport 67:68 -j ACCEPT
$IPT -A INPUT -i $LO_IFACE -j ACCEPT
$IPT -A OUTPUT -o $LO_IFACE -j ACCEPT
$IPT -t nat -A PREROUTING -j ACCEPT
$IPT -t nat -A POSTROUTING -o $INET_IFACE -s $LAN_NET -j MASQUERADE
$IPT -t nat -A POSTROUTING -j ACCEPT
$IPT -t nat -A OUTPUT -j ACCEPT
$IPT -A INPUT -p tcp --dport auth --syn -m state --state NEW -j ACCEPT
$IPT -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPT -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPT -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
#Блокируем все остальное
$IPT -A INPUT -j DROP1
$IPT -A OUTPUT -j REJECT1
$IPT -A FORWARD -j DROP1