Настройка брандмауэра для vlc

openSUSE, SUSE Linux Enterprise

Модератор: Модераторы разделов

alex046
Сообщения: 35
ОС: Suse 11.0 x86_64

Настройка брандмауэра для vlc

Сообщение alex046 »

Моя сеть предоставляет IPTV, для просмотра рекомендуют vlc. Однако оповещения sap не пускает брандмауэр (если его отключить - то всё нормально). Помогите корректно настроить брандмауэр через yast2 (openSuse 11.0). Настройки для Agnitum Outpost Firewall: http://www.cn.ru/faq/ntk/iptv/?q=166
Спасибо сказали:
Аватара пользователя
april222
Сообщения: 27
ОС: OpenSuse11.0

Re: Настройка брандмауэра для vlc

Сообщение april222 »

Привет собрат). Вот мой древний топик.
Ты как отключал брендмауер? И что, на линуксе TVIP показывал?
Спасибо сказали:
Аватара пользователя
Goodvin
Ведущий рубрики
Сообщения: 4333
Статус: ⚝⚠⚒⚑⚖☭☞☣☤&

Re: Настройка брандмауэра для vlc

Сообщение Goodvin »

aleksandr писал(а):
08.08.2008 04:34
Моя сеть предоставляет IPTV, для просмотра рекомендуют vlc. Однако оповещения sap не пускает брандмауэр (если его отключить - то всё нормально). Помогите корректно настроить брандмауэр через yast2 (openSuse 11.0). Настройки для Agnitum Outpost Firewall: http://www.cn.ru/faq/ntk/iptv/?q=166

Во-первых, ссылка эта неверная - ведет на другой сайт совсем, там надо руками искать FAQ по настройке файрвола для IPTV.
И во-вторых, там явно написаны русским по-белому какие протоколы и порты нужны для просмотра IPTV.

Кто мешает Вам настроить то же самое на линуксе, кроме неумения пользоваться инструментами iptables и SuSEfirerwall ?
Что Вы сделали для того, чтобы реализовать указанные разрешения на указанный диапазон адресов/портов/протоколов, кроме поиска готового рецепта "на блюдечке" ?
Что конкретно не получилось ?
Спасибо сказали:
Аватара пользователя
TuxWare
Сообщения: 637
ОС: Windows 7

Re: Настройка брандмауэра для vlc

Сообщение TuxWare »

Goodvin писал(а):
25.08.2009 22:22
aleksandr писал(а):
08.08.2008 04:34
Моя сеть предоставляет IPTV, для просмотра рекомендуют vlc. Однако оповещения sap не пускает брандмауэр (если его отключить - то всё нормально). Помогите корректно настроить брандмауэр через yast2 (openSuse 11.0). Настройки для Agnitum Outpost Firewall: http://www.cn.ru/faq/ntk/iptv/?q=166

Во-первых, ссылка эта неверная - ведет на другой сайт совсем, там надо руками искать FAQ по настройке файрвола для IPTV.
И во-вторых, там явно написаны русским по-белому какие протоколы и порты нужны для просмотра IPTV.

Кто мешает Вам настроить то же самое на линуксе, кроме неумения пользоваться инструментами iptables и SuSEfirerwall ?
Что Вы сделали для того, чтобы реализовать указанные разрешения на указанный диапазон адресов/портов/протоколов, кроме поиска готового рецепта "на блюдечке" ?
Что конкретно не получилось ?


Ваши приколы не впечатлили. Вы меня отправили на настройку фиревола под виндовс, я такую возьму с сайта своего провайдера. А мы говорили о SUSEFIREWALL и осталось это без ответа из-за полной нереализуемости. Конфетку из этого дела не слепить. Если Вы такой умный покажите как это делается. Я открываю весь UDP (по всем портам и всем адресам), а кина - нету. Останавливаю SUSEFIREWALL - есть. Вот незадача. Поройте opensuse.org - там те же вопросы свистят за углом, это, что в мире ip-телевидение - невиданный зверь.

