101

Re: Iptables

Да, вы правы.. не слушает... Хм.. пойду искать "как заставить nginx слушать нужный порт и сайт"

102

Re: Iptables

подскажите, как сделать перенаправление порта через iptables, аналогичное тому что гегерирует веб-фейс ? нужно перенаправить порт с адресом в другой подсети, а веб-фейс этого не позволяет

правило для открытия порта идентичное веб-фейсовому, составить удалось без особых проблем

iptables -I FORWARD -p tcp -d 192.168.0.200 -m state --state NEW --destination-port 80 -j ACCEPT

а вот с перенаправлением вышел затык

Отредактировано avtoTaz (2014-10-26 21:59:45)

103

Re: Iptables

Добрый день. Пропал досту по SSH, я что-то намутил в файле s10dropbear, когда пытался открыть доступ к зюхе через интернет по ssh, теперь даже если в управление открываешь 22 порт и заходишь по ssh через путти, то просто сессия висит и все. Причем как и через интернет так и через локалку, ое вообще пропал... Еще вопрос можно ли править файлы по фтп, просто зюха стоит дома и естественно там нет времени им заниматься, а на роботе есть. Вот я и правил этот файл по фтп и потом обратно его заливал, правил через notepad++.

#!/bin/sh

MOUNTPNT="/media/DISK_A1"
MOUNT="$MOUNTPNT/system"
RSA="$MOUNT/etc/dropbear/dropbear_rsa_host_key"
DSS="$MOUNT/etc/dropbear/dropbear_dss_host_key"
PID="/var/run/dropbear.pid"
PORT_F=22

DROPBEAR="$MOUNT/usr/sbin/dropbear"

export PATH=$MOUNT/bin:$MOUNT/sbin:$MOUNT/usr/bin:$MOUNT/usr/sbin:/sbin:/usr/sbin:/bin:/usr/bin
export LD_LIBRARY_PATH=$MOUNT/lib:$MOUNT/usr/lib:/lib:/usr/lib

dropbear_status ()
{
    [ -f $PIDFILE ] && [ -d /proc/`cat $PID` ]
}


start()
{
    $DROPBEAR -d $DSS -r $RSA -p $PORT -P $PID
    iptables -A INPUT -p tcp --dport 22 -j ACCEPT
}


stop()
{
    kill `cat $PID`
}


if [ "$2" == "automount" ]; then
    exit
fi


if [ "$2" == "init" ]; then
    start
fi


case "$1" in
    start)
        start
        ;;
    stop)
        stop
        ;;
    restart)
        stop
        start
        ;;
    *)
        echo "Usage: $0 {start|stop}"
        ;;
esac

104

Re: Iptables

iptables нужно ставить отдельно или он входит в базовый ext_init ?
У меня файл disk_a1\system\bin\ext_firewall.sh присутствует, датирован 24.04.2011 и содержит код:

#!/bin/sh

MOUNT="/media/DISK_A1/system"
FWD="$MOUNT/etc/firewall.d"

export PATH=$MOUNT/bin:$MOUNT/sbin:$MOUNT/usr/bin:$MOUNT/usr/sbin:/sbin:/usr/sbin:/bin:/usr/bin
export LD_LIBRARY_PATH=$MOUNT/lib:$MOUNT/usr/lib:/lib:/usr/lib

start() {
    for prog in `ls $FWD`; do
        $FWD/$prog
    done
}

start

105

Re: Iptables

YURETS :

iptables нужно ставить отдельно или он входит в базовый ext_init ?

iptables входит в состав прошивки роутера.

У меня файл disk_a1\system\bin\ext_firewall.sh присутствует, датирован 24.04.2011 и содержит код:

Собственно, этот код повелевает выполнить всё файлы(исполняемые) из папки /media/DISK_A1/system/etc/firewall.d

106

Re: Iptables

создал скрипт fw.sh такого содержания:

#!/bin/sh
iptables -A INPUT -s 192.1.1.0/24 -d 209.17.178.195 -j REJECT

Закинул его в disk_a1\system\etc\firewall.d\  и дал 777
скрипт выполнился, а вот правило не сработало, внешний адрес 209.17.178.195 по прежнему пингуется из локалки.

