Проблемы с ipfw...

Простые/общие вопросы по UNIX системам. Спросите здесь, если вы новичок

Модераторы: vadim64, terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
PunKHS
рядовой
Сообщения: 10
Зарегистрирован: 2012-05-08 13:29:07

Проблемы с ipfw...

Непрочитанное сообщение PunKHS » 2012-05-20 20:13:12

Доброго времени суток!
Настроил ipfw согластно инструкции от lissyara. Спасибо ему ОГРОМНОЕ за проделанную работу!
Теперь по делу... Перешел с natd на kernel nat. Раньше файрвол работал отлично, а сейчас все порты открыты... Не могу ничего закрыть. Фряха пингует внешку и локалку. У юзеров за прокси инет есть. Проброс портов работает. Не работает только закрытие портов.
Вот мои параметры:

rc.conf

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

 # -- sysinstall generated deltas -- # Sat Apr 28 16:44:13 2012 
# Created: Sat Apr 28 16:44:13 2012 
# Enable network daemons for user convenience. 
# Please make all changes to this file, not to /etc/defaults/rc.conf. 
# This file now contains just the overrides from /etc/defaults/rc.conf. 

# -- sysinstall generated deltas -- # Sat Apr 28 12:51:30 2012 
ifconfig_alc0="inet 192.168.1.34  netmask 255.255.255.0" 
hostname="xxx.ru" 
sshd_enable="YES" 
gateway_enable="YES"  # закоментил для прозрачного режима 

#Внешка 
ppp_enable="YES" 
ppp_mode="ddial" 
ppp_nat="NO"   # if you want to enable nat for your local network, otherwise NO 
ppp_profile="name_of_service_provider" 

#MySQL 
mysql_enable="YES" 

#Apache 
apache22_enable="YES" 

#DNS 
named_enable="YES" 
named_program="/usr/sbin/named" 
named_flags="-u bind -c /etc/namedb/named.conf" 

#Файрвол 
firewall_enable="YES" 
firewall_script="/etc/rc.firewall" 
firewall_nat_enable="YES" 
firewall_nat_interface="tun0" 
#firewall_type="OPEN" 

#ProFTPD 
proftpd_enable="YES" 
proftpd_flags="" 

#Webmin 
webmin_enable="YES" 

#SQUID 
squid_enable="YES" 

#SAMS 
sams_enable="YES" 

#Отключаем проверку диска(ов) в фоне 
fsck_y_enable="YES" 
background_fsck="NO" 

#Настраиваем синхронизацию времени 
ntpdate_enable="YES" 
ntpd_enable="YES" 

#Русская консоль 
font8x14="cp866-8x14" 
font8x16="cp866b-8x16" 
font8x8="cp866-8x8" 
scrnmap="koi8-r2cp866" 
keymap="ru.koi8-r"
Ядро собирал с параметрами:

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

# Proxy personal options 
options IPFIREWALL                      # Включаем фаерволл 
options IPFIREWALL_VERBOSE              # Включаем логирование для фаерволла 
options IPFIREWALL_VERBOSE_LIMIT=1000   # Ограничиваем логи кол-вом строк (1000) 
options IPFIREWALL_NAT                  # Включаем поддержку kernel NAT 
options IPFIREWALL_FORWARD              # Изменение назнчения пакетов 
options LIBALIAS                        # Необходимо для kernel NAT 
options ROUTETABLES=2                   # Поддержка двух таблиц маршрутизации 
options DUMMYNET                        # Для Kernel NAT + Ограничение пропускной способности 
options IPDIVERT 
options HZ="1000"                       # Для DUMMYNET
rc.firewall

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

FwCMD="/sbin/ipfw"      # собственно где лежит бинарник ipfw 
LanOut="tun0"           # внешний интерфейс 
LanIn="alc0"            # внутренний интерфейс 
IpOut="внешняяIP"   # внешний IP адрес машины 
IpIn="192.168.1.34"     # внутренний IP машины 
#IpIn="192.168.1.100"   # внутренний IP машины 
NetMask="24"            # маска сети (если она разная для внешней 
                        # и внутренней сети - придётся вводить ещё 
                        # одну переменную, но самое забавное, что 
                        # можно и забить - оставить 24 - всё будет 
                        # работать, по крайней мере я пробовал - 
                        # работаало на 4-х машинах, в разных сетях, 
                        # с разными масками - настоящими разными! но - 
                        # это неправильно.) 
NetIn="192.168.1.0"     # Внутренняя сеть 
NetOut="83.221.217.0"   # Внешняя сеть 

# Сбрасываем все правила: 
${FwCMD} -f flush 

# Проверяем - соответствует ли пакет динамическим правилам: 
${FwCMD} add check-state 

# Разрешаем весь траффик по внутреннему интерфейсу (петле) 
# Вообще я во многих местах читал что без него может ничё не заработать вообще 
# и прочие страшилки. Работает - почта, апач, .... А вот squid - не работает :) 
# так что без него и правда - никуда. 
${FwCMD} add allow ip from any to any via lo0 

# рубим попытки lo0 куда-то лезть и откуда-то лезть на lo0 (вот честно - ни 
# одного пакета по этим правилам не зарубилось за всё время... Может в этом 
# моё счастье? :)) 
${FwCMD} add deny ip from any to 127.0.0.0/8 
${FwCMD} add deny ip from 127.0.0.0/8 to any 

# Вводим запреты: 
# режем частные сети на внешнем интерфейсе - по легенде он у нас 
# смотрит в интернет, а значит пакетам этим браться неоткуда на нём. 
# рубим частные сeти 
${FwCMD} add deny ip from any to 10.0.0.0/8 in via ${LanOut} 
${FwCMD} add deny ip from any to 172.16.0.0/12 in via ${LanOut} 
${FwCMD} add deny ip from any to 192.168.0.0/16 in via ${LanOut} 
${FwCMD} add deny ip from any to 0.0.0.0/8 in via ${LanOut} 

# рубим автоконфигуреную частную сеть 
${FwCMD} add deny ip from any to 169.254.0.0/16 in via ${LanOut} 

# рубаем мультикастовые рассылки 
${FwCMD} add deny ip from any to 240.0.0.0/4 in via ${LanOut} 

# рубим фрагментированные icmp 
${FwCMD} add deny icmp from any to any frag 

# рубим широковещательные icmp на внешнем интерфейсе 
${FwCMD} add deny log icmp from any to 255.255.255.255 in via ${LanOut} 
${FwCMD} add deny log icmp from any to 255.255.255.255 out via ${LanOut} 

# отправляем всех на squid (в данном случае - прокси прозрачный) 
#${FwCMD} add fwd 127.0.0.1,3128 tcp from ${NetIn}/${NetMask} to any 80 via ${LanOut} 

# ядерный NAT 
#${FwCMD} nat 1 config ip ${IpOut} unreg_only same_ports log \ 
#redirect_port tcp 192.168.1.49:25 25 \ 
#redirect_port tcp 192.168.1.49:143 143 \ 
#redirect_port tcp 192.168.1.49:110 110 \ 
#redirect_port tcp 192.168.1.49:3000 3000 \ 
#redirect_port tcp 192.168.1.198:443 443 \ 
#redirect_port tcp 192.168.1.201:3389 3389 

#25,143,110,3000 - mail 
#443 - Bank 
#3389 - RDP 

#${FwCMD} add nat 1 all from ${NetIn}/${NetMask} to any 
#${FwCMD} add nat 1 all from any to ${IpOut} 

# рубим траффик к частным сетям через внешний интерфейс 
# заметтьте - эти правила отличаются от тех что были выше! 
${FwCMD} add deny ip from 10.0.0.0/8 to any out via ${LanOut} 
${FwCMD} add deny ip from 172.16.0.0/12 to any out via ${LanOut} 
${FwCMD} add deny ip from 192.168.0.0/16 to any out via ${LanOut} 
${FwCMD} add deny ip from 0.0.0.0/8 to any out via ${LanOut} 

# рубим автоконфигуреную частную сеть 
${FwCMD} add deny ip from 169.254.0.0/16 to any out via ${LanOut} 

# рубаем мультикастовые рассылки 
${FwCMD} add deny ip from 224.0.0.0/4 to any out via ${LanOut} 

# рубаем мультикастовые рассылки 
${FwCMD} add deny ip from 240.0.0.0/4 to any out via ${LanOut} 

# разрешаем все установленные соединения (если они установились - 
# значит по каким-то правилам они проходили.) 
${FwCMD} add allow tcp from any to any established 

# разрешаем весь исходящий траффик (серверу-то в инет можно? :)) 
${FwCMD} add allow ip from ${IpOut} to any out xmit ${LanOut} 

# разрешаем DNS снаружи (нам же надо узнавать IP по именам машин?) 
${FwCMD} add allow udp from any 53 to any via ${LanOut} 