И потом Вы покажите мне просто как реализовать настройку из пункта 5. http://www.novotelecom.ru/ask/faq/66/
Разрешить UDP для VLC по портам 1234, 9875. Умничать все горазды, давайте конкретно по делу.
Спасибо сказали:
Аватара пользователя
TuxWare
Сообщения: 637
ОС: Windows 7

Re: Настройка брандмауэра для vlc

Сообщение TuxWare »

Я открываю порты 0:65535 везде
FW_SERVISES_EXT_TCP, FW_SERVISES_EXT_UDP, FW_SERVISES_DMZ_TCP, FW_SERVISES_DMZ_UDP, FW_SERVISES_INT_TCP, FW_SERVISES_INT_UDP
Список каналов есть, а кина нет.

Перезапускаю SUSEFIREWALL и VLC в разных вариациях- кина нет.

Я останавливаю SUSEFIREWALL - кина нет. Отменяю автостарт SUSEFIREWALL - кина нет. Перегружаю комп - кино есть.
Спасибо сказали:
Аватара пользователя
Goodvin
Ведущий рубрики
Сообщения: 4333
Статус: ⚝⚠⚒⚑⚖☭☞☣☤&

Re: Настройка брандмауэра для vlc

Сообщение Goodvin »

Во-первых, догадаться телепатически о том, КАК ИМЕННО Вы настроили SuSEfirewall, чтобы оценить правильность - телепатов нет.

А во-вторых, общаться в в такой чуть ли не хамской манере, как будто Вам тут все должны, не стоит. Желания помогать Вам это ни у кого не вызовет, а совсем даже наоборот.

update:
Ну и напоследок - не зацикливайтесь на SuSEfirewall - попробуйте для начала реализовать все провайдерские условия на обычном iptables, для проверки.
Я опросил несколько коллег-соседей по сети, которые смотрят IP-телевидение от нашего местного провайдера, у пользователей openSUSE все отлично работает, с файрволом проблем нет.

Смотрите внимательнее на Вашу реализацию правил.

Обратите внимание на вот это важное замечание
Практически все файерволы, такие как Agnitum Outpost и Kaspersky Internet Security по умолчанию блокируют IPTV (мультикаст), так как считают его атакой. В общем случае необходимо разрешить в системных правилах протокол IGMP (протокол управления подключениями к мультикаст-группам) и разрешить IP-TV Player любую TCP-активность (для скачивания списков каналов и телепрограммы) и UDP-активность (непосредственно для IPTV).

Ключевое слово - мультикастинг.
Спасибо сказали:
i18n
Сообщения: 192

Re: Настройка брандмауэра для vlc

Сообщение i18n »

В SuSE с этим susefirewall все как-то очень хитро. Вот что я пробовал делать (система OpenSuse 10.3, vlc и mplayer свежие, собраны из исходников):
1) ip route add multicast 224.0.0.0/4 table main dev eth1 metric 1
2) echo 0 > /proc/sys/net/ipv4/conf/eth1/rp_filter
3) iptables -A INPUT -j ACCEPT -d 224.0.0.0/4 (команду прописал в /etc/sysconfig/scripts/SuSEfirewall2-custom в секцию fw_custom_before_antispoofing)
4) vlc --miface eth1 udp://@234.5.2.2:20000 или же mplayer udp://@234.5.2.2:20000
В итоге - искомые мультикастовые пакеты на интерфейс приходят, что видно в wireshark, но ни один из плееров отчего-то ничего не показывает. Очевидно, чего-то не хватает, но никак не могу понять, чего именно. Может подскажете?
Спасибо сказали:
i18n
Сообщения: 192

Re: Настройка брандмауэра для vlc

Сообщение i18n »

