BSDPORTAL.RU

На этом сайте обсуждаются вопросы использования ОС FreeBSD
 Портал  •  Статьи  •  Форум  •  Wiki  •  Поиск  •  FAQ  •  Обои  •   Официальная документация  •  Новые темы 

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 33 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Блокирование TeamViewer
СообщениеДобавлено: Чт 18 июл, 2013 2:52 pm 
Не в сети

Зарегистрирован: Вт 25 апр, 2006 5:31 pm
Сообщения: 885
Собственно блокировка работает, но надо некоторые хосты, к примеру 95.211.162.245, из списка блокированных подсетей открыть и вот это не получается.
pf.conf такой:
Код:
set limit states 200000
set limit src-nodes 200000
set limit frags 1000000
set limit tables 20000
set limit table-entries 40000000

set skip on lo

ext_if = "fxp1"
int_if = "fxp0"
vpn_grp = "tun"
non_route_nets_inet = "{ 127.0.0.0/8, 192.168.0.0/16,\
                        172.16.0.0/12,10.0.0.0/8, 169.254.0.0/16, 192.0.2.0/24, 0.0.0.0/8, 240.0.0.0/4 }"
table <vpn_users> { 172.16.16.32/27 }
table <tim_ip> { 46.4.68.241, 151.1.182.135, 46.105.99.126, 92.51.171.0/24, 46.165.192.0/24, 95.211.58.0/16,\
            89.185.96.0/24, 178.77.120.0/24, 202.143.0.0/16, 216.108.0.0/16, 217.172.187.0/24, 80.237.0.0/16\
            81.169.0.0/16, 87.230.0.0/16, 87.230.74.0/24 }


antispoof quick for $ext_if

pass #to establish keep-state
block in on $ext_if
block drop in log quick on $ext_if from $non_route_nets_inet to any
block out quick on $ext_if from any to <tim_ip>

pass out on $ext_if from <vpn_users> nat-to ($ext_if)
pass in on $int_if inet proto tcp from ($int_if:network) to ($int_if) port pptp keep state
pass in on $int_if inet proto 47 from ($int_if:network) to ($int_if) keep state
pass in on $vpn_grp inet from <vpn_users> to ! (self) keep state

пробовал такое правило:
Код:
. . .
pass out quick on $ext_if from any to 95.211.162.245
block out quick on $ext_if from any to <tim_ip>
. . .

c роутера доступ есть, из vpn туннелей нет, наведите на правильное правило в данной ситуации


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Блокирование TeamViewer
СообщениеДобавлено: Чт 18 июл, 2013 4:00 pm 
Не в сети

Зарегистрирован: Вт 19 фев, 2008 10:54 am
Сообщения: 536
Откуда: Vladimir
Можно попробовать
Код:
block out quick on $ext_if from any to { <tim_ip>, !95.211.162.245 }

но не факт что сработает, так как ip содержится и в таблице <tim_ip>
Попробуйте создать отдельную таблицу для ip, которые нужно исключить. Так легче будет разруливать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Блокирование TeamViewer
СообщениеДобавлено: Чт 18 июл, 2013 4:14 pm 
Не в сети

Зарегистрирован: Вт 25 апр, 2006 5:31 pm
Сообщения: 885
neyromant писал(а):
Можно попробовать
Код:
block out quick on $ext_if from any to { <tim_ip>, !95.211.162.245 }

но не факт что сработает, так как ip содержится и в таблице <tim_ip>
Попробуйте создать отдельную таблицу для ip, которые нужно исключить. Так легче будет разруливать.

При таком правиле, не трудно догадаться, что будет блокирован весь инет, кроме 95.211.162.245 ибо оно развернется в 2:
Код:
block drop out quick on fxp1 from any to <tim_ip>
block drop out quick on fxp1 inet from any to ! 95.211.162.245

и второе как раз блокирует все


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Блокирование TeamViewer
СообщениеДобавлено: Чт 18 июл, 2013 4:22 pm 
Не в сети

