FreeBSD 7.2 + ipfw

Проблемы установки, настройки и работы Правильной Операционной Системы

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
FreeBSD 7.2 + ipfw
проходил мимо

FreeBSD 7.2 + ipfw

Непрочитанное сообщение FreeBSD 7.2 + ipfw » 2009-10-04 18:08:04

Ребята помогите 2-рой день бьюсь...

Описание:
Есть FreeBSD 7.2
Стоит BIND, dhcp
нужно средствами ipfw настроить nat в локальную сеть.

я читал что в 7.2 ipfw может натить:
http://www.lissyara.su/?id=1967#ipfw_nat_options
Читал описание дуплил, пробывал, не фига не вышло...

Прошу помощи...
rc.conf

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

gateway_enable="YES"
hostname="ultima-net.ru"
ifconfig_em1="DHCP"
keymap="us.unix"
inux_enable="YES"
sshd_enable="YES"
named_enable="YES"
firewall_enable="YES"
firewall_type="/etc/firewall"
dhcpd_enable="YES"
dhcpd_flags="-q"
dhcpd_ifaces="re0"

ifconfig_msk0="inet 10.86.96.2  netmask 255.255.248.0"
defaultrouter="10.86.96.1"
ifconfig_re0="inet 172.16.0.1  netmask 255.255.255.0"
 
route_00="-net 10.86.0.0/21 10.86.96.1"
route_01="-net 10.86.8.0/21 10.86.96.1"
route_02="-net 10.86.16.0/21 10.86.96.1"
route_03="-net 10.86.24.0/21 10.86.96.1"
route_04="-net 10.86.32.0/21 10.86.96.1"
route_05="-net 10.86.40.0/21 10.86.96.1"
и тд...
static_routes="00 01 02 03 04 05"
msk0 - интерфейс корбины телеком на котором я пользуюсь тока внутреней сеткой 10.86.0.0/255.255.0.0
re0 - Локальная сеть 172.16.0.1/24
em1 - Внешний интерфейс с серым IP с доступом в интернет

Задача открыть пользователям:
172.16.0.2 - Интернет с интерфейса em1 и локалку с интерфейса msk0
172.16.0.3 - открыть тока подсети (86.110.0.0/255.255.0.0) с интерфейса em1 и с интефрейса msk0 подсеть 10.86.0.0/255.255.0.0
172.16.0.4 - Интернет с интерфейса em1 и локалку с интерфейса msk0 зашейпить канал до 256Кбит\с (шейпить подсети все кроме 10.0.0.0/255.0.0.0 и 86.110.0.0/255.255.0.0).

Вот что я навоял но не работает(ваял без шейпера):

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

#!/bin/sh -
# Manual script for ipfw
echo "Checking ng_ipfw..."
kldstatscript=`kldstat | grep ng_ipfw`
if [ "$kldstatscript" = "" ]; then
	echo "Starting ng_ipfw..."
		kldload ng_ipfw > /dev/null 2>&1
fi
echo -n "Starting firewall..."
ipfw="/sbin/ipfw"

corbina_if="msk0"
spark_if="em1"
lan_if="re0"

${ipfw} -q flush
${ipfw} -q table 1 flush
${ipfw} add allow all from any to any via lo0
${ipfw} add deny all from any to 127.0.0.0/8

${ipfw} add deny all from 127.0.0.0/8 to any in recv $corbina_if
${ipfw} add deny all from 127.0.0.0/8 to any in recv $spark_if
${ipfw} add deny all from 127.0.0.0/8 to any in recv $lan_if

#block
${ipfw} table 2 add 10.175.121.194
${ipfw} add deny all from "table(2)" to any

${ipfw} add check-state

#TABLE 1 !!!!!!!!!!!!!!!!!!!!!!!!!
${ipfw} table 1 add 10.175.100.100
${ipfw} table 1 add 10.175.100.103
${ipfw} table 1 add 10.68.0.146
${ipfw} table 1 add 10.68.0.147
${ipfw} table 1 add 10.68.0.148
${ipfw} table 1 add 10.68.0.149
${ipfw} table 1 add 10.68.0.150
#TABLE 1 !!!!!!!!!!!!!!!!!!!!!!!!!


nat 1 config log if $spark_if reset same_ports deny_in

#Ves dostup TABLE 1
${ipfw} add allow all from "table(1)" to me via $corbina_if
${ipfw} add allow all from me to "table(1)" via $corbina_if
${ipfw} add allow all from 172.16.0.0/24 to me via $lan_if
${ipfw} add allow all from me to 172.16.0.0/24 via $lan_if
${ipfw} add nat 1 ip from any to any via $spark_if

#Na server vse 80 port
${ipfw} add allow tcp from any to me 80 via $corbina_if
${ipfw} add allow tcp from me 80 to any via $corbina_if
${ipfw} add allow tcp from any to me 80 via $spark_if
${ipfw} add allow tcp from me 80 to any via $spark_if

${ipfw} add allow tcp from me to any setup keep-state out
${ipfw} add allow udp from me to any keep-state out
${ipfw} add allow icmp from any to any

${ipfw} add deny log all from any to any

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