В общем, поскольку никто не ответил, то нужно немного прояснить ситуацию. Как я понял, суть в том, что susefirewall настолько умный, что у него есть опция FW_KERNEL_SECURITY="yes", которая устанавливает некие значения для icmp_ignore_bogus_error_responses, icmp_echoreply_rate, icmp_destunreach_rate, icmp_paramprob_rate, icmp_timeexeed_rate, ip_local_port_range, log_martians, rp_filter, routing flush, bootp_relay, proxy_arp, secure_redirects, accept_source_route, icmp_echo_ignore_broadcasts, ipfrag_time. И после применения правил файрвола rp_filter оказывается включенным, а iptv не работает. Если же выполнить echo 0 > /proc/sys/net/ipv4/conf/eth1/rp_filter уже после применения правил файрвола, то mplayer начинает правильно работать. Остается, однако, вопрос - где в startup скриптах надо вписать эту команду, чтобы она выполнялась уже после инициализации файрвола?
Спасибо сказали:
Аватара пользователя
Goodvin
Ведущий рубрики
Сообщения: 4333
Статус: ⚝⚠⚒⚑⚖☭☞☣☤&

Re: Настройка брандмауэра для vlc

Сообщение Goodvin »

i18n писал(а):
28.08.2009 12:06
Остается, однако, вопрос - где в startup скриптах надо вписать эту команду, чтобы она выполнялась уже после инициализации файрвола?
Попробуйте в файл /etc/init.d/after.local
Если его у Вас нет (скорее всего) - просто создайте его, исполняемым делать не надо.
RC-скрипт сам его найдет и выполнит записанные там команды после запуска актуального runlevel-а
Спасибо сказали:
Аватара пользователя
k0da
Бывший модератор
Сообщения: 6043
Статус: SuSE QA Engineer
ОС: Factory

Re: Настройка брандмауэра для vlc

Сообщение k0da »

i18n
FW_KERNEL_SECURITY="no" ?
Fury in my eyes, sword on my side
Afro on my head, I'm a black Samurai
Number One, I bring my whole nation alive
Escape death, to become immortalized
Спасибо сказали:
i18n
Сообщения: 192

Re: Настройка брандмауэра для vlc

Сообщение i18n »

Совсем отключить все опции с помощью FW_KERNEL_SECURITY="no" как-то не очень хочется. Отсюда методом научного тыка получилось вот какое решение:
1) В /etc/sysconfig/SuSEfirewall2 раскомментировать строчку FW_CUSTOMRULES="/etc/sysconfig/scripts/SuSEfirewall2-custom"
2) В /etc/sysconfig/scripts/SuSEfirewall2-custom вписать в fw_custom_before_antispoofing() следующие строки:
iptables -A INPUT -j ACCEPT -d 224.0.0.0/4 -p udp
iptables -A INPUT -p igmp -j ACCEPT
iptables -A FORWARD -j ACCEPT -d 224.0.0.0/4 -p udp //нужно для раздачи iptv в домашнюю локалку
Далее нужно каким-то образом организовать выполнение команды на отключение rp_filter где-то после поднятия интерфейса и загрузки правил файрвола. У меня используется ifup/ifdown, поэтому делается следующее.
3) В /etc/sysconfig/network/scripts создать файл ifup-eth1, создать на него симлинк в /etc/sysconfig/network/if-up.d и добавить в этот файл следующие строки:
ip route add multicast 224.0.0.0/4 table main dev eth1 metric 1
echo 0 > /proc/sys/net/ipv4/conf/eth1/rp_filter
Это по идее должно выполняться после поднятия eth1 и загрузки правил файрвола. Однако после установления соединения с интернетом по pppoe настройка сбивается, поэтому далее следующие манипуляции.
4) В /etc/sysconfig/network/scripts создать файл ifup-dsl0, создать на него симлинк в /etc/sysconfig/network/if-up.d и добавить в этот файл следующие строки:
echo 0 > /proc/sys/net/ipv4/conf/eth1/rp_filter
5) В /etc/ppp/ip-up.d создать файл ifup-dsl0 и добавить в этот файл следующие строки:
echo 0 > /proc/sys/net/ipv4/conf/eth1/rp_filter
Возможно, один из этих двух пунктов лишний, но это не столь важно.
6) Для раздачи iptv в домашнюю локалку установить igmpproxy. Ну и разумеется должен быть включен роутинг.
7) Настройки igmpproxy следующие:
phyint eth1 upstream ratelimit 0 threshold 1 //откуда берем iptv
altnet xxx.xxx.xxx.xxx/xx //здесь надо указать сеть источника мультикастовых пакетов, можно посмотреть, например, в wireshark
phyint eth2 downstream ratelimit 0 threshold 1 //куда переправляем
phyint dsl0 disabled //здесь iptv не нужно
phyint lo disabled //и здесь тоже не нужно
8) В /etc/init.d создать файл after.local и вписать в него igmpproxy
9) Теперь можно смотреть iptv с помощью mplayer.
Спасибо сказали:
Аватара пользователя
TuxWare
Сообщения: 637
ОС: Windows 7