/media/DISK_A1/system/root # iptables -nvL
Chain INPUT (policy DROP 45875 packets, 3775K bytes)
 pkts bytes target     prot opt in     out     source               destination
30872 4329K ACCEPT     all  --  br0    *       0.0.0.0/0            0.0.0.0/0
24392 3191K ACCEPT     all  --  ppp0   *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
    0     0 ACCEPT     2    --  ppp0   *       0.0.0.0/0            0.0.0.0/0
 1034 41360 ACCEPT     all  --  eth2.2 *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
    0     0 ACCEPT     2    --  eth2.2 *       0.0.0.0/0            0.0.0.0/0
    0     0 ACCEPT     udp  --  eth2.2 *       0.0.0.0/0            0.0.0.0/0           udp dpt:1701
    0     0 ACCEPT     tcp  --  eth2.2 *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:80
  131  7008 ACCEPT     tcp  --  ppp0   *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:80
    0     0 DROP       icmp --  ppp0   *       0.0.0.0/0            0.0.0.0/0           icmp type 8
    0     0 DROP       icmp --  eth2.2 *       0.0.0.0/0            0.0.0.0/0           icmp type 8
  557 68183 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0           icmp type 255
    0     0 REJECT     all  --  *      *       0.0.0.0/0            209.17.178.195      reject-with icmp-port-unreachable

Chain FORWARD (policy DROP 2349 packets, 152K bytes)
 pkts bytes target     prot opt in     out     source               destination
    0     0 DROP       all  --  !br0   eth2.2  0.0.0.0/0            0.0.0.0/0
    0     0 DROP       all  --  !br0   ppp0    0.0.0.0/0            0.0.0.0/0
 416K   22M ACCEPT     all  --  ppp0   *       0.0.0.0/0            192.1.1.4           state NEW
    1    78 ACCEPT     all  --  eth2.2 *       0.0.0.0/0            192.1.1.4           state NEW
 395K   34M ACCEPT     all  --  br0    *       0.0.0.0/0            0.0.0.0/0           state NEW
 457K   32M ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
    0     0 MINIUPNPD  all  --  eth2.2 !eth2.2  0.0.0.0/0            0.0.0.0/0
    0     0 MINIUPNPD  all  --  ppp0   !ppp0   0.0.0.0/0            0.0.0.0/0

Chain OUTPUT (policy ACCEPT 76784 packets, 13M bytes)
 pkts bytes target     prot opt in     out     source               destination

Chain MINIUPNPD (2 references)
 pkts bytes target     prot opt in     out     source               destination
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            192.1.1.4           udp dpt:53791
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            192.1.1.4           udp dpt:65166
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            192.1.1.4           udp dpt:55267
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            192.1.1.4           udp dpt:51662
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            192.1.1.4           udp dpt:60390
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            192.1.1.10          tcp dpt:33196
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            192.1.1.10          udp dpt:33196
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            192.1.1.2           tcp dpt:30173
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            192.1.1.2           udp dpt:30173
/media/DISK_A1/system/root #

В чем может быть проблема ?

107

Re: Iptables

YURETS :

В чем может быть проблема ?

А чего REJECT а не DROP  ?
Я бы DROP написал...
Стоп, стоп, стоп!.. А таблица-то почему INPUT ?
Так оно, по-ходу, вообще никогда и не отрабатывает. ИМХО, в FORWARD это надо...

Вообще, лучше про iptables почитать.... Гугл неплохую доку находит(в т.ч. и на русском языке).

108

Re: Iptables

Погуглил на iptables, там везде разные, нет четкого и однозначного варианта брокировки "злоумышленника"

пробовал 3 варианта:

iptables -A OUTPUT -d 209.17.178.195 -j DROP
iptables -A INPUT -d 209.17.178.195 -j DROP
iptables -A FORWARD -d 209.17.178.195-j DROP

после форварда сначала была блокировка одного пинга, но следующие пошли как ни в чем не бывало.

Ответ от 209.17.178.195: число байт=32 время=235мс TTL=109
Превышен интервал ожидания для запроса.
Ответ от 209.17.178.195: число байт=32 время=235мс TTL=109
Ответ от 209.17.178.195: число байт=32 время=235мс TTL=109
Ответ от 209.17.178.195: число байт=32 время=240мс TTL=109
Ответ от 209.17.178.195: число байт=32 время=238мс TTL=109
Превышен интервал ожидания для запроса.
Ответ от 209.17.178.195: число байт=32 время=242мс TTL=109
Ответ от 209.17.178.195: число байт=32 время=240мс TTL=109
Ответ от 209.17.178.195: число байт=32 время=237мс TTL=109

Отредактировано YURETS (2014-12-19 21:15:24)

109

Re: Iptables

YURETS :

там везде разные, нет четкого и однозначного варианта брокировки "злоумышленника"

Всё логично - у всех свои задачи, и вариантов их решения тоже может быть много.
1) Опишите(сформулируйте) свою задачу(я так понимаю, ваш "злоумышленник" находиться во внутренней сети, не в инете?)
2) Если пользуете цепочку FORWARD, то проверять пинг надо не с роутера, а с компа.
3) Надо просто изучить доку на iptables - понимание того, какое нужно правило потом постепенно придет.
4) Вкратце ваши 3 варианта:
а) блокировка доступа(посылки пакетов) с РОУТЕРА(не с компов из локалки) на адрес 209.17.178.195
б) блокировка доступа(приема пакетов) на РОУТЕР с адреса 209.17.178.195
в)  блокировка доступа(посылки пакетов) из локалки на адрес 209.17.178.195  (вроде должно работать, только вот пробела перед -j не видно)

110

Re: Iptables

Dr.Acid
1. Неправильно, злоумышленник в интернете, далеко за пределами страны wink
Задача заблочить это адрес, чтобы он не пинговался и чтобы от него и к нему не шли пакеты из моей локальной сети, которая за натом.
2. Это пинг с компа.
3. доку бегло прочел, остановился на примерах по блокировке, там INPUT и DROP
4. В одной команде не получится блокировать как на прием так и на отправку, нужны разные команды ?

111

Re: Iptables

YURETS
1) ??? (Вообще теперь не понятно!) 209.17.178.195 это адрес внутри вашей сети, или в инете? Если в инете, то, боюсь, на него никак не получится воздействовать(при атаке из инета, опять-же).
2) Компа из "локалки" роутера, надо понимать?
3) Примеры обычно пишутся для(защиты) NIX-овых компов(посредством iptables на нихже), поэтому и INPUT
4) Конечно же разные - хоть целый вагон их пишите.

P.S.
Специально попробовал сейчас закрыть mail.ru - ( один из айпи: 217.69.139.201)
Получилось так:

iptables -I FORWARD -d 217.69.139.201 -j DROP

Ключевой момент здесь - I вместо A, чтобы правило стало "наверх".
А с A не работает - вот какая штука!

Отредактировано Dr.Acid (2014-12-20 01:26:09)

112

Re: Iptables

Dr.Acid

То что доктор прописал, спасибо огромное!!!

твет от 209.17.178.195: число байт=32 время=223мс TTL=108
твет от 209.17.178.195: число байт=32 время=223мс TTL=108
твет от 209.17.178.195: число байт=32 время=229мс TTL=108
твет от 209.17.178.195: число байт=32 время=224мс TTL=108
твет от 209.17.178.195: число байт=32 время=224мс TTL=108
твет от 209.17.178.195: число байт=32 время=224мс TTL=108
твет от 209.17.178.195: число байт=32 время=225мс TTL=108
твет от 209.17.178.195: число байт=32 время=225мс TTL=108
твет от 209.17.178.195: число байт=32 время=223мс TTL=108
твет от 209.17.178.195: число байт=32 время=223мс TTL=108
твет от 209.17.178.195: число байт=32 время=224мс TTL=108
ревышен интервал ожидания для запроса.
ревышен интервал ожидания для запроса.
ревышен интервал ожидания для запроса.
ревышен интервал ожидания для запроса.
ревышен интервал ожидания для запроса.
ревышен интервал ожидания для запроса.
ревышен интервал ожидания для запроса.
ревышен интервал ожидания для запроса.

1. Адрес в инете, всё получилось как надо.
2. Совершенно верно.
3. Ясно.
4. И в каждой следующей команде скрипта fw.sh писать I чтобы правило первым выполнялось, так ?

113

Re: Iptables

YURETS :

4. И в каждой следующей команде скрипта fw.sh писать I чтобы правило первым выполнялось, так ?

Зависит от ситуации. Иногда между A и I нет никакой разницы, иногда есть. В вашем случае она есть:
Вот мой фрагмент вывода iptables -nvL (штатный, без экспериментов):

Chain FORWARD (policy DROP 4043 packets, 162K bytes)
 pkts bytes target     prot opt in     out     source               destination
    0     0 DROP       all  --  !br0   eth2.2  0.0.0.0/0            0.0.0.0/0
    0     0 DROP       all  --  !br0   ppp0    0.0.0.0/0            0.0.0.0/0
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            192.168.1.13        state NEW udp dpt:8621
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            192.168.1.13        state NEW tcp dpt:8621
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            192.168.1.11        state NEW udp dpt:51413
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            192.168.1.11        state NEW tcp dpt:51413
 6905  360K ACCEPT     all  --  br0    *       0.0.0.0/0            0.0.0.0/0           state NEW
1871K 1677M ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED

Здесь основные рабочие - 2 последние строчки - они, по сути, всё и пропускают.
Если добавить правило через A(append), оно встанет в конц, и при просмотре таблицы до него "не дойдет" дело - пакеты установки соединения пропустит

ACCEPT     all  --  br0    *       0.0.0.0/0            0.0.0.0/0           state NEW

последующие

ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED

Если добавить через I(insert?), оно окажется наверху и дропнет нужные пакеты.
Я когда делал "белый список", то сначала очищал таблицу полностью:

iptables -F FORWARD
iptables -P FORWARD DROP

А потом прописывал нужные правила для пересылки пакетов - там было всё-равно, кто в каком порядке идет, поэтому делал через A(но можно и через I):

iptables -A FORWARD --source 192.168.0.0/16 --destination aa1.bb1.cc1.dd1/32 --match state --state NEW,ESTABLISHED -j ACCEPT
iptables -A FORWARD --source 192.168.0.0/16 --destination aa2.bb2.cc2.dd2/32 --match state --state NEW,ESTABLISHED -j ACCEPT
-------
и т.д.
-------
# back response from Inet
iptables -A FORWARD --destination 192.168.0.0/16 --match state --state ESTABLISHED -j ACCEPT 

114

Re: Iptables

Имеется сервер с настроенным SQUID`ом, который подключен через роутер Zyxel GIGA 2 прошитый 1 версией прошивки, раздающий интернет на все подключенные к нему компьютеры находящихся в сети 192.168.1.0/24. ( Сервер 192.168.1.2 )
Подскажите какие правила необходимо указать в iptables роутера, чтобы он делал редирект запросов поступающих на 80 порт роутера, на порт сервера 3128.
Встретил подобную тему http://forum.zyxmon.org/topic183-prozra … roksi.html с указанием правил, которые я пытался хоть как то изменить, но ничего из этого не вышло.
Надеюсь на вашу помощь.

Отредактировано 876974 (2015-04-22 04:07:29)

115

Re: Iptables

Подскажите, как открыть извне доступ к ВЕБ-интерфейсу xupnpd? Его локальный адрес: http://192.168.1.1:4044/
Порт слушается:

# netstat -lt
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 KEENETIC:4044           0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:http            0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:domain          0.0.0.0:*               LISTEN
tcp        0      0 KEENETIC:4022           0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:ssh             0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:telnet          0.0.0.0:*               LISTEN
netstat: no support for 'AF INET6 (tcp)' on this system

Создал файл /media/DISK_A1/system/etc/firewall.d/firewall.sh

#!/bin/sh
iptables -A INPUT -p tcp --dport 4044 -j ACCEPT

Файл подхватился:

# iptables -n -L -v --line-numbers
Chain INPUT (policy DROP 139 packets, 9973 bytes)
num   pkts bytes target     prot opt in     out     source               destination
1        0     0 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0
2       19   608 ACCEPT     all  --  eth2.2 *       0.0.0.0/0            224.0.0.0/4
3      462 50996 ACCEPT     all  --  br0    *       0.0.0.0/0            0.0.0.0/0
4      289 43751 ACCEPT     all  --  eth2.2 *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
5        0     0 ACCEPT     2    --  eth2.2 *       0.0.0.0/0            0.0.0.0/0
6        0     0 DROP       icmp --  eth2.2 *       0.0.0.0/0            0.0.0.0/0           icmp type 8
7        0     0 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0           icmp type 255
8        2   104 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:4044

Chain FORWARD (policy DROP 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination
1        0     0 DROP       all  --  !br0   eth2.2  0.0.0.0/0            0.0.0.0/0
2       54  5664 ACCEPT     all  --  br0    *       0.0.0.0/0            0.0.0.0/0           state NEW
3      606  273K ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED

Chain OUTPUT (policy ACCEPT 1282 packets, 279K bytes)
num   pkts bytes target     prot opt in     out     source               destination

У роутера статичный IP-адрес.
Пытаюсь зайти на http://(внешний IP):4044 - не получается...
http://zyxel.ua/openport говорит, что порт закрыт...

116

Re: Iptables

separatist, сделали?

iptables -I INPUT -i lo -j ACCEPT

В курсе, что dlna через инет не работает? Большого смысла управлять xypnpd я не вижу.

117

Re: Iptables

Zyxmon, добавил

iptables -I INPUT -i lo -j ACCEPT

в /media/DISK_A1/system/etc/firewall.d/firewall.sh
Не помогло.
DLNA через инет не собираюсь использовать.
Хочу путем http://(внешний IP):4044/ui/myplaylist.m3u открыть доступ к плейлисту.

Аналогично у меня не получается открыть вовне порт 4022 для раздачи IPTV моего провайдера свом родителям, у которых другой провайдер... хотя 80 порт с админкой роутера открывается таким способом без проблем.

118

Re: Iptables

separatist :

DLNA через инет не собираюсь использовать.
Хочу путем http://(внешний IP):4044/ui/myplaylist.m3u открыть доступ к плейлисту.

А это не через инет??
Мне в голову приходит туннелировать всё это добро через VPN. Но насколько я знаю vpn обычно режет широковещательные пакеты. Это как то надо побороть.. Возможно попробовать SSH-тоннель. Как там не знаю, не пробовал пока ещё..

separatist :

Аналогично у меня не получается открыть вовне порт 4022 для раздачи IPTV моего провайдера свом родителям, у которых другой провайдер... хотя 80 порт с админкой роутера открывается таким способом без проблем.

То же думаю в сторону тоннеля копать. Самба наружу то же не высовывается, даже если порты открыть соответствующие, пробовал в своё время, обломался..
__________________
С уважением, Константин, a.k.a - КБ
ZyXEL Keenetic Giga II (чёрный) | FW V1.11.RU.NDMS 2014-01-08 21:02:21 | Entware

Отредактировано pulsar_85 (2015-05-03 04:32:20)

119

Re: Iptables

pulsar_85 :

Мне в голову приходит туннелировать всё это добро через VPN. Но насколько я знаю vpn обычно режет широковещательные пакеты. Это как то надо побороть..

OpenVPN в режиме tap. Аалогично для IPTV и самбы...

120

Re: Iptables

KorDen :
pulsar_85 :

Мне в голову приходит туннелировать всё это добро через VPN. Но насколько я знаю vpn обычно режет широковещательные пакеты. Это как то надо побороть..

OpenVPN в режиме tap. Аалогично для IPTV и самбы...

Почитал, да, похоже на то что нужно)) Запишу себе на подкорку, пока не дорос до такого))
__________________
С уважением, Константин, a.k.a - КБ
ZyXEL Keenetic Giga II (чёрный) | FW V1.11.RU.NDMS 2014-01-08 21:02:21 | Entware