Перейти к содержанию

Рекомендуемые сообщения

Опубликовано

Вот дошли руки нормально проверить работу openvpn. Коннектится нормально, пинги через туннель проходят в подсети 10.8.0.0, но домашняя сеть не видна и инет не работает. Вот правила firewall, которые работали на V1, а сейчас не хотят.

iptables -I FORWARD -i br0 -o tun0 -j ACCEPT

iptables -I FORWARD -i tun0 -o br0 -j ACCEPT

iptables -I INPUT -i tun0 -j ACCEPT

iptables -I INPUT -p udp --dport 1194 -j ACCEPT

iptables -I FORWARD -i tun0 -j ACCEPT

iptables -t nat -A POSTROUTING -o br0 -j MASQUERADE

iptables -A INPUT -i lo -j ACCEPT

А вот такой вариант дал доступ к домашней сети

iptables -I FORWARD -o tun0 -j ACCEPT

iptables -I FORWARD -i tun0 -j ACCEPT

iptables -I INPUT -i tun0 -j ACCEPT

Есть какие то "подводные камни" использования iptables на V2 ?

Опубликовано

Для прописывания правил iptables нужно сделать скрипт /opt/etc/netfilter.d/XXX-openvpn.sh с проверкой $table, как описано здесь. Затем посмотрите, как ваши правила укладываются в существующие чейны, которые отличаются от V1. Если останутся вопросы, присылайте свой iptables -L -v -n.

Правка 05.01.2016:

Правильный путь к скрипту — /opt/etc/ndm/netfilter.d/XXX-openvpn.sh, спасибо Funeral_YAR.

  • 5 недель спустя...
Опубликовано
iptables незнает про --dport

Привести пример можете, как он об этом не знает?

Тоже интересует данный вопрос приведите пример с iptables ошибку выдает с командой --dport

Опубликовано
Для прописывания правил iptables нужно сделать скрипт /opt/etc/netfilter.d/XXX-openvpn.sh с проверкой $table

выложите, плиз, пример такого скрипта с правилами для openvpn из первого сообщения (пример в wiki мне непонятен)

Опубликовано

/opt/etc/netfilter.d/XXX-openvpn.sh -- неработает

/opt/etc/ndm/netfilter.d/XXX-openvpn.sh -- работает!

простые вещи аля работают

iptables -I FORWARD -i br0 -o tun0 -j ACCEPT

iptables -I FORWARD -i tun0 -o br0 -j ACCEPT

iptables -I INPUT -i tun0 -j ACCEPT

iptables -t filter -A INPUT -i lo -j ACCEPT

всем спасибо

жаль, текущая сборка мало опций тянет

Опубликовано
У меня не работает, выдает ошибку: iptables v1.4.12: Couldn't load target `standard':No such file or directory

Проверяйте правильность синтаксиса посылаемой команды.

Опубликовано
У меня не работает, выдает ошибку: iptables v1.4.12: Couldn't load target `standard':No such file or directory

Проверяйте правильность синтаксиса посылаемой команды.

Даже на iptables -L -v -n ругается так. Исходно iptables не было на роутере, потому я поставил с помощью opkg. Может я не то сделал?

Опубликовано

Даже на iptables -L -v -n ругается так. Исходно iptables не было на роутере, потому я поставил с помощью opkg. Может я не то сделал?

Наверное, что то не так...

[spoiler=]

root@Keenetic_Giga:/opt/root/# opkg install iptables
Installing iptables (1.4.12-1) to root...
Downloading http://opkg.keenopt.ru/mipsel/iptables_1.4.12-1_mipsel.ipk.
Installing libiptc (1.4.12-1) to root...
Downloading http://opkg.keenopt.ru/mipsel/libiptc_1.4.12-1_mipsel.ipk.
Installing libxtables (1.4.12-1) to root...
Downloading http://opkg.keenopt.ru/mipsel/libxtables_1.4.12-1_mipsel.ipk.
Configuring libiptc.
Configuring libxtables.
Configuring iptables.
root@Keenetic_Giga:/opt/root/# ip
ip6tables  iptables   
root@Keenetic_Giga:/opt/root/# iptables -L -v -n
Chain INPUT (policy DROP 0 packets, 0 bytes)
pkts bytes target     prot opt in     out     source               destination         
 123 11375 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0           
  16  4042 ACCEPT     all  --  *      *       0.0.0.0/0            224.0.0.0/4         
   0     0 ACCEPT     2    --  *      *       0.0.0.0/0            0.0.0.0/0           