Re: Настройка брандмауэра для vlc

Сообщение TuxWare »

i18n писал(а):
28.08.2009 16:26

Это я все пробывал тоже, но этого мало. Единственное маршрут я добавлял через яст. Настройки сетевой карты->Маршрутизация->Добавить.
Назначение 224.0.0.0
Устройство eth0
Шлюз 0.0.0.0
Сетевая маска 240.0.0.0
Параметры metric 1

# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
...................... * 255.255.255.255 UH 0 0 0 dsl0
192.168.10.0 * 255.255.254.0 U 0 0 0 eth0
link-local * 255.255.0.0 U 0 0 0 eth0
loopback * 255.0.0.0 U 0 0 0 lo
BASE-ADDRESS.MC * 240.0.0.0 U 1 0 0 eth0
default * 0.0.0.0 U 0 0 0 dsl0


Но даже если я перехожу на Ваш метод
ip route add multicast 224.0.0.0/4 table main dev eth0 metric 1
не помогает.

Провайдер раздает интернет по pppoe (шнурок включен в сетевую карту, без всяких роутеров и т.д.). Адреса выдаются по dhcp.
Сеть и интернет стартуют при запуске компьютера. В фаерволе eth0 и dsl0 объвленны на внешней зоне.

1. Запускаю компьютер с выключенным фаерволом. Сеть есть, интернет есть, iptv показывает.
2. Не трогая ничего более - запускаю фаервол. Сеть есть, интернет есть, iptv не показывает (сразу останавливается).
3. Не трогая ничего более - отключаю интернет (щелчком по значку kinternet). Фаервол включен, сеть есть, интернета нет, iptv тут же начинает
показывать.
4. Как только подключаю интернет - iptv тут же останавливается. И самое интересное при этом таблица route вообще не меняется и запись
BASE-ADDRESS.MC * 240.0.0.0 U 1 0 0 eth0
по прежнему присутствует.

И еще более интересное после этого можно уже делать, что угодно: останавливать фаервол, перезапускать сетевую карту - итог один включается интернет, обрывается iptv.
Спасибо сказали:
Sleeping Daemon
Сообщения: 1450

Re: Настройка брандмауэра для vlc

Сообщение Sleeping Daemon »

i18n писал(а):
28.08.2009 12:06
В общем, поскольку никто не ответил, то нужно немного прояснить ситуацию. Как я понял, суть в том, что susefirewall настолько умный, что у него есть опция FW_KERNEL_SECURITY="yes", которая устанавливает некие значения для icmp_ignore_bogus_error_responses, icmp_echoreply_rate, icmp_destunreach_rate, icmp_paramprob_rate, icmp_timeexeed_rate, ip_local_port_range, log_martians, rp_filter, routing flush, bootp_relay, proxy_arp, secure_redirects, accept_source_route, icmp_echo_ignore_broadcasts, ipfrag_time. И после применения правил файрвола rp_filter оказывается включенным, а iptv не работает. Если же выполнить echo 0 > /proc/sys/net/ipv4/conf/eth1/rp_filter уже после применения правил файрвола, то mplayer начинает правильно работать. Остается, однако, вопрос - где в startup скриптах надо вписать эту команду, чтобы она выполнялась уже после инициализации файрвола?

