|
|
|
IPFW FreeBSD
|
|||
|---|---|---|---|
|
#18+
Подскажите пожалуйста как на штатном IPFW FreeBSD, прописать путь к файлу для блокировки ИП например в rc.firewall будет прописываться файл с функций об блокировке /etc/ipfw.banip * а в ipfw.banip прописывались все ип в столбик 127.0.0.1 127.0.0.2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2010, 02:26 |
|
||
|
IPFW FreeBSD
|
|||
|---|---|---|---|
|
#18+
1. можно прописать прямо в rc.firewall Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Код: plaintext 1. 2. 3. 4. 5. 6. 2. Текст процедуры ban_ip можно вынести в отдельный файл, а в rc.firewall прописать Код: plaintext 1. 2. 3. 4. 5. 6. список ип можно поулчить соответственно командой Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2010, 00:43 |
|
||
|
IPFW FreeBSD
|
|||
|---|---|---|---|
|
#18+
спасибо но сделал следующее #!/bin/sh ipfw table 1 flush ${fwCMD}00001 deny ip from "table(1)" to any via em0 cat /etc/ipfw_blockip | awk '{ if ($1!="") {system("ipfw table 1 add "$1"")} }' > /dev/null а сответсвенно в ipfw_blockip добавляю ип, протестировал все работает. ** и еще такой вопрос к вам будет если я ставлю ограничение на соединение ИП адреса к серверу ${fwCMD}pass ip from any to any via em0 keep-state limit src-addr 2 - то данная команда работает! но все остальные правила прекращают например: вот это перестает работать ${fwCMD}00811 pass tcp from 192.168.0.1 to any 22 in via re0 setup keep-state ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2010, 07:49 |
|
||
|
IPFW FreeBSD
|
|||
|---|---|---|---|
|
#18+
не так скопировал на форум ${fwCMD}00001 deny ip from "table(1)" to any via em0 заменим ${fwCMD}00001 deny ip from "table(1)" to any via re0 - этот у меня сейчас в Ipfw и правило ${fwCMD}00811 pass tcp from 192.168.0.1 to any 22 in via re0 setup keep-state так вот если первое правило работает, то прекращает 811 работать если 1 правило закроем # то 811 начинает работать! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2010, 07:56 |
|
||
|
IPFW FreeBSD
|
|||
|---|---|---|---|
|
#18+
Hookisспасибо но сделал следующее #!/bin/sh ipfw table 1 flush ${fwCMD}00001 deny ip from "table(1)" to any via em0 cat /etc/ipfw_blockip | awk '{ if ($1!="") {system("ipfw table 1 add "$1"")} }' > /dev/null а сответсвенно в ipfw_blockip добавляю ип, протестировал все работает. Тож хороший вариант, но я с авк не дружу :) Hookisи еще такой вопрос к вам будет если я ставлю ограничение на соединение ИП адреса к серверу ${fwCMD}pass ip from any to any via em0 keep-state limit src-addr 2 - то данная команда работает! но все остальные правила прекращают например: вот это перестает работать ${fwCMD}00811 pass tcp from 192.168.0.1 to any 22 in via re0 setup keep-state .... не так скопировал на форум ${fwCMD}00001 deny ip from "table(1)" to any via em0 заменим ${fwCMD}00001 deny ip from "table(1)" to any via re0 - этот у меня сейчас в Ipfw и правило ${fwCMD}00811 pass tcp from 192.168.0.1 to any 22 in via re0 setup keep-state так вот если первое правило работает, то прекращает 811 работать если 1 правило закроем # то 811 начинает работать! т.е. получается такое: Код: plaintext 1. Правило № 1 говорит, что запретить все хождения из списка ip, которые лежат в table(1) куда бы то ни было, а правило №811 говорит, давайте-ка пустим пакеты с ипа 192.168.0.1 куда нибудь на 22 порт, но скорее всего пакет просто не доходит до этого правила вылетая на правиле №1. приведите вывод Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2010, 10:17 |
|
||
|
IPFW FreeBSD
|
|||
|---|---|---|---|
|
#18+
ага спасибо за заметку, это надо будет тоже учесть в дальнейшем но ты маленько не понял смысл. если убрать вообще табле, то изначально фаервол блочит всё! теперь добавляем туда ТОЛЬКО два правила, на лимит а потом на порт и порт только на себя, но оказывается что могут заходить все на порт 22, вот тут я и стопорнул понять не могу в чем проблема. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2010, 11:14 |
|
||
|
IPFW FreeBSD
|
|||
|---|---|---|---|
|
#18+
а если убрать правило на лимит, и оставить только порт на себя (тоесть на свой комп), то оно нормально работает! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2010, 11:16 |
|
||
|
IPFW FreeBSD
|
|||
|---|---|---|---|
|
#18+
Вообще запутался, давай начнем с того, что необходимо сделать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2010, 12:19 |
|
||
|
IPFW FreeBSD
|
|||
|---|---|---|---|
|
#18+
Да я и сам запутался и тебя запутал не то все по кидал - че скажешь второй день только с FreeBSD работаю фаервол - чист! добавляем две команды - как тестовые, и начинаем тестировать! ${fwCMD}pass ip from any to any via em0 keep-state limit src-addr 2${fwCMD}00811 pass tcp from 192.168.0.1 to any 22 in via re0 setup keep-state 1. первое правило без номера как я понял в этом случай можно и не писать! оно дает лимит на коннекты к серверу, с одного IP - 2 коннекта 2. вторая строка правило к примеру 00811, оно дает доступ только моему компьютеру к порту 22. так вот проблема следующая если эти две команды так стоят, то идет разрешения 2 коннекта к серверу с ип - на порт ТОЛЬКО всем пользователям! как только убираю первую строку, тут же начинает правильно работать правило 00811 - то есть на порт 22 могу зайти только я один! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2010, 12:25 |
|
||
|
IPFW FreeBSD
|
|||
|---|---|---|---|
|
#18+
не обращай внимание что в первой строку em0 - на сервере у меня норм везде прописано re0 просто опять ступил маленько =) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2010, 12:27 |
|
||
|
IPFW FreeBSD
|
|||
|---|---|---|---|
|
#18+
Если надо ограничить подключения на 2 порта только для одного адреса то надо писать так: ${fwCMD}00811 pass tcp from 192.168.0.1 to me 22 in via re0 setup keep-state ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2010, 15:03 |
|
||
|
IPFW FreeBSD
|
|||
|---|---|---|---|
|
#18+
gR4mmЕсли надо ограничить подключения на 2 порта только для одного адреса то надо писать так: ${fwCMD}00811 pass tcp from 192.168.0.1 to me 22 in via re0 setup keep-state *читать как "подключение на 22й порт" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2010, 15:05 |
|
||
|
IPFW FreeBSD
|
|||
|---|---|---|---|
|
#18+
еще раз говорю без первого правила, второе правило РАБОТАЕТ! как добавляю первое правило второе перестает работать, via на сервере везде стоит re0 - для моей внешней сетевухе - так что вопрос следующий почему при добавления первого правила перестает работать второе правило ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2010, 18:51 |
|
||
|
IPFW FreeBSD
|
|||
|---|---|---|---|
|
#18+
т.е. Когда добавляю первое правило: первое работает! второе нет! как только убрал первое правило: второе правило сразу же заработало! Как только убираю второе правило: первое работает! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2010, 18:55 |
|
||
|
IPFW FreeBSD
|
|||
|---|---|---|---|
|
#18+
http://www.freebsd.org/doc/en/books/handbook/firewalls-ipfw.html setup This is a mandatory keyword that identifies the session start request for TCP packets. keep-state This is a mandatory keyword. Upon a match, the firewall will create a dynamic rule, whose default behavior is to match bidirectional traffic between source and destination IP/port using the same protocol. limit {src-addr | src-port | dst-addr | dst-port} The firewall will only allow N connections with the same set of parameters as specified in the rule. One or more of source and destination addresses and ports can be specified. The limit and keep-state can not be used on the same rule. The limit option provides the same stateful function as keep-state, plus its own functions. т.е. первое правило неверно по сути. попробуй прописать следующее ${fwCMD}pass ip from any to any via re0 limit src-addr 2 ${fwCMD}00811 pass tcp from 192.168.0.1 to me 22 in via re0 setup keep-state т.е. ограничиваем до 2х подключений с одного адреса и разрешаем заходить по ssh только с адреса 192.168.0.1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2010, 08:26 |
|
||
|
|

start [/forum/topic.php?fid=25&msg=36469241&tid=1485126]: |
0ms |
get settings: |
8ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
207ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
2ms |
| others: | 221ms |
| total: | 543ms |

| 0 / 0 |