9927 7209K _NDM_IN_EXCEPTIONS  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
9927 7209K _NDM_IN    all  --  *      *       0.0.0.0/0            0.0.0.0/0           
   0     0 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate INVALID
9884 7199K ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate RELATED,ESTABLISHED
   0     0 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate DNAT
  43  9445 _NDM_INPUT  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
  43  9445 SL_PASS2   all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain FORWARD (policy DROP 0 packets, 0 bytes)
pkts bytes target     prot opt in     out     source               destination         
   0     0 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0           
   0     0 ACCEPT     all  --  *      *       0.0.0.0/0            224.0.0.0/4         
   0     0 _NDM_IN    all  --  *      *       0.0.0.0/0            0.0.0.0/0           
   0     0 _NDM_OUT   all  --  *      *       0.0.0.0/0            0.0.0.0/0           
   0     0 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate INVALID
   0     0 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate RELATED,ESTABLISHED
   0     0 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate DNAT
   0     0 _NDM_FORWARD  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
   0     0 SL_PASS1   all  --  *      *       0.0.0.0/0            0.0.0.0/0           
   0     0 ACCEPT     all  --  br0    br0     0.0.0.0/0            0.0.0.0/0           

Chain OUTPUT (policy ACCEPT 9992 packets, 1424K bytes)
pkts bytes target     prot opt in     out     source               destination         
9992 1424K _NDM_OUT   all  --  *      *       0.0.0.0/0            0.0.0.0/0           
9992 1424K _NDM_VPNSERVER_FILTER_OUT  all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain CLOUD_UDP_SERVICE_NF_CHAIN_ (1 references)
pkts bytes target     prot opt in     out     source               destination         

Chain SL_PASS1 (1 references)
pkts bytes target     prot opt in     out     source               destination         
   0     0 SL_PASS2   all  --  *      apcli0  0.0.0.0/0            0.0.0.0/0            ctstate NEW

Chain SL_PASS2 (2 references)
pkts bytes target     prot opt in     out     source               destination         
   0     0 ACCEPT     all  --  ra0    *       0.0.0.0/0            0.0.0.0/0            ctstate NEW
   0     0 ACCEPT     all  --  ra1    *       0.0.0.0/0            0.0.0.0/0            ctstate NEW
   0     0 ACCEPT     all  --  ra2    *       0.0.0.0/0            0.0.0.0/0            ctstate NEW
   0     0 ACCEPT     all  --  ra3    *       0.0.0.0/0            0.0.0.0/0            ctstate NEW
   0     0 ACCEPT     all  --  eth2.1 *       0.0.0.0/0            0.0.0.0/0            ctstate NEW
  43  9445 ACCEPT     all  --  br0    *       0.0.0.0/0            0.0.0.0/0            ctstate NEW

Chain _NDM_FORWARD (1 references)
pkts bytes target     prot opt in     out     source               destination         
   0     0 _NDM_UPNP_FORWARD  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
   0     0 _NDM_VPNSERVER_FILTER_FORWARD  all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain _NDM_IN (2 references)
pkts bytes target     prot opt in     out     source               destination         

Chain _NDM_INPUT (1 references)
pkts bytes target     prot opt in     out     source               destination         
   0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0           UNKNOWN match `udp' 
  43  9445 _NDM_TORRENT_INPUT  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
  43  9445 _NDM_VPNSERVER_FILTER_IN  all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain _NDM_IN_EXCEPTIONS (1 references)
pkts bytes target     prot opt in     out     source               destination         
9927 7209K CLOUD_UDP_SERVICE_NF_CHAIN_  all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain _NDM_OUT (2 references)
pkts bytes target     prot opt in     out     source               destination         

Chain _NDM_TORRENT_INPUT (1 references)
pkts bytes target     prot opt in     out     source               destination         
   0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           UNKNOWN match `tcp' 

Chain _NDM_UPNP_FORWARD (1 references)
pkts bytes target     prot opt in     out     source               destination         

Chain _NDM_VPNSERVER_FILTER_FORWARD (1 references)
pkts bytes target     prot opt in     out     source               destination         

Chain _NDM_VPNSERVER_FILTER_IN (1 references)
pkts bytes target     prot opt in     out     source               destination         

Chain _NDM_VPNSERVER_FILTER_OUT (1 references)
pkts bytes target     prot opt in     out     source               destination         
root@Keenetic_Giga:/opt/root/# 

