Добрый день!
Подскажите, что надо прописать, чтобы открыть порт 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.255start()
{
echo -n "Starting firewall... "$IPT -F
$IPT -t nat -F
$IPT -t mangle -F
$IPTR -c /etc/iptablesecho "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 ACCEPTecho "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
>[оверквотинг удален]
> ;;
>
>'reset')
> reset
> ;;
>*)
>echo "Usage /etc/rc.d/rc.firewall start|stop|save|init|reset"
>
> exit 88
>esac1. порт 139, а протокол? UDP смею предположить?
2. как запускаете то? start или reset? и если start, то где содержимое /etc/iptables ?
3. кто так хитро придумал выполнять reset?
>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?
сложно сказать. наверно кто-то умный :)
eth1 - реальная сеть
eth2 - локальная сетьнаверное есть и eth0, тока про ничего ничего не понятно
и куда открывать - тоже не понятно...
>
>eth1 - реальная сеть
>eth2 - локальная сеть
>
>наверное есть и eth0, тока про ничего ничего не понятно
>и куда открывать - тоже не понятно...eth0 - нету.
открыть порт 139 для eth0
>>
>>eth1 - реальная сеть
>>eth2 - локальная сеть
>>
>>наверное есть и eth0, тока про ничего ничего не понятно
>>и куда открывать - тоже не понятно...
>
>eth0 - нету.
>открыть порт 139 для eth0бывают еще направления... in и out
>[оверквотинг удален]
>>>eth1 - реальная сеть
>>>eth2 - локальная сеть
>>>
>>>наверное есть и eth0, тока про ничего ничего не понятно
>>>и куда открывать - тоже не понятно...
>>
>>eth0 - нету.
>>открыть порт 139 для eth0
>
>бывают еще направления... in и outи in и out
>>[оверквотинг удален]
>>>>eth1 - реальная сеть
>>>>eth2 - локальная сеть
>>>>
>>>>наверное есть и eth0, тока про ничего ничего не понятно
>>>>и куда открывать - тоже не понятно...
>>>
>>>eth0 - нету.
>>>открыть порт 139 для eth0-A INPUT -i eth0 -p udp -m udp --dport 139 -j ACCEPT
разрешит входящие пакеты UDP/139 на интерфейс eth0 (хотя вы мне только что сказали что его нет)
исходящие вроде и не прикрыты
Открыть куда и откуда?
Хотя, если вы уже потратили два дня, то потратьте еще два часа и почитайте http://www.opennet.me/docs/RUS/iptables, после чего вопросы вряд ли возникнут. Сам скрипт фаерволла довольно простой, вам понадобится либо изменить текущие правила и сделать save, либо stop, поменять /etc/iptables, start
>Открыть куда и откуда?в локальную сеть - eth2. откуда - это что имеется ввиду?
>Хотя, если вы уже потратили два дня, то потратьте еще два часа
>и почитайте http://www.opennet.me/docs/RUS/iptables, после чего вопросы вряд ли возникнут. Сам скрипт
>фаерволла довольно простой, вам понадобится либо изменить текущие правила и сделать
>save, либо stop, поменять /etc/iptables, startдвумя часами тут конечно не обойдешься..
спасибо, буду изучать.