Зарегистрирован: Вт 19 фев, 2008 10:54 am
Сообщения: 536
Откуда: Vladimir
GreenDragon писал(а):
neyromant писал(а):
Можно попробовать
Код:
block out quick on $ext_if from any to { <tim_ip>, !95.211.162.245 }

но не факт что сработает, так как ip содержится и в таблице <tim_ip>
Попробуйте создать отдельную таблицу для ip, которые нужно исключить. Так легче будет разруливать.

При таком правиле, не трудно догадаться, что будет блокирован весь инет, кроме 95.211.162.245 ибо оно развернется в 2:
Код:
block drop out quick on fxp1 from any to <tim_ip>
block drop out quick on fxp1 inet from any to ! 95.211.162.245

и второе как раз блокирует все

Оставте
Код:
block drop out quick on fxp1 inet from any to ! 95.211.162.245

Блокирнет все, кроме указанного адреса, но как уже писал, лучьше отдельно создать таблицу, если будет не один адрес, а вероятность появления еще исключающих адресов.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Блокирование TeamViewer
СообщениеДобавлено: Чт 18 июл, 2013 4:25 pm 
Не в сети

Зарегистрирован: Вт 25 апр, 2006 5:31 pm
Сообщения: 885
neyromant писал(а):
Оставте
Код:
block drop out quick on fxp1 inet from any to ! 95.211.162.245

Блокирнет все, кроме указанного адреса, но как уже писал, лучьше отдельно создать таблицу, если будет не один адрес, а вероятность появления еще исключающих адресов.

и что, в эту таблицу загнать все подсети мира?
Вы видимо не поняли свое правило - оно блокирует все, кроме 95.211.162.245, то же google.com, bsdportal.ru и т.д
Мне же нужно блокировать только то, что в таблице <tim_ip>, но с исключением из перечисленных подсетей в ней некоторых IP


Последний раз редактировалось GreenDragon Чт 18 июл, 2013 4:31 pm, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Блокирование TeamViewer
СообщениеДобавлено: Чт 18 июл, 2013 4:30 pm 
Не в сети

Зарегистрирован: Вт 19 фев, 2008 10:54 am
Сообщения: 536
Откуда: Vladimir
А так
Код:
pass out quick on $ext_if from any to 95.211.162.245 keep state
pass in quick on $ext_if from any to 95.211.162.245
block out quick on $ext_if from any to <tim_ip>


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Блокирование TeamViewer
СообщениеДобавлено: Чт 18 июл, 2013 4:35 pm 
Не в сети

Зарегистрирован: Вт 25 апр, 2006 5:31 pm
Сообщения: 885
увы через tun интерфейсы не работает
для ext_if достаточно правила для out, а вот для tun, которые натятся на этом интерфейсе закрыто


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Блокирование TeamViewer
СообщениеДобавлено: Чт 18 июл, 2013 4:38 pm 
Не в сети

Зарегистрирован: Вт 19 фев, 2008 10:54 am
Сообщения: 536
Откуда: Vladimir
GreenDragon писал(а):
увы через tun интерфейсы не работает
для ext_if достаточно правила для out, а вот для tun, которые натятся на этом интерфейсе закрыто

А что мешает попробовать и дописать перед общим блокированием такие же правила как и для ext_if, только для tun?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Блокирование TeamViewer
СообщениеДобавлено: Чт 18 июл, 2013 4:46 pm 
Не в сети

Зарегистрирован: Вт 25 апр, 2006 5:31 pm
Сообщения: 885
neyromant писал(а):
GreenDragon писал(а):
увы через tun интерфейсы не работает
для ext_if достаточно правила для out, а вот для tun, которые натятся на этом интерфейсе закрыто

А что мешает попробовать и дописать перед общим блокированием такие же правила как и для ext_if, только для tun?

Как Вы себе это представляете?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Блокирование TeamViewer
СообщениеДобавлено: Чт 18 июл, 2013 4:55 pm 
Не в сети

Зарегистрирован: Вт 19 фев, 2008 10:54 am
Сообщения: 536
Откуда: Vladimir
Что то типа такого.
Код:
pass out quick on $ext_if from any to 95.211.162.245 keep state
pass out quick on $vpn_grp from any to 95.211.162.245 keep state
block out quick on $ext_if from any to <tim_ip>

С pf в OpenBSD не работал, только в FreeBSD.
Когда то инет у меня поднимался через pppd и так же был интерфейс tun, только tun0.
Я конечно не гуру, но почему к данному интерфейсу нельзя прописать правила?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Блокирование TeamViewer
СообщениеДобавлено: Чт 18 июл, 2013 5:10 pm 
Не в сети

Зарегистрирован: Вт 25 апр, 2006 5:31 pm
Сообщения: 885
я тоже не гуру :)
почему нельзя - можно, но только такое правило не работает
дело в том, что tun это не один интерфейс
Ок, спасибо за попытку помочь, пойду домой думать


Последний раз редактировалось GreenDragon Чт 18 июл, 2013 5:14 pm, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Блокирование TeamViewer
СообщениеДобавлено: Чт 18 июл, 2013 5:12 pm 
Не в сети

Зарегистрирован: Вт 19 фев, 2008 10:54 am
Сообщения: 536
Откуда: Vladimir
GreenDragon писал(а):
я тоже не гуру :)
почему нельзя - можно, но только такое правило не работатет

Попробуйте на этот интерфейс и входящее разрешение прописать.
Экспериментируйте и все получится)))
У Вас ведь 3 интерфейса, внешний, внутренний и тунельный, так вот посмотрите и подумайте на каком из них может идти блокировка.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Блокирование TeamViewer
СообщениеДобавлено: Чт 18 июл, 2013 5:16 pm 
Не в сети

Зарегистрирован: Вт 25 апр, 2006 5:31 pm
Сообщения: 885
нет не три, tun-ов может быть сколько угодно, их количество для данного случая описано таблицей
Код:
table <vpn_users> { 172.16.16.32/27 }


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Блокирование TeamViewer
СообщениеДобавлено: Чт 18 июл, 2013 5:17 pm 
Не в сети

Зарегистрирован: Вт 19 фев, 2008 10:54 am
Сообщения: 536
Откуда: Vladimir
GreenDragon писал(а):
нет не три, tun-ов может быть сколько угодно, их количество для данного случая описано таблицей
Код:
table <vpn_users> { 172.16.16.32/27 }

Да я понимаю, просто под третьим обобщил поднимаемые тунели)))))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Блокирование TeamViewer
СообщениеДобавлено: Пт 19 июл, 2013 2:03 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Пт 23 янв, 2004 1:07 pm
Сообщения: 581
Откуда: Yaroslavl
Дык в саму таблицу забей этот адрес с отрицанием.
Тогда у тебя и будет одно правило с одной таблицей.
вот пример из доки:

Цитата:
Addresses can also be specified using the negation (or "not") modifier such as:
table <goodguys> { 192.0.2.0/24, !192.0.2.5 }
The goodguys table will now match all addresses in the 192.0.2.0/24 network except for 192.0.2.5.

_________________
Я одну мечту скрывая нежу
Что я сердцем чист
Но и я кого нибудь зарежу
Под осенний свист


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Блокирование TeamViewer
СообщениеДобавлено: Пт 19 июл, 2013 4:16 pm 
Не в сети

Зарегистрирован: Вт 25 апр, 2006 5:31 pm
Сообщения: 885
нужно было вот так сделать
Код:
# grep -v "^#" /etc/pf.conf
set limit states 200000
set limit src-nodes 200000
set limit frags 1000000
set limit tables 20000
set limit table-entries 40000000

set skip on lo

ext_if = "fxp1"
int_if = "fxp0"
vpn_grp = "tun"
non_route_nets_inet = "{ 127.0.0.0/8, 192.168.0.0/16,\
                        172.16.0.0/12,10.0.0.0/8, 169.254.0.0/16, 192.0.2.0/24, 0.0.0.0/8, 240.0.0.0/4 }"
table <vpn_users> { 172.16.16.32/27 }
table <tim_ip> { !95.211.162.245, 46.4.68.241, 151.1.182.135, 46.105.99.126, 92.51.171.0/24, 46.165.192.0/24, 95.211.58.0/16,\
            89.185.96.0/24, 178.77.120.0/24, 202.143.0.0/16, 216.108.0.0/16, 217.172.187.0/24, 80.237.0.0/16\
            81.169.0.0/16, 87.230.0.0/16, 87.230.74.0/24 }


antispoof quick for $ext_if

pass #to establish keep-state
block in on $ext_if
block drop in log quick on $ext_if from $non_route_nets_inet to any

pass out quick on $ext_if from any to <tim_ip> # !!! вместо block и добавить !95.211.162.245 в таблицу <tim_ip> !!!

pass out on $ext_if from <vpn_users> nat-to ($ext_if)
pass in on $int_if inet proto tcp from ($int_if:network) to ($int_if) port pptp keep state
pass in on $int_if inet proto 47 from ($int_if:network) to ($int_if) keep state
pass in on $vpn_grp inet from <vpn_users> to ! (self) keep state




Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Блокирование TeamViewer
СообщениеДобавлено: Пт 19 июл, 2013 5:24 pm 
Не в сети

Зарегистрирован: Вт 25 апр, 2006 5:31 pm
Сообщения: 885
Код:
pass out quick on $ext_if from any to <tim_ip>

вообще чем дольше смотрю на это правило тем меньше его понимаю
по идее должно пропускаться все что соответствует таблице, кроме !95.211.162.245, а получается наоборот


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Блокирование TeamViewer
СообщениеДобавлено: Пн 22 июл, 2013 10:46 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Пт 23 янв, 2004 1:07 pm
Сообщения: 581
Откуда: Yaroslavl
параметры при который правило срабатывает - from any to <tim_ip>
таблица это такой же "match"
адрес соответствует таблице, если он в одном из указанных диапазонов И НЕ принадлежит адресам "с отрицанием"
IMHO логично.

_________________
Я одну мечту скрывая нежу
Что я сердцем чист
Но и я кого нибудь зарежу
Под осенний свист


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Блокирование TeamViewer
СообщениеДобавлено: Вт 23 июл, 2013 9:53 am 
Не в сети

Зарегистрирован: Вт 25 апр, 2006 5:31 pm
Сообщения: 885
GreenX писал(а):
параметры при который правило срабатывает - from any to <tim_ip>
таблица это такой же "match"
адрес соответствует таблице, если он в одном из указанных диапазонов И НЕ принадлежит адресам "с отрицанием"
IMHO логично.
что-то тогда у меня с логикой плохо. Я понимаю это правило так:

пропустить исходящие пакеты на интерфейсе $ext_if от любого IP к IP, указанным в таблице <tim_ip>, кроме тех, перед которыми в таблице стоит отрицание и последующие правила к этим пакетам не применять.
Это правильно?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Блокирование TeamViewer
СообщениеДобавлено: Вт 23 июл, 2013 10:46 am 
Не в сети
Аватара пользователя

Зарегистрирован: Пт 23 янв, 2004 1:07 pm
Сообщения: 581
Откуда: Yaroslavl
Не совсем правильно - вы усложняете.
Правило работает если пакет соответствует параметрам.
Параметров у вас три: интерфейс, направление и DST IP.
Сейчас для нас важен один - DST IP и он таблица.
Если упростить, то схема примерно такая:
Вызывается функция с двумя аргументами (IP и имя таблицы) а возвращает она - входит указанный IP в множество таблицы или нет.
Т.е. нет там ничего хитрого - с отрицанием без отрицания. Просто match or not.
И если параметры соответствуют (match), то применяется действие (pass).

_________________
Я одну мечту скрывая нежу
Что я сердцем чист
Но и я кого нибудь зарежу
Под осенний свист


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 33 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Зарегистрированные пользователи: Bing [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB
Яндекс.Метрика