Опубликовано

Давайте сверимся. Я не понимаю, откуда взяты iptables и ip6tables одновременно. У меня они конфликтуют:


# opkg install ip6tables
Installing ip6tables (1.4.12-1) to root...
Downloading http://opkg.keenopt.ru/mipsel/ip6tables_1.4.12-1_mipsel.ipk.
Installing libxtables6 (1.4.12-1) to root...
Downloading http://opkg.keenopt.ru/mipsel/libxtables6_1.4.12-1_mipsel.ipk.
Collected errors:
* check_data_file_clashes: Package libxtables6 wants to install file /opt/usr/lib/iptables/libxt_limit.so
But that file is already provided by package * iptables
* check_data_file_clashes: Package libxtables6 wants to install file /opt/usr/lib/iptables/libxt_conntrack.so
But that file is already provided by package * iptables
* check_data_file_clashes: Package libxtables6 wants to install file /opt/usr/lib/iptables/libxt_standard.so
But that file is already provided by package * iptables
* opkg_install_cmd: Cannot install package ip6tables.

Мне IPv6 не нужно. Что выдает opkg list-installed ?

Опубликовано

Так удалите его:

# opkg remove ip6tables libxtables6 libiptc libxtables

а затем

# opkg install iptables

Тут мешается пакет libxtables6, но все можно через ключик force установить, потом сделаю обновление, что бы этот пакет больше не использовался и не мешал нормальной установке.

Опубликовано

Готово, можно обновляться.

# opkg update

# opkg upgrade

# opkg install ip6tables iptables

Можно доставить доп. модули, которые доступны в ядре прошивке:

# opkg install iptables-mod-conntrack iptables-mod-ipopt iptables-mod-ipsec iptables-mod-ipset iptables-mod-nat

Опубликовано
Вижу обновления, переустановил iptables, но исходную проблему это не решило.

Могу только посоветовать переустановить систему целиком, просто мне не понятно, что там может не работать.

Опубликовано
Вижу обновления, переустановил iptables, но исходную проблему это не решило.

Могу только посоветовать переустановить систему целиком, просто мне не понятно, что там может не работать.

Похоже, что iptables загружает либу /opt/usr/lib/iptables/libxt_standard.so, которая где-то фейлится. Очень похоже, что она как-то зависит от IPv6, я им не пользуюсь, потому этот компонент был вырублен галочкой через Веб-морду. Сейчас сделал эксперимент - поставил IPv6, и чудо произошло - iptables заработала.

Опубликовано

Конечно зависит, еще как! Некоторые пакеты собираются с поддержкой ipv6 и предполагается, что эта поддержка включена в прошивке, собирать пакеты для ipv4 и ipv6 отдельно, и по отдельности их потом поддерживать, просто не кому.

  • 2 недели спустя...
Опубликовано

выложите, плиз, пример такого скрипта с правилами для openvpn из первого сообщения (пример в wiki мне непонятен)

сам спросил - сам отвечу

не стал забивать себе голову с этой проверкой $table, а просто положил скрипт firewall.sh в /opt/etc/ndm/netfilter.d/ следующего содержания

#!/bin/sh

iptables -I FORWARD -o tun0 -j ACCEPT
iptables -I FORWARD -i tun0 -j ACCEPT
iptables -I INPUT -i tun0 -j ACCEPT

и оно заработало

Опубликовано

не стал забивать себе голову с этой проверкой $table, а просто положил скрипт firewall.sh в /opt/etc/ndm/netfilter.d/ следующего содержания

#!/bin/sh

iptables -I FORWARD -o tun0 -j ACCEPT
iptables -I FORWARD -i tun0 -j ACCEPT
iptables -I INPUT -i tun0 -j ACCEPT

и оно заработало

Без проверки $table правила будут двоиться или троиться, т.к. события на filter, nat и mangle приходят независимо, а Вы пишете только в filter. Но на результат это не влияет.

Опубликовано

Без проверки $table правила будут двоиться или троиться, т.к. события на filter, nat и mangle приходят независимо, а Вы пишете только в filter. Но на результат это не влияет.

да, видел, что правила задваиваются и затраиваются, но я не претендую на истину в последней инстанции и правильные примеры скриптов только приветствую (чтоб копировать их бездумно и зажмурив глаза :D )

Опубликовано

Правильно я ли я понимаю?

Создаем файл в каталоге /opt/etc/ndm/netfilter.d/forward.sh c содержимым

#!/bin/sh

