Страница 1 из 1
IPFW+Tables+активные соединения.
Добавлено: 2012-04-10 14:14:19
dreamer538
Здравствуйте,
есть проблема - есть данное правило:
Код: Выделить всё
#DISABLE INTERNET
${cmd} 17100 unreach port ip from table\(8,1\) to any via tun0
и по крону добавляю, удаляю ip в эту таблицу для отключения/включения интернет.
Все работает замечательно для новых соединений. Но уже активные соединения не обрываются.
Например, скайп продолжает работать, но если переподключиться - уже не подключается.
Как решить проблему, чтобы активные соединения так же обрывались?
Спасибо.
Re: IPFW+Tables+активные соединения.
Добавлено: 2012-04-11 12:29:44
skeletor
Используй tcpdrop для убивания текущих соединений.
Re: IPFW+Tables+активные соединения.
Добавлено: 2012-04-11 16:22:03
FiL
а выше есть правило для пропуска established соединений?
Re: IPFW+Tables+активные соединения.
Добавлено: 2012-04-14 11:30:16
dreamer538
Код: Выделить всё
00100 2805046 297694442 allow ip from any to any via lo0
00110 12 1500 deny ip from any to 127.0.0.0/8
00120 0 0 deny ip from 127.0.0.0/8 to any
01000 26331 3746318 prob 0.100000 skipto 2000 ip from 192.168.10.54 to table(101,1)
01001 23645 3321637 prob 0.100000 pipe 1001 ip from 192.168.10.54 to table(101,1)
01002 45660 6531501 prob 0.200000 pipe 1002 ip from 192.168.10.54 to table(101,1)
01003 67139 9571323 prob 0.300000 pipe 1003 ip from 192.168.10.54 to table(101,1)
01004 44582 6430178 prob 0.200000 pipe 1004 ip from 192.168.10.54 to table(101,1)
09000 0 0 count ip from table(100,0) to me via vr0
09010 0 0 count ip from me to table(100,0) via vr0
09020 0 0 count ip from not table(100,0) to me via vr0
09030 0 0 count ip from me to not table(100,0) via vr0
09100 0 0 count ip from table(100,0) to table(101,0) via re0
09110 0 0 count ip from table(101,0) to table(100,0) via re0
09120 96 7680 count ip from not table(100,0) to table(101,0) via re0
09130 0 0 count ip from table(101,0) to not table(100,0) via re0
09200 0 0 count ip from table(100,0) to table(102,0) via re0
09210 0 0 count ip from table(102,0) to table(100,0) via re0
09220 9546 763680 count ip from not table(100,0) to table(102,0) via re0
09230 0 0 count ip from table(102,0) to not table(100,0) via re0
11100 8227298 2264647431 allow ip from table(3,1) to me dst-port 135,137,445
11200 39542157 54168410520 allow ip from me 135,137,445 to table(3,1)
11300 2252 135458 unreach port ip from any to me dst-port 135,137,445
12100 187144 12021535 allow ip from table(4,1) to me dst-port 53
12200 186411 46090442 allow ip from me 53 to table(4,1)
12300 0 0 unreach port ip from any to me dst-port 53
13100 5497 354093 allow ip from table(4,1) to me dst-port 21
13200 9147 645811 allow ip from me 21 to table(4,1)
13300 0 0 unreach port ip from any to me dst-port 21
15100 0 0 allow ip from table(6,1) to me dst-port 8082
15200 0 0 allow ip from me 8082 to table(6,1)
15300 0 0 unreach port ip from any to me dst-port 8082
16100 1642545 188552531 fwd 127.0.0.1,8080 ip from table(7,1) to any dst-port 80 via tun0
[b]17100 23329 1399959 unreach port ip from table(8,1) to any via tun0[/b]
20500 60485 3411815 nat 2 ip from table(2,1) to any via ng0
20700 107266 120358889 nat 2 ip from any to me via ng0
нет, таких правил выше нет. Жирным выделил то правило, которое отвечает за блокирование траффика.
почитал man tcpdrop - там можно или все или конкретное. все - неприемлимо, конкретное - много обвязки писать нужно. Хочется найти более элегантное решений.
Re: IPFW+Tables+активные соединения.
Добавлено: 2012-04-14 12:46:50
dikens3
Обычно доступ разрешён некоторым - остальным запрещён. А не наоборот.
К тому же - что мешает блокировать весь трафик помощью deny?
Re: IPFW+Tables+активные соединения.
Добавлено: 2012-04-14 14:41:24
dreamer538
у меня нужно блокировать по времени 1 адрес.
при unreach - отдается icmp и не ждется таймаут клиентом.
а deny разве будет обрывать соединения при добавлении в таблицу, а не добавлении правила?
Re: IPFW+Tables+активные соединения.
Добавлено: 2012-04-14 16:04:35
dikens3
dreamer538 писал(а):при unreach - отдается icmp и не ждется таймаут клиентом.
Не вижу проблем, сделайте 2 правила:
unreach
deny
dreamer538 писал(а):а deny разве будет обрывать соединения при добавлении в таблицу, а не добавлении правила?
Можно использовать конструкцию deny ... table...?
REJECT ещё есть.
P.S.
Если задача: Блокировать доступ интернет (но не к серверу), можно добавить в начало одно правило и всё.
Код: Выделить всё
deny from .. table1 to not me in via LAN-интерфейс