URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID10
Нить номер: 3637
[ Назад ]

Исходное сообщение
"открыть порт"

Отправлено ce8ep , 29-Янв-08 16:29 
Добрый день!
Подскажите, что надо прописать, чтобы открыть порт 139? Два дня бьюсь.. Порт открывается, только если фаерволл совсем остановить :(
В Линуксе чайник - а кроме меня совсем некому..

фаерволл:

IPT=/usr/sbin/iptables
IPTR=/usr/sbin/iptables-restore
IPTS=/usr/sbin/iptables-save
INT_LAN=eth2
EXT_LAN=eth1
IP_INT_LAN=192.168.0.254
IP_EXT_LAN=222.222.222.222
BROADCAST_INT_LAN=192.168.0.255
BROADCAST_EXT_LAN=222.222.222.255

start()
{
echo -n "Starting firewall...             "

$IPT -F
$IPT -t nat -F
$IPT -t mangle -F
$IPTR -c /etc/iptables

echo "Done"
}


stop()
{
echo -n "Stop firewall...                "

$IPT -F
$IPT -X
$IPT -t nat -F
$IPT -t mangle -F
$IPT -t filter -P INPUT ACCEPT
$IPT -t filter -P OUTPUT ACCEPT
$IPT -t filter -P FORWARD ACCEPT
$IPT -t nat -P PREROUTING ACCEPT
$IPT -t nat -P POSTROUTING ACCEPT
$IPT -t nat -P OUTPUT ACCEPT
$IPT -t mangle -P PREROUTING ACCEPT
$IPT -t mangle -P POSTROUTING ACCEPT
$IPT -t mangle -P INPUT ACCEPT
$IPT -t mangle -P OUTPUT ACCEPT
$IPT -t mangle -P FORWARD ACCEPT

echo "Done"
}


save()
{
echo -n "Save firewall rules...                "

$IPTS -c > /etc/iptables

echo "Done"
}


init()
{
echo -n "Init firewall...                "

reset


#==================================================

    $IPT -t nat -A POSTROUTING -o eth1 -j SNAT --to-source 222.222.222.222
    $IPT -A FORWARD -i eth2 -m state --state NEW -j ACCEPT

#==================================================
#

# SAVE rules in file ====== /etc/iptables

$IPTS -c > /etc/iptables

echo "Done"
}


reset()
{
$IPT -F
$IPT -X
$IPT -Z
$IPT -t nat -F
$IPT -t mangle -F
$IPT -t filter -P INPUT DROP
$IPT -t filter -P OUTPUT ACCEPT
$IPT -t filter -P FORWARD DROP
$IPT -t nat -P PREROUTING ACCEPT
$IPT -t nat -P POSTROUTING ACCEPT
$IPT -t nat -P OUTPUT ACCEPT
$IPT -t mangle -P PREROUTING ACCEPT
$IPT -t mangle -P POSTROUTING ACCEPT
$IPT -t mangle -P INPUT ACCEPT
$IPT -t mangle -P OUTPUT ACCEPT
$IPT -t mangle -P FORWARD ACCEPT
#==================================================

# STATE RULES
$IPT -A INPUT -m state --state INVALID -j DROP
$IPT -A FORWARD -m state --state INVALID -j DROP
$IPT -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPT -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

# LOCALHOST ===========
$IPT -A FORWARD ! -i lo -s 127.0.0.1 -j DROP
$IPT -A INPUT ! -i lo -s 127.0.0.1 -j DROP
$IPT -A FORWARD ! -i lo -d 127.0.0.1 -j DROP
$IPT -A INPUT ! -i lo -d 127.0.0.1 -j DROP
$IPT -A INPUT -i $INT_LAN -s $IP_INT_LAN -j DROP
$IPT -A INPUT -i $EXT_LAN -s $IP_EXT_LAN -j DROP
$IPT -A FORWARD -i $INT_LAN -s $IP_INT_LAN -j DROP
$IPT -A FORWARD -i $EXT_LAN -s $IP_EXT_LAN -j DROP
$IPT -A INPUT -d 127.0.0.1 -j ACCEPT
$IPT -A INPUT -s 127.0.0.1 -j ACCEPT
$IPT -A INPUT -i $INT_LAN -d $BROADCAST_INT_LAN -j DROP
$IPT -A INPUT -i $EXT_LAN -d $BROADCAST_EXT_LAN -j DROP

# SYN-FLOOD Х ==========
$IPT -N syn-flood
$IPT -A INPUT -p tcp --syn -j syn-flood
$IPT -A FORWARD -p tcp --syn -j syn-flood
$IPT -A syn-flood -m limit --limit 1/s --limit-burst 4 -j RETURN
$IPT -A syn-flood -j LOG --log-prefix "SYN-FLOOD PACKETS: "
$IPT -A syn-flood -j DROP

$IPT -A INPUT -p tcp ! --syn -m state --state NEW -j LOG --log-prefix "NOT SYN PACKETS: "
$IPT -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
$IPT -A FORWARD -p tcp ! --syn -m state --state NEW -j LOG --log-prefix "NOT SYN PACKETS: "
$IPT -A FORWARD -p tcp ! --syn -m state --state NEW -j DROP

# ICMP ENABLED
$IPT -A INPUT -p icmp -j ACCEPT
# SSH enable
$IPT -A INPUT -p tcp -m state --state NEW --dport 22 -m recent --update --seconds 20 -j DROP
$IPT -A INPUT -p tcp -m state --state NEW --dport 22 -m recent --set -j ACCEPT

}

case "$1" in

'start')
   start
   ;;

'stop')
   stop
   ;;

'save')
   save
   ;;

'init')
   init
   ;;

'reset')
   reset
   ;;
*)
echo "Usage /etc/rc.d/rc.firewall start|stop|save|init|reset"

     exit 88
esac


Содержание

Сообщения в этом обсуждении
"открыть порт"
Отправлено CrAzOiD , 29-Янв-08 16:55 
>[оверквотинг удален]
>   ;;
>
>'reset')
>   reset
>   ;;
>*)
>echo "Usage /etc/rc.d/rc.firewall start|stop|save|init|reset"
>
>     exit 88
>esac

1. порт 139, а протокол? UDP смею предположить?
2. как запускаете то? start или reset? и если start, то где содержимое /etc/iptables ?
3. кто так хитро придумал выполнять reset?


"открыть порт"
Отправлено ce8ep , 29-Янв-08 17:16 

>1. порт 139, а протокол? UDP смею предположить?

ага

>2. как запускаете то? start или reset? и если start, то где
>содержимое /etc/iptables ?

start

iptables:

# Generated by iptables-save v1.3.8 on Fri Jan 25 18:34:47 2008
*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
[0:0] -A POSTROUTING -o eth1 -j SNAT --to-source 195.144.248.198
COMMIT
# Completed on Fri Jan 25 18:34:47 2008
# Generated by iptables-save v1.3.8 on Fri Jan 25 18:34:47 2008
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
:syn-flood - [0:0]
[0:0] -A INPUT -m state --state INVALID -j DROP
[0:0] -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
[0:0] -A INPUT -s 127.0.0.1 -i ! lo -j DROP
[0:0] -A INPUT -d 127.0.0.1 -i ! lo -j DROP
[0:0] -A INPUT -s 192.168.0.254 -i eth2 -j DROP
[0:0] -A INPUT -s 195.144.248.198 -i eth1 -j DROP
[0:0] -A INPUT -d 127.0.0.1 -j ACCEPT
[0:0] -A INPUT -s 127.0.0.1 -j ACCEPT
[0:0] -A INPUT -d 192.168.0.255 -i eth2 -j DROP
[0:0] -A INPUT -d 195.144.248.199 -i eth1 -j DROP
[0:0] -A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j syn-flood
[0:0] -A INPUT -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -j LOG --log-prefix "NOT SYN PACKETS: "
[0:0] -A INPUT -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -j DROP
[0:0] -A INPUT -p icmp -j ACCEPT
[0:0] -A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -m recent --update --seconds 20 --name DEFAULT --rsource -j DROP
[0:0] -A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -m recent --set --name DEFAULT --rsource -j ACCEPT
[0:0] -A FORWARD -m state --state INVALID -j DROP
[1:40] -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
[0:0] -A FORWARD -s 127.0.0.1 -i ! lo -j DROP
[0:0] -A FORWARD -d 127.0.0.1 -i ! lo -j DROP
[0:0] -A FORWARD -s 192.168.0.254 -i eth2 -j DROP
[0:0] -A FORWARD -s 195.144.248.198 -i eth1 -j DROP
[0:0] -A FORWARD -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j syn-flood
[0:0] -A FORWARD -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -j LOG --log-prefix "NOT SYN PACKETS: "
[0:0] -A FORWARD -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -j DROP
[0:0] -A FORWARD -i eth2 -m state --state NEW -j ACCEPT
[0:0] -A syn-flood -m limit --limit 1/sec --limit-burst 4 -j RETURN
[0:0] -A syn-flood -j LOG --log-prefix "SYN-FLOOD PACKETS: "
[0:0] -A syn-flood -j DROP
COMMIT