[ "$table" != "nat" ] && exit 0

iptables -I FORWARD -o tun0 -j ACCEPT
iptables -I FORWARD -i tun0 -j ACCEPT

Это для FORWARD.

А для INPUT или OUTPUT /opt/etc/ndm/netfilter.d/input.sh

#!/bin/sh

[ "$table" != "filter" ] && exit 0

iptables -I INPUT -i tun0 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -I INPUT -s 1.1.1.1 -j DROP

Опубликовано
Правильно я ли я понимаю?

Создаем файл в каталоге /opt/etc/ndm/netfilter.d/forward.sh c содержимым

#!/bin/sh

[ "$table" != "nat" ] && exit 0

iptables -I FORWARD -o tun0 -j ACCEPT
iptables -I FORWARD -i tun0 -j ACCEPT

Это для FORWARD.

А для INPUT или OUTPUT /opt/etc/ndm/netfilter.d/input.sh

#!/bin/sh

[ "$table" != "filter" ] && exit 0

iptables -I INPUT -i tun0 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -I INPUT -s 1.1.1.1 -j DROP

Переусложнили. Все Ваши правила относятся к таблице filter, поэтому их можно положить в один скрипт под проверку

[ "$table" != "filter" ] && exit 0

  • 2 недели спустя...
Опубликовано
У меня не работает, выдает ошибку: iptables v1.4.12: Couldn't load target `standard':No such file or directory

Аналогично:

/opt/root # opkg install iptables-mod-conntrack iptables-mod-nat iptables-mod-ipsec

iptables-utils iptables

Installing iptables-mod-conntrack (1.4.12-2) to root...

Downloading http://opkg.keenopt.ru/mipsel/iptables- ... bles-utils iptables

.

Installing iptables (1.4.12-2) to root...

iptables-utils iptables

Downloading http://opkg.keenopt.ru/mipsel/iptables_ ... mipsel.ipk.

Installing iptables-mod-nat (1.4.12-2) to root...

Downloading http://opkg.keenopt.ru/mipsel/iptables- ... mipsel.ipk.

Installing iptables-mod-ipsec (1.4.12-2) to root...

Downloading http://opkg.keenopt.ru/mipsel/iptables- ... mipsel.ipk.

Installing iptables-utils (1.4.12-2) to root...

Downloading http://opkg.keenopt.ru/mipsel/iptables- ... mipsel.ipk.

Package iptables (1.4.12-2) installed in root is up to date.

Configuring iptables.

Configuring iptables-mod-ipsec.

Configuring iptables-mod-conntrack.

Configuring iptables-utils.

Configuring iptables-mod-nat.

/opt/root # iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE

iptables v1.4.12: Couldn't load target `MASQUERADE':No such file or directory

Try `iptables -h' or 'iptables --help' for more information.

/opt/root # opkg files iptables

Package iptables (1.4.12-2) is installed on root and has the following files:

/opt/usr/lib/iptables/libipt_REJECT.so

/opt/usr/lib/iptables/libxt_udp.so

/opt/usr/lib/iptables/libxt_mark.so

/opt/usr/lib/iptables/libipt_icmp.so

/opt/usr/lib/iptables/libxt_multiport.so

/opt/usr/lib/iptables/libxt_mac.so

/opt/usr/lib/iptables/libxt_standard.so

/opt/usr/lib/iptables/libipt_SNAT.so

/opt/usr/lib/iptables/libipt_DNAT.so

/opt/usr/lib/iptables/libipt_LOG.so

/opt/usr/lib/iptables/libxt_TCPMSS.so

/opt/usr/lib/iptables/libxt_comment.so

/opt/usr/sbin/iptables

/opt/usr/lib/iptables/libxt_conntrack.so

/opt/usr/lib/iptables/libipt_REDIRECT.so

/opt/usr/lib/iptables/libxt_tcp.so

/opt/usr/lib/iptables/libxt_MARK.so

/opt/usr/lib/iptables/libxt_limit.so

/opt/usr/lib/iptables/libipt_MASQUERADE.so

/opt/root # /opt/usr/sbin/iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE

iptables v1.4.12: Couldn't load target `MASQUERADE':No such file or directory

Try `iptables -h' or 'iptables --help' for more information.

/opt/root #

Ultra-2, свежеобновленная + opkg.

Что не так?

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...

Важная информация

На этом сайте используются файлы cookie. Нажимая "Я принимаю" или продолжая просмотр сайта, вы разрешаете их использование: Политика конфиденциальности.