FreeBSD 9.3-RELEASE на всякий случай.
> А у вас это работает?
> Правила загружали, тестировали?Всё работало, пока я не добавила deny_in к nat (мне это надо)
> Очереди не используете, а вы их очищаете! Зачем?
Очередей нет, уберу.
> правило для icmp отдельно прописываете,
> ssh на нестандартном порту разрешаете всем, а зачем?
Мне надо заходить на сервер с разных, непредсказуемых ip
> А смысл тогда в отдельной записи?
Чтоб не использовать такую строчку: add allow all from any to 1.2.3.2
Она мне кажется страшной. Я не права?
> 80 порт - такая же фигня.
> Чего хотите добиться ?
> насколько я понял, есть сеть 10.92.128.0/24
> есть таблица для хороших - 0
> есть таблица для плохих - 1
table 0 - заблокированные, table 1 - разрешённые.
> сеть 10.92.128.0/24 - это вся "хорошая сеть" ?
> или в этом адресном пространстве и "плохие" также крутятся?
В этой сети и плохие и хорошие.
> еще, как я понял нужно ограничить скорость в инет?
> указано неверно, в man ipfw сказано "Bandwidth, measured in [K|M]{bit/s|Byte/s}."
> то есть измеряется в [K|M]{бит/с|Байт/с}. нет там то, чего вы написали,
> кстати, сколько хотели выставить?
Да, конечно. Лимит в 30 Мбит/c. Работало и по-моему. Исправлю.
> нехороших нужно заворачивать на какой-то сервер (с белым ip?!) , для чего?
> показать грозный банер? типа "Давай раскошеливайся! Гони бабло!"
Какой вы проницательный человек! Сначала заворачивать на локальный httpd, а с него редирект (html-код) на другой http-сервер с белым ip 1.2.3.5 (к нему надо дать доступ для table 0)
> по днс не понял, он поднят на шлюзе? или у него также
> какой-то отдельный сервер, с опять же белым ip?!
Отдельный DNS-сервер с белым ip 1.2.3.6
>[оверквотинг удален]
> nat 1 config log if igb0 reset # (deny_in same_ports unreg_only -
> при необходимости)
> add 50 nat 1 all from any to any via igb1
[удален]
> # разрешаем серверу и к нему
> add 400 allow all from 1.2.3.2 to any
> add 410 allow all from any to 1.2.3.2
Можно эти два правила заменить этим?: add allow all from me to any keep-state
> # разрешаем трафик на внутреннем ифейсе
> add 500 allow all from 10.92.128.0/24 to 10.92.128.0/24 via igb1
> # заворот bad boys blue and pink girls
> add 600 fwd 10.92.128.1,80 tcp from table(0) to any 80 in recv
> igb1
> # разрешаем хорошим инет
> add 700 allow all from table(1) to any
> add 800 allow all from any to table(1)
Эти два правила лишние с net.inet.ip.fw.one_pass: 1 ? или лучше поставить в 0 ?
> # запрещаем всё остальное
> add 900 deny all from any to any
> если, как я спрашивал выше, сеть 10.92.128.0/24 на внутреннем ифейсе igb1 одна
> (только одно адресное пространство, никаких алиасов не висит),
> и нехорошие пользователи из таблицы 0 составляют только часть этой сети,
> то правило 50 можно ужесточить, разбив его на два и граничить нат
> только для хороших
> (а-ля параноид )))
> add 50 nat 1 all from table(1) to any out xmit igb1
> add 60 nat 1 all from any to 1.2.3.2/32 in recv igb1
В перспективе будет несколько table, каждый для своей скорости. А заблокированные будут сидеть в table 0