# разрешаем DNS входящий снаружи - если на этой машине работает named 
# и держит какую-то зону. В остальных случаях - не нужно 
${FwCMD} add allow udp from any to any 53 via ${LanOut} 

# разрешаем UDP (для синхронизации времени - 123 порт) 
${FwCMD} add allow udp from any to any 123 via ${LanOut} 

# разрешаем ftp снаружи (оба правила - для пасивного режима) 
# для узнавания портранджа по которому будет работать, лезем в 
#/usr/home/lissyara/>sysctl net.inet.ip.portrange.first 
# net.inet.ip.portrange.first: 49152 
# /usr/home/lissyara/>sysctl net.inet.ip.portrange.last 
# net.inet.ip.portrange.last: 65535 
${FwCMD} add allow tcp from any to ${IpOut} 21 via ${LanOut} 

#Можно изгалиться примерно так, если есть желание, но я предпочитаю руками 
#${FwCMD} add allow tcp from any to ${IpOut} \ 
#`sysctl net.inet.ip.portrange.first | awk '{print $2}'`-\ 
#`sysctl net.inet.ip.portrange.last | awk '{print $2}'` via ${LanOut} 
${FwCMD} add allow tcp from any to ${IpOut} 50000-50100 via ${LanOut} 

# разрешаем некоторые типы ICMP траффика - эхо-запрос, 
# эхо-ответ и время жизни пакета истекло 
${FwCMD} add allow icmp from any to any icmptypes 0,8,11 

# разрешаем внутренние адреса на внешнем интерфейсе 
#${FwCMD} add allow tcp from any to 192.168.1.49 25 via ${LanOut} 
#${FwCMD} add allow tcp from any to 192.168.1.49 143 via ${LanOut} 

# открываем снаружи 80 порт - если у нас есть WWW сервер на машине 
#${FwCMD} add allow tcp from any to ${IpOut} 80 via ${LanOut} 

# открываем снаружи 25 порт (SMTP) если на машине крутится почта 
${FwCMD} add allow tcp from any to ${IpOut} 25 via ${LanOut} 

# открываем снаружи 22 порт - если надо будет ходить на машину по ssh 
${FwCMD} add allow tcp from any to ${IpOut} 22 via ${LanOut} 

# открываем снаружи 143 порт(если надо смотреть почту снаружи по IMAP) 
${FwCMD} add allow tcp from any to ${IpOut} 143 via ${LanOut} 

# открываем снаружи 110 порт(если надо смотреть почту снаружи по POP) 
${FwCMD} add allow tcp from any to ${IpOut} 110 via ${LanOut} 

# открываем снаружи 443 порт(для Банк-клиента) 
${FwCMD} add allow tcp from any to ${IpOut} 443 via ${LanOut} 

# открываем снаружи 10000 порт(для Webmin) 
#${FwCMD} add allow tcp from any to ${IpOut} 10000 via ${LanOut} 

# по поводу следующих трёх правил, для tcp, udp и icmp - их можно 
# заменить одним правилом: 
#${FwCMD} add allow ip from any to any via ${LanIn} 
# но для удобства наладки и контроля происходящего я предпочитаю три отдельных 
# правила, хотя могут быть грабли - например протокол gre не пройдёт - 
# придётся стругать отдельное правило для него, типа 
#${FwCMD} add allow gre from any to any via ${LanIn} 
# итак: 

# разрешаем весь tcp траффик внутри локалки (на внутреннем интерфейсе) 
${FwCMD} add allow tcp from any to any via ${LanIn} 

# разрешаем весь udp траффик внутри локалки (на внутреннем интерфейсе) 
${FwCMD} add allow udp from any to any via ${LanIn} 

# разрешаем весь icmp траффик внутри локалки (на внутреннем интерфейсе) 
${FwCMD} add allow icmp from any to any via ${LanIn} 

# запрещаем всё и всем. Если тип файрволла не open то это правило добавится 
# автоматически, но всё-же ну его. Лучше сам. Надёжней. 
${FwCMD} add deny ip from any to any
ipfe show:

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