jora
проходил мимо

Re: FreeBSD 7.2 + ipfw

Непрочитанное сообщение jora » 2009-10-04 20:52:21

Я плюнул на ipfw nat - он кривой.и все решил через pf - он работает и плюсом сразу есть в ядре, не нужно ничего пересобирать
на форуме корбины есть примеры http://homenet.corbina.net/index.php?showforum=629

paradox
проходил мимо
Сообщения: 11620
Зарегистрирован: 2008-02-21 18:15:41

Re: FreeBSD 7.2 + ipfw

Непрочитанное сообщение paradox » 2009-10-04 21:28:17

он не кривой он своеобразный
но то что решили проблему это +1

vlad.vrublevsky
проходил мимо
Сообщения: 8
Зарегистрирован: 2009-08-29 16:08:24

Re: FreeBSD 7.2 + ipfw

Непрочитанное сообщение vlad.vrublevsky » 2009-10-04 22:11:28

Прошу прощения, вы писали что pf есть сразу в ядре и не надо пересобирать с поддержкой ?
#PF
device pf
device pflog
device pfsync

jora
проходил мимо

Re: FreeBSD 7.2 + ipfw

Непрочитанное сообщение jora » 2009-10-04 22:25:02

в rc.conf

pf_enable="YES"

и вперед:
pfctl -e -f /etc/pf.conf

Аватара пользователя
terminus
майор
Сообщения: 2305
Зарегистрирован: 2007-10-29 11:27:35
Откуда: Рига

Re: FreeBSD 7.2 + ipfw

Непрочитанное сообщение terminus » 2009-10-04 22:33:40

jora писал(а):Я плюнул на ipfw nat - он кривой.и все решил через pf - он работает и плюсом сразу есть в ядре, не нужно ничего пересобирать
на форуме корбины есть примеры http://homenet.corbina.net/index.php?showforum=629
Коммунисты так не поступают! :crazy:
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.

vlad.vrublevsky
проходил мимо
Сообщения: 8
Зарегистрирован: 2009-08-29 16:08:24

Re: FreeBSD 7.2 + ipfw

Непрочитанное сообщение vlad.vrublevsky » 2009-10-04 22:40:01

Это понятно, вопрос в том что я поставлю freebsd 7.2 к примеру, и с ядром generic уже будет идти поддержка pf?
просто мне нужно будет загрузить kldload /boot/kernel/pf.ko запустить pfctl -e -f /etc/pf.conf и всё работает?
у меня стоит 7.0, там ядро пересобирал

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

#PF
device          pf
device          pflog
device          pfsync
options         ALTQ
options         ALTQ_CBQ
options         ALTQ_RED
options         ALTQ_RIO
options         ALTQ_HFSC
options         ALTQ_PRIQ
options         ALTQ_NOPCC
спс за ответ

paradox
проходил мимо
Сообщения: 11620
Зарегистрирован: 2008-02-21 18:15:41

Re: FreeBSD 7.2 + ipfw

Непрочитанное сообщение paradox » 2009-10-04 22:50:36

для pf пересобирать ничего не надо
для pf+altq надо

malike-rnd
проходил мимо

Re: FreeBSD 7.2 + ipfw

Непрочитанное сообщение malike-rnd » 2009-10-05 15:43:19

Проблему решил... надо просто манулы читать не через строчку )
само решение ))
firewall_nat_enable="YES"

Аватара пользователя
thefree
лейтенант
Сообщения: 980
Зарегистрирован: 2008-12-29 9:23:19
Откуда: Весёлая Страна

Re: FreeBSD 7.2 + ipfw

Непрочитанное сообщение thefree » 2009-10-05 19:52:33

2paradox
вот выбирал между ipfw и pf ...
Вопрос к вам ...

если мне надо удалить определенную строчку из правил pf как быть?

в 8 какой буде pf? и не думали ли вы портировать с OpenBSD более новый до выхода 8ки
Не судите меня строго, Я не волшебник, а только учусь!
http://planetbsd.ru - RSS-агрегатор *BSD по Рунету

paradox
проходил мимо
Сообщения: 11620
Зарегистрирован: 2008-02-21 18:15:41

Re: FreeBSD 7.2 + ipfw

Непрочитанное сообщение paradox » 2009-10-08 14:50:37

если мне надо удалить определенную строчку из правил pf как быть?
что значит удалить?
в 8 какой буде pf? и не думали ли вы портировать с OpenBSD более новый до выхода 8ки
его в любом случае в 8 не примут
ибо она уже стеибл
а если что то и портирую то токо то на чем сижу (куррент)

Аватара пользователя
thefree
лейтенант
Сообщения: 980
Зарегистрирован: 2008-12-29 9:23:19
Откуда: Весёлая Страна

Re: FreeBSD 7.2 + ipfw

Непрочитанное сообщение thefree » 2009-10-08 16:04:21

paradox писал(а):что значит удалить?
Мне надо одно правило удалить. пример

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

ipfw delete 52
Не судите меня строго, Я не волшебник, а только учусь!
http://planetbsd.ru - RSS-агрегатор *BSD по Рунету