>3. кто так хитро придумал выполнять reset?

сложно сказать. наверно кто-то умный :)


"открыть порт"
Отправлено CrAzOiD , 29-Янв-08 17:51 

eth1 - реальная сеть
eth2 - локальная сеть

наверное есть и eth0, тока про ничего ничего не понятно
и куда открывать - тоже не понятно...


"открыть порт"
Отправлено ce8ep , 29-Янв-08 18:09 
>
>eth1 - реальная сеть
>eth2 - локальная сеть
>
>наверное есть и eth0, тока про ничего ничего не понятно
>и куда открывать - тоже не понятно...

eth0 - нету.
открыть порт 139 для eth0



"открыть порт"
Отправлено CrAzOiD , 29-Янв-08 18:11 
>>
>>eth1 - реальная сеть
>>eth2 - локальная сеть
>>
>>наверное есть и eth0, тока про ничего ничего не понятно
>>и куда открывать - тоже не понятно...
>
>eth0 - нету.
>открыть порт 139 для eth0

бывают еще направления... in и out


"открыть порт"
Отправлено ce8ep , 29-Янв-08 18:20 
>[оверквотинг удален]
>>>eth1 - реальная сеть
>>>eth2 - локальная сеть
>>>
>>>наверное есть и eth0, тока про ничего ничего не понятно
>>>и куда открывать - тоже не понятно...
>>
>>eth0 - нету.
>>открыть порт 139 для eth0
>
>бывают еще направления... in и out

и in и out


"открыть порт"
Отправлено CrAzOiD , 29-Янв-08 18:40 
>>[оверквотинг удален]
>>>>eth1 - реальная сеть
>>>>eth2 - локальная сеть
>>>>
>>>>наверное есть и eth0, тока про ничего ничего не понятно
>>>>и куда открывать - тоже не понятно...
>>>
>>>eth0 - нету.
>>>открыть порт 139 для eth0

-A INPUT -i eth0 -p udp -m udp --dport 139 -j ACCEPT
разрешит входящие пакеты UDP/139 на интерфейс eth0 (хотя вы мне только что сказали что его нет)
исходящие вроде и не прикрыты


"открыть порт"
Отправлено angra , 29-Янв-08 17:12 
Открыть куда и откуда?
Хотя, если вы уже потратили два дня, то потратьте еще два часа и почитайте http://www.opennet.me/docs/RUS/iptables, после чего вопросы вряд ли возникнут. Сам скрипт фаерволла довольно простой, вам понадобится либо изменить текущие правила и сделать save, либо stop, поменять /etc/iptables, start

"открыть порт"
Отправлено ce8ep , 29-Янв-08 18:11 
>Открыть куда и откуда?

в локальную сеть - eth2. откуда - это что имеется ввиду?

>Хотя, если вы уже потратили два дня, то потратьте еще два часа
>и почитайте http://www.opennet.me/docs/RUS/iptables, после чего вопросы вряд ли возникнут. Сам скрипт
>фаерволла довольно простой, вам понадобится либо изменить текущие правила и сделать
>save, либо stop, поменять /etc/iptables, start

двумя часами тут конечно не обойдешься..
спасибо, буду изучать.