press# ipfw show 
00100     0        0 check-state 
00200   110     3640 allow ip from any to any via lo0 
00300     0        0 deny ip from any to 127.0.0.0/8 
00400     0        0 deny ip from 127.0.0.0/8 to any 
00500     0        0 deny ip from any to 10.0.0.0/8 in via tun0 
00600     0        0 deny ip from any to 172.16.0.0/12 in via tun0 
00700     0        0 deny ip from any to 192.168.0.0/16 in via tun0 
00800     0        0 deny ip from any to 0.0.0.0/8 in via tun0 
00900     0        0 deny ip from any to 169.254.0.0/16 in via tun0 
01000     0        0 deny ip from any to 240.0.0.0/4 in via tun0 
01100     0        0 deny icmp from any to any frag 
01200     0        0 deny log logamount 1000 icmp from any to 255.255.255.255 in                                                                                                                                via tun0 
01300     0        0 deny log logamount 1000 icmp from any to 255.255.255.255 ou                                                                                                                               t via tun0 
01400 47228 14895776 nat 1 ip from 192.168.1.0/24 to any 
01500 28434 28637920 nat 1 ip from any to внешняяIP 
01600     0        0 deny ip from 10.0.0.0/8 to any out via tun0 
01700     0        0 deny ip from 172.16.0.0/12 to any out via tun0 
01800     0        0 deny ip from 192.168.0.0/16 to any out via tun0 
01900     0        0 deny ip from 0.0.0.0/8 to any out via tun0 
02000     0        0 deny ip from 169.254.0.0/16 to any out via tun0 
02100     0        0 deny ip from 224.0.0.0/4 to any out via tun0 
02200     0        0 deny ip from 240.0.0.0/4 to any out via tun0 
02300     0        0 allow tcp from any to внешняяIP established 
02400   789    56287 allow ip from внешняяIP to any out xmit tun0 
02500     0        0 allow udp from any 53 to any via tun0 
02600     0        0 allow udp from any to any dst-port 53 via tun0 
02700     0        0 allow udp from any to any dst-port 123 via tun0 
02800     0        0 allow tcp from any to внешняяIP dst-port 21 via tun0 
02900     0        0 allow tcp from any to внешняяIP dst-port 50000-50100 vi                                                                                                                               a tun0 
03000  1009    56504 allow icmp from any to any icmptypes 0,8,11 
03100     0        0 allow tcp from any to внешняяIP dst-port 25 via tun0 
03200     0        0 allow tcp from any to внешняяIP dst-port 22 via tun0 
03300     0        0 allow tcp from any to внешняяIP dst-port 143 via tun0 
03400     0        0 allow tcp from any to внешняяIP dst-port 110 via tun0 
03500     0        0 allow tcp from any to внешняяIP dst-port 443 via tun0 
03600 26583 28333160 allow tcp from any to any via alc0 
03700   222    25477 allow udp from any to any via alc0 
03800     6      630 allow icmp from any to any via alc0 
65535    47    61001 deny ip from any to any 
Где грабли? Как Закрыть порты? HELP!!!
Последний раз редактировалось f_andrey 2012-05-20 20:15:34, всего редактировалось 1 раз.
Причина: Автору, выбирайте пожалуйста раздел соответствуюший тематике вашего сообщения.

Хостинговая компания 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/

ChihPih
ст. прапорщик
Сообщения: 568
Зарегистрирован: 2009-09-04 12:23:30
Откуда: Где-то в России...
Контактная информация:

Re: Проблемы с ipfw...

Непрочитанное сообщение ChihPih » 2012-05-20 20:28:21

Какие порты закрыть то надо? Как вы определили что они открыты?
www.info-x.org - информационный ресурс о ОС FreeBSD.

ChihPih
ст. прапорщик
Сообщения: 568
Зарегистрирован: 2009-09-04 12:23:30
Откуда: Где-то в России...
Контактная информация:

Re: Проблемы с ipfw...

Непрочитанное сообщение ChihPih » 2012-05-20 20:30:22

В настройках НАТ,а надо указывать интерфейс, для которого применяется это правило (на заметку: вообще во всех правилах так надо делать).
www.info-x.org - информационный ресурс о ОС FreeBSD.

PunKHS
рядовой
Сообщения: 10
Зарегистрирован: 2012-05-08 13:29:07

Re: Проблемы с ipfw...

Непрочитанное сообщение PunKHS » 2012-05-20 20:44:17

ChihPih писал(а):В настройках НАТ,а надо указывать интерфейс, для которого применяется это правило (на заметку: вообще во всех правилах так надо делать).
В настройке ipfw 80 порт закрыт, а я из дома на него легко выхожу...
Пожалуйста, приведите в пример пару строк. Я новичок в ipfw. Не до конца все понимаю.

ChihPih
ст. прапорщик
Сообщения: 568
Зарегистрирован: 2009-09-04 12:23:30
Откуда: Где-то в России...
Контактная информация:

Re: Проблемы с ipfw...