Может в /etc/sysctl.conf ?
Спасибо сказали:
Аватара пользователя
TuxWare
Сообщения: 637
ОС: Windows 7

Re: Настройка брандмауэра для vlc

Сообщение TuxWare »

Sleeping Daemon писал(а):
29.08.2009 15:17
Может в /etc/sysctl.conf ?

В /etc/sysctl.conf
net.ipv4.conf.eth0.rp_filter = 0
почему-то игнорируется если FW_KERNEL_SECURITY="yes"
Спасибо сказали:
i18n
Сообщения: 192

Re: Настройка брандмауэра для vlc

Сообщение i18n »

Чтобы отловить источник проблем надо, во-первых, включить в yast запись в логи всех отбрасываемых файрволом пакетов. Если мультикасты отбрасываются правилами файрвола - это будет сразу видно в логах. Тогда надо прописывать соответствующие пользовательские правила для файрвола. Во-вторых, надо проверить значение rp_filter у соответствующего интерфейса, т.е. cat /proc/sys/net/ipv4/conf/eth0/rp_filter Если там единичка - iptv работать не будет и надо записать туда ноль echo 0 > /proc/sys/net/ipv4/conf/eth0/rp_filter
Спасибо сказали:
Аватара пользователя
TuxWare
Сообщения: 637
ОС: Windows 7

Re: Настройка брандмауэра для vlc

Сообщение TuxWare »

i18n писал(а):
30.08.2009 12:55
Чтобы отловить источник проблем надо, во-первых, включить в yast запись в логи всех отбрасываемых файрволом пакетов. Если мультикасты отбрасываются правилами файрвола - это будет сразу видно в логах. Тогда надо прописывать соответствующие пользовательские правила для файрвола. Во-вторых, надо проверить значение rp_filter у соответствующего интерфейса, т.е. cat /proc/sys/net/ipv4/conf/eth0/rp_filter Если там единичка - iptv работать не будет и надо записать туда ноль echo 0 > /proc/sys/net/ipv4/conf/eth0/rp_filter


cat /proc/sys/net/ipv4/conf/eth0/rp_filter
0

Файрвол ничего не отбрасывает, и тем не менее когда включаеш dsl0 iptv останавливается. С выключенным dsl0 все работает.
Да причем с включенным dsl0 VLC прекрасно открывает поток, без ошибок доходит до состояния "буферизация" и дальше ничего не происходит, а по iftop поток не сбавляя скорости еще присутствует минуту-две, а потом резко останавливается.
Спасибо сказали:
Аватара пользователя
TuxWare
Сообщения: 637
ОС: Windows 7

Re: Настройка брандмауэра для vlc

Сообщение TuxWare »

TuxWare писал(а):
31.08.2009 16:31

И все таки я выкопал причину - ядро 2.6.31. При возврате на 2.6.30 все работает как по писанному. Но как тестировать проблемы такого рода так и не нашел.
Спасибо сказали:
kotnaton
Сообщения: 234

Re: Настройка брандмауэра для vlc

Сообщение kotnaton »

Подниму-ка я эту старую тему...

Есть такие правила iptables:

Код: Выделить всё

-A INPUT -s 10.254.64.0/24 -p udp -j ACCEPT
-A INPUT -s 224.0.0.0/24 -p udp -j ACCEPT
-A OUTPUT -d 239.64.64.0/24 -p udp -m udp --dport 1234 -j ACCEPT
-A OUTPUT -d 224.0.0.0/24 -p udp -j ACCEPT


Как их преобразовать в правила для SuSEfirewal2 ???

Если честно, не понимаю почему авторы SuSEfirewal2 не сделали просто: фильтрацию source ip и destination ip

Вот если кто-то сможет объяснить как использовать эти самые "внутренние", "внешние", "демилитаризованные" зоны использовать для фильтрации входящих извне к тому примеру что процитирован, буду очень признателен..
бывает же такое ???
Спасибо сказали: