Страница 1 из 1

Freebsd 8.2 Проблемы с ядерным натом.

Добавлено: 2011-07-18 22:58:58
mediamag
Доброго времени суток. Бьюсь уже второй день!!! Был шлюз на фре 8,1, но слетел винт (посыпался). Решил поставить фрю 8,2 и софтовый рейд. Пересобрал ядро и тд и тп. Подсунул конфиг....и чтоже я увидел: фаервол превратился в открытый!!! Куда хочу, туда захожу, хоть на веб сервер, хоть по ssh...то есть на любой сервис, крутящийся на шлюзе. Неужели в этой версии, чтото поменялось????

Конфиг фаера:

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

01000   0     0 allow ip from any to any via lo0
02800 115  8929 nat 1 ip from any to 10.1.1.2 in via vr0
02850   7   617 nat 1 ip from table(4) to any out via vr0
03600   0     0 allow ip from any to 10.0.0.0/24 in via vr1
03700   0     0 allow ip from 10.0.0.0/24 to any out via vr1
03800   0     0 check-state
04000   0     0 allow icmp from any to any icmptypes 0,8,11
04100 123 24326 allow tcp from any to any established
04200   0     0 allow udp from any to 10.1.1.2 dst-port 53 in via vr0
04300   0     0 allow udp from 10.1.1.2 53 to any out via vr0 keep-state
04400   0     0 allow udp from any 53 to 10.1.1.2 in via vr0
04500   0     0 allow udp from 10.1.1.2 to any dst-port 53 out via vr0 keep-state
04600   0     0 allow tcp from any to 10.1.1.2 dst-port 53 in via vr0 setup
04800   0     0 allow tcp from any to 10.1.1.2 dst-port 22 in via vr0 setup limit src-addr 3
05000   0     0 allow tcp from any to 10.1.1.2 dst-port 1723 in via vr0 setup limit src-addr 50
05050   0     0 allow tcp from any to 10.1.1.2 dst-port 4321 in via vr0 setup limit src-addr 30
05100   0     0 allow gre from any to any
05700   0     0 allow udp from any 53 to 10.0.0.0/24 in via vr0
05800   0     0 allow udp from any 53 to 10.0.0.0/24 out via vr1 keep-state
05900   0     0 allow udp from 10.0.0.0/24 to any dst-port 53 in via vr1
06100   0     0 deny tcp from any to 10.1.1.2 in via vr0 setup
06200   0     0 allow tcp from 10.1.1.2 to any out via vr0 setup keep-state
06300   0     0 allow tcp from any to 10.1.1.2 in via vr1 setup
06400   0     0 deny tcp from table(1) to table(3) in via vr1 setup
06501   0     0 allow tcp from table(1) to not 10.0.0.0/24 in via vr1 setup limit src-addr 300
06502   0     0 allow tcp from table(2) to not 10.0.0.0/24 in via vr1 setup limit src-addr 100
65535 138  8697 deny ip from any to any
Что включил в ядро:

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

options         IPFIREWALL
options         IPFIREWALL_VERBOSE
options         IPFIREWALL_VERBOSE_LIMIT=1000
options         IPFIREWALL_NAT
options         LIBALIAS
options         ROUTETABLES=2
options         HZ=1000
Прошу помощи!! Может у кого нить была подобная проблема?

Re: Freebsd 8.2 Проблемы с ядерным натом.

Добавлено: 2011-07-18 23:19:42
Electronik
rc.conf покажите

Re: Freebsd 8.2 Проблемы с ядерным натом.

Добавлено: 2011-07-18 23:21:30
Bayerische
Ага, firewall_type="close" надо.

Re: Freebsd 8.2 Проблемы с ядерным натом.

Добавлено: 2011-07-18 23:34:31
mediamag
Это новая фишка в фряхе 8,2 и ее нужно прописать в rc.conf???? я правильно понял?

Re: Freebsd 8.2 Проблемы с ядерным натом.

Добавлено: 2011-07-18 23:51:26
mediamag
мой rc.conf

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

firewall_enable="YES"
firewall_script="/etc/firewall.sh"
firewall_nat_enable="YES"
firewall_nat_interface="vr0"

Re: Freebsd 8.2 Проблемы с ядерным натом.

Добавлено: 2011-07-18 23:58:48
Bayerische
Попробуйте добавить строчку, закройте фаер. По идее, это в ядре можно конфигурировать при сборке, я только забыл как :)

Re: Freebsd 8.2 Проблемы с ядерным натом.

Добавлено: 2011-07-19 0:01:49
mediamag
Фаер и так закрытый (по дефолту правило 65535 запрещает всё)

Re: Freebsd 8.2 Проблемы с ядерным натом.

Добавлено: 2011-07-19 0:13:04
Bayerische
По-моему, у вас через NAT дыра светит.

Re: Freebsd 8.2 Проблемы с ядерным натом.

Добавлено: 2011-07-19 8:10:51
mediamag
Дык на фре 7,2 все работало замечательно...конфиг просто перекинул на новую фряху. Кстати методом тыка и логирования каждого правила, заметил, что фаервол пропускает ВСЁ по правилу allow tcp from any to any established. Возможно, что-то изменилось тут?

Re: Freebsd 8.2 Проблемы с ядерным натом.

Добавлено: 2011-07-19 8:47:10
rmn
это не тот баян про поломанную one_pass в 8.2?

Re: Freebsd 8.2 Проблемы с ядерным натом.

Добавлено: 2011-07-19 8:53:37
rmn
попробуй:

в файле /usr/src/sys/netinet/ipfw/ip_fw_pfil.c изменить:

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

        case IP_FW_NAT:
        case IP_FW_REASS:
                goto again;             /* continue with packet */
на:

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

        case IP_FW_NAT:
                if (V_fw_one_pass)
                        break;
                goto again;
 
        case IP_FW_REASS:
                goto again;             /* continue with packet */
затем пересобрать ядро:

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

cd /usr/src
make buildkernel && make installkernel
и ребутнуться

Re: Freebsd 8.2 Проблемы с ядерным натом.

Добавлено: 2011-07-19 9:32:47
mediamag
В этом файле уже все изменино

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

case IP_FW_NAT:
                /* honor one-pass in case of successful nat */
                if (V_fw_one_pass)
                        break; /* ret is already 0 */
                goto again;

        case IP_FW_REASS:
                goto again;             /* continue with packet */

Re: Freebsd 8.2 Проблемы с ядерным натом.

Добавлено: 2011-07-19 11:07:00
Bayerische
rmn
Я с этим заморачивался, тоже удивился, что пофиксено.
mediamag
Правила у вас расположены как раз в том порядке, в котором у меня не хочет работать. NAT пришлось опустить в самый низ.

Re: Freebsd 8.2 Проблемы с ядерным натом.

Добавлено: 2011-07-19 13:20:32
mediamag
дык на фре 7,2 все работало....как это объяснить?

Re: Freebsd 8.2 Проблемы с ядерным натом.

Добавлено: 2011-07-19 14:00:06
rmn
vr1 смотрит в локалку и на ней сеть 10.0.0.0/24?
Тогда в правилах 3600, 3700 неправильно указаны in/out (должно быть наоборот).

Re: Freebsd 8.2 Проблемы с ядерным натом.

Добавлено: 2011-07-20 11:30:43
mediamag
У лисяры в статье http://www.lissyara.su/articles/freebsd/tuning/ipfw/ почему то наоборот, нежели вы советуете.

Re: Freebsd 8.2 Проблемы с ядерным натом.

Добавлено: 2011-07-20 11:38:05
Bayerische
Сдаётся мне, что надо учитывать реалии текущей версии ОС.

Re: Freebsd 8.2 Проблемы с ядерным натом.

Добавлено: 2011-07-20 11:57:14
ivan__
Ну епт в глаза же сразу бросается.
mediamag писал(а):04100 123 24326 allow tcp from any to any established

Re: Freebsd 8.2 Проблемы с ядерным натом.

Добавлено: 2011-07-20 12:00:53
mediamag
Я тоже заметил что это правило скорее всего пропускает все...а как его лучше переделать? Так как на фре 8,1 оно работало как мне надо.

Re: Freebsd 8.2 Проблемы с ядерным натом.

Добавлено: 2011-07-20 12:28:38
ivan__
mediamag писал(а):Я тоже заметил что это правило скорее всего пропускает все...а как его лучше переделать? Так как на фре 8,1 оно работало как мне надо.
Не могло оно по другому работать.

Re: Freebsd 8.2 Проблемы с ядерным натом.

Добавлено: 2011-07-20 13:03:41
mediamag
Ну как это не могло, если работало...и на фре 8,1 при этом правиле, другие правила чувствовали себя нормально и не было выше описанной проблемы.

Re: Freebsd 8.2 Проблемы с ядерным натом.

Добавлено: 2011-07-22 8:35:32
mediamag
Как можно видоизменить правило

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

allow tcp from any to any established
, чтобы оно тупо не пропускало, как сейчас. Просто убрать правило не получается, фаервол перестает работать. Брал это правило по принципу статьи у лисяры

Re: Freebsd 8.2 Проблемы с ядерным натом.

Добавлено: 2011-07-22 9:29:49
ivan__
mediamag писал(а):Как можно видоизменить правило

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

allow tcp from any to any established
, чтобы оно тупо не пропускало, как сейчас. Просто убрать правило не получается, фаервол перестает работать. Брал это правило по принципу статьи у лисяры
Конфиг выложи

Re: Freebsd 8.2 Проблемы с ядерным натом.

Добавлено: 2011-07-22 11:14:35
mediamag
конфиг выкладывал выше

Re: Freebsd 8.2 Проблемы с ядерным натом.

Добавлено: 2011-07-22 11:52:22
ivan__
mediamag писал(а):конфиг выкладывал выше
Это не конфиг, а ipfw show