Непрочитанное сообщение ChihPih » 2012-05-20 21:07:55

Вы начните по минимуму правила составлять. Разрешите один порт, запретите что-то другое (другими словами: с минимального кол-ва правил начните, которые вы хорошо понимаете что и как работет). Так быстрее понимание происходящего придет (от простого к сложному). Еще на заметку - нет смысла указывать внешний IP адрес в правилах, так как есть параметр me, ядро автоматом будет использовать IP адрес интерфейса, на котором работает правило.
www.info-x.org - информационный ресурс о ОС FreeBSD.

snorlov
подполковник
Сообщения: 3929
Зарегистрирован: 2008-09-04 11:51:25
Откуда: Санкт-Петербург

Re: Проблемы с ipfw...

Непрочитанное сообщение snorlov » 2012-05-20 22:55:35

PunKHS писал(а):
ChihPih писал(а):В настройках НАТ,а надо указывать интерфейс, для которого применяется это правило (на заметку: вообще во всех правилах так надо делать).
В настройке ipfw 80 порт закрыт, а я из дома на него легко выхожу...
Пожалуйста, приведите в пример пару строк. Я новичок в ipfw. Не до конца все понимаю.
попробуйте убрать форвард, а пользователям, для хождения в инет, прописать squid в настройках браузеров...

PunKHS
рядовой
Сообщения: 10
Зарегистрирован: 2012-05-08 13:29:07

Re: Проблемы с ipfw...

Непрочитанное сообщение PunKHS » 2012-05-21 7:16:17

snorlov писал(а): попробуйте убрать форвард, а пользователям, для хождения в инет, прописать squid в настройках браузеров...
Сейчас строка отвечающая за перенаправление пользователей на squid закоменчена.

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

#отправляем всех на squid (в данном случае - прокси прозрачный) 
#${FwCMD} add fwd 127.0.0.1,3128 tcp from ${NetIn}/${NetMask} to any 80 via ${LanOut} 
Файрвол не OPEN:

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

#Файрвол 
firewall_enable="YES" 
firewall_script="/etc/rc.firewall" 
firewall_nat_enable="YES" 
firewall_nat_interface="tun0" 
#firewall_type="OPEN"
В rc.firewall:

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

# открываем снаружи 80 порт - если у нас есть WWW сервер на машине 
#${FwCMD} add allow tcp from any to ${IpOut} 80 via ${LanOut}
при ipfw show:

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

65535    47    61001 deny ip from any to any 
Т.е., как я понимаю, при таких настройках файрвол должен запрещать все то, что не разрешено. 80 порт в мир запрещен в rc.firewall. Но из дома я легко подключаюсь к рабочему шлюзу. Где косяк? Может быть я чего то не понял?

snorlov
подполковник
Сообщения: 3929
Зарегистрирован: 2008-09-04 11:51:25
Откуда: Санкт-Петербург

Re: Проблемы с ipfw...

Непрочитанное сообщение snorlov » 2012-05-21 8:34:23

У вас подключение через ppp, а сам файер после инициализации tun0 передернут?

Аватара пользователя
ivan_k
мл. сержант
Сообщения: 103
Зарегистрирован: 2010-01-27 16:00:37
Откуда: Иваново

Re: Проблемы с ipfw...

Непрочитанное сообщение ivan_k » 2012-05-21 11:13:10

а так если
${FwCMD} nat 1 config ip ${IpOut} unreg_only deny_in same_ports log .....
а дальше уже открывать те порты, которые нужны

PunKHS
рядовой
Сообщения: 10
Зарегистрирован: 2012-05-08 13:29:07

Re: Проблемы с ipfw...

Непрочитанное сообщение PunKHS » 2012-05-21 13:38:43

snorlov писал(а):У вас подключение через ppp, а сам файер после инициализации tun0 передернут?
Перезапускал ipfw после получения pinga с внешнего интерфейса. Результата нет.

PunKHS
рядовой
Сообщения: 10
Зарегистрирован: 2012-05-08 13:29:07

Re: Проблемы с ipfw...

Непрочитанное сообщение PunKHS » 2012-05-22 6:39:23

ivan_k писал(а):а так если
${FwCMD} nat 1 config ip ${IpOut} unreg_only deny_in same_ports log .....
а дальше уже открывать те порты, которые нужны
Попробовал. Не помогло. На внешнем интерфейсе ping проходит, локалку не видит...

snorlov
подполковник
Сообщения: 3929
Зарегистрирован: 2008-09-04 11:51:25
Откуда: Санкт-Петербург

Re: Проблемы с ipfw...

Непрочитанное сообщение snorlov » 2012-05-22 8:07:54

PunKHS писал(а):
ivan_k писал(а):а так если
${FwCMD} nat 1 config ip ${IpOut} unreg_only deny_in same_ports log .....
а дальше уже открывать те порты, которые нужны
Попробовал. Не помогло. На внешнем интерфейсе ping проходит, локалку не видит...
А что говорит

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

ipfw -a list

PunKHS
рядовой
Сообщения: 10
Зарегистрирован: 2012-05-08 13:29:07

Re: Проблемы с ipfw...

Непрочитанное сообщение PunKHS » 2012-05-22 17:51:07

snorlov писал(а): А что говорит

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

ipfw -a list
клиент не видит сервер, по ssh не выходит

Аватара пользователя
ioj
ефрейтор
Сообщения: 53
Зарегистрирован: 2012-05-23 15:29:51

Re: Проблемы с ipfw...

Непрочитанное сообщение ioj » 2012-05-30 13:46:37

Приветствую всех
Возникла проблема при настройке ipfw. вижу сеть , сервер пингуеться изнутри и снаружи, с сервера пингуются обе сети - и внешняя и внутренняя. не могу понять что н так((, не поможете?
netstat

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

Internet:
Destination        Gateway            Flags    Refs      Use  Netif Expire
default            89.163.5.1         UGS         0     5942    rl0
89.163.5.0/24      link#6             U           0        0    rl0
89.163.5.83        link#6             UHS         0        0    lo0
127.0.0.1          link#9             UH          0        0    lo0
192.168.0.0/24     link#7             U           0     1384    vr0
192.168.0.1        link#7             UHS         0        0    lo0


ipfw show

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

00100     0       0 check-state
00200 16577 1129443 allow ip from any to any
00300     0       0 divert 8668 ip from 192.168.0.0/24 to any out via rl0
00400     0       0 divert 8668 ip from any to 89.163.5.83 in via rl0
65535     0       0 deny ip from any to any
rc.conf

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

#внешняя сеть
ifconfig_rl0="inet 89.163.5.83 netmask 255.255.255.0"
defaultrouter="89.163.5.1"
gateway_enable="YES"
#внутренняя сеть
ifconfig_vr0="inet 192.168.0.1 netmask 255.255.255.0"
#ФВ
firewall_enable="YES"
firewall_script="/etc/rc2.fw"
sshd_enable="YES"
#moused_enable="YES"
#нат
natd_enable="YES"
natd_interface="rl0"
natd_flag="-m -u"
# Set dumpdev to "AUTO" to enable crash dumps, "NO" to disable
dumpdev="NO"
ядро собрано с

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

options         IPFIREWALL
options         IPFIREWALL_VERBOSE
options         IPFIREWALL_VERBOSE_LIMIT=100
options         IPFIREWALL_FORWARD
options         IPDIVERT
options         LIBALIAS
есть подозрение что это нат не хочет переадресовывать пакеты...
Продам хамелеона синего. Нет, красного. Нет, зеленого. Блин. Круто. Нет, не продам...

Аватара пользователя
Shuba
ст. сержант
Сообщения: 365
Зарегистрирован: 2008-03-25 10:58:21
Откуда: Минск
Контактная информация:

Re: Проблемы с ipfw...

Непрочитанное сообщение Shuba » 2012-06-03 23:06:05

ioj писал(а):Приветствую всех
Возникла проблема при настройке ipfw. вижу сеть , сервер пингуеться изнутри и снаружи, с сервера пингуются обе сети - и внешняя и внутренняя. не могу понять что н так((, не поможете?
есть подозрение что это нат не хочет переадресовывать пакеты...
а что ты хочешь фаером сделать? Я так подозреваю, что хочешь внутреннюю сетку через NAT вывести в инет. Ну так у тебя в правилах ниодного пакета до nat-а не дойдёт, т.к. все пакеты будут пропускаться 200-ым правилом.
Сделай нечто вроде такого:

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

ipfw add 100 pass ip from 192.168.0.0/24 to any via vr0
ipfw add 200 pass ip from any to 192.168.0.0/24 via vr0
ipfw add 300 divert 8668 ip from any to any
ну это так, приблизительно, так как сам natd не юзаю. Копай в нужную сторону. Кроме того рекомендую слезать с natd с сторону ядерного nat-а.
Сила ночи, сила дня - одинакова фигня!