Страница 8 из 10

Re: IPFW

Добавлено: 2010-08-30 23:52:28
wowan400
все равно не помогает, что за напасть

Re: IPFW

Добавлено: 2010-08-31 10:16:17
wowan400
Есть аналогичная проблема у человека http://lists.freebsd.org/pipermail/free ... 41111.html как вариант решение проблемы переписать все правила на фаер pf.

Re: IPFW

Добавлено: 2010-08-31 10:40:17
hizel
ну работайте с kernel nat как будто у него всего one_pass=0, значит-со после nat-а надо выставить allow

Re: IPFW

Добавлено: 2010-08-31 12:43:11
Гость
переменная net.inet.ip.fw.one_pass: 1 она при загрузке всегда 1, да действительно добавил после ната разрешающее правило
####################################################################
# NAT Kernel
####################################################################
$cmd nat 1 config log if ${pppOut} reset same_ports deny_in
$cmd add 00110 nat 1 ip from any to any via ${pppOut}
$cmd add 00111 allow ip from any to any via ${pppOut}

и пакеты пошли но тока это не правильно это не нат а маршрутизация, мне порты тока надо нужные пронатить а он все разрешит

Re: IPFW

Добавлено: 2010-08-31 12:46:21
wowan400
или я не прав?

Re: IPFW

Добавлено: 2010-08-31 12:49:00
hizel
какая еще маршрутизация?
попробуйте еще раз прочитать как проходят пактеы через ipfw, после nat пакеты идут уже оттранслированные если необходимо
что позволяет фильтровать после nat преобразования, правда никто не пользуется этим, потому что не нужно :-)
а чем вас не вштыривает ppp nat?
тогда правила сократятся, до

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

$cmd add 00111 allow ip from any to any via ${pppOut}

Re: IPFW

Добавлено: 2010-08-31 13:37:35
wowan400
Ясно,все понял спасибо большое за помощь

Re: IPFW

Добавлено: 2010-09-14 15:31:24
ajak
Чёт я запутался, после перезборки ядра есть дно правило
65535 211 22213 deny ip from any to
пишу
ipfw add allow ip from any to any
и поялвяется нет, после перезагузки, моё правил исчезает
смотрю через show - его нету, даже пинги не посылаются
Куда его надо записать чтобы навсегда
,да и почему оно у меня под номером 100 идёт? Это правило

Re: IPFW

Добавлено: 2010-09-15 11:39:47
ajak
Разобрался, вот ,если кому интересно

Моя система

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

FreeBSD yakushev 8.0-RELEASE FreeBSD 8.0-RELEASE #2: Wed Sep 15 13:33:24 MSD 2010     root@yakushev:/usr/obj/usr/src/sys/123  i386
Вот ядро для фаера

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

options         IPFIREWALL
options         IPFIREWALL_VERBOSE
options         IPFIREWALL_VERBOSE_LIMIT=1000
options         IPFIREWALL_FORWARD
options         IPDIVERT
options         DUMMYNET
rc.conf

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


ifconfig_rl0="inet 192.168.0.210  netmask 255.255.0.0"
defaultrouter="192.168.0.1"
sshd_enable="YES"
inetd_enable="YES"
hostname yakushev
gateway="NO"
firewall_script="/etc/rc.firewall"
firewall_enable="YES"
Кусок кода куда я записал своё правило , и там только loopback функция выполняется остальной скрипт не трогается, можно туда всё писать в эту функцию
[/etc/rc.firewall]

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


setup_loopback () {
        ############
        # Only in rare cases do you want to change these rules
        #
        #${fwcmd} add 100 pass all from any to any via lo0
        #${fwcmd} add 200 deny all from any to 127.0.0.0/8
        #${fwcmd} add 300 deny ip from 127.0.0.0/8 to any
         ${fwcmd} add 100 allow ip from any to any
}


Вот так.

Re: IPFW

Добавлено: 2010-10-27 9:23:37
tester13
Приветствую форумчан.
Имею вопрос по ipfw.
Во фре новичек.

uname -a

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

FreeBSD name 8.0-RELEASE-p4 FreeBSD 8.0-RELEASE-p4 #3: Mon Jul 26 19:22:41 OMSST 2010
rc.firewall

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

#! /bin/sh
fwcmd="/sbin/ipfw"
${fwcmd} -f flush
###
wan_if="rl0"
wan_net="192.168.0.0/24"
wan_ip="192.168.0.2"
#
lan_if="rl1"
lan_net="192.168.1.0/24"
lan_ip="192.168.1.1"
###
#
${fwcmd} add check-state
${fwcmd} add allow all from any to any via lo0
${fwcmd} add allow all from any to any via ${lan_if}
#
# немного защиты ###
${fwcmd} add deny all from any to 127.0.0.0/8
${fwcmd} add deny all from 127.0.0.0/8 to any
#
${fwcmd} add fwd 127.0.0.1,3128 tcp from ${lan_net} to any 80,443,21,20 via ${lan_if}
#
${fwcmd} add divert natd all from ${lan_net} to any out via ${wan_if}
${fwcmd} add divert natd all from any to ${wan_ip} in via ${wan_if}
#
${fwcmd} add allow tcp from any to any established
${fwcmd} add allow all from ${wan_ip} to any xmit ${wan_if}
#
# исходящие ###
${fwcmd} add allow all from ${wan_ip} to any out via ${wan_if} uid root
${fwcmd} add allow tcp from any to any 53 out via ${wan_if} setup keep-state
${fwcmd} add allow udp from any to any 53 out via ${wan_if}
${fwcmd} add allow tcp from any to any 22 out via ${wan_if} setup keep-state
${fwcmd} add allow tcp from any to any 123 out via ${wan_if} setup keep-state
${fwcmd} add allow all from any to any 137,138,139 out via ${wan_if}
${fwcmd} add allow icmp from any to any out via ${wan_if} keep-state
${fwcmd} add deny all from any to any out via ${wan_if}
#
# входящие ###
${fwcmd} add allow tcp from any to any 53 in via ${wan_if} setup
${fwcmd} add alow udp from any to any 53 in via ${wan_if}
${fwcmd} add allow tcp from any to any 22 in via ${wan_if} setup
${fwcmd} add allow tcp from any to any 10000 in via ${wan_if} setup
${fwcmd} add allow icmp from any to any in via ${wan_if} icmptypes 0,8,11
${fwcmd} add deny all from any to any in via ${wan_if}
#
# запрет всего ###
${fwcmd} add 65002 deny all from any to any
#
rc.conf

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

gateway_enable="YES"
firewall_type="open"
firewall_script="/etc/rc.firewall"
natd_enable="YES"
natd_interface="rl0"
natd_flags="-f /etc/natd.conf"
192.168.0.1 - ADSL модем в режиме роутера
192.168.1.0/24 - несколько компов через свич

получаю вот что
ipfw show

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

00100    0      0 check-state
00200    0      0 allow ip from any to any via lo0
00300 1202 183491 allow ip from any to any via rl1
00400    0      0 deny ip from any to 127.0.0.0/8
00500    0      0 deny ip from 127.0.0.0/8 to any
00600    0      0 fwd 127.0.0.1,3128 tcp from 192.168.1.0/24 to any dst-port 80,443,21,20 via rl1
00700   36   2501 divert 8668 ip from 192.168.1.0/24 to any out via rl0
00800 1141  67815 divert 8668 ip from any to 192.168.0.2 in via rl0
00900    0      0 allow tcp from any to any established
01000  581  33999 allow ip from 192.168.0.2 to any xmit rl0
01100    0      0 allow ip from 192.168.0.2 to any out via rl0 uid root
01200    0      0 allow tcp from any to any dst-port 53 out via rl0 setup keep-state
01300    0      0 allow udp from any to any dst-port 53 out via rl0 setup
01400    0      0 allow tcp from any to any dst-port 22 out via rl0 setup keep-state
01500    0      0 allow tcp from any to any dst-port 123 out via rl0 setup keep-state
01600    0      0 allow ip from any to any dst-port 137,138,139 out via rl0
01700    0      0 allow icmp from any to any out via rl0 keep-state
01800    0      0 deny ip from any to any out via rl0
01900    0      0 allow tcp from any to any dst-port 22 in via rl0 setup
02000    0      0 allow tcp from any to any dst-port 10000 in via rl0 setup
02100    0      0 allow icmp from any to any in via rl0 icmptypes 0,8,11
02200   30   3023 deny ip from any to any in via rl0
65002    0      0 deny ip from any to any
65535    4    184 deny ip from any to any
естественно инета нет
настораживает отсутствие совпадений в 00600 и 01300 правилах (сквид есть и работает)

в чем я ошибаюсь ?

Re: IPFW

Добавлено: 2011-03-10 2:15:56
serzhinio
Подскажите как разрулить следующую ситуацию
В наследство остался сервер на фрибсд на котором установлен фринибс с фрирадиусом.
В следствии сбоя пришлось систему переустановить. С фринибсом разобрался - работает, однако не понятно каким образом можно перенаправить его внутренние адреса в интернет

При следующей настройке фаервола интернет раздается - однако в локальной сети скорость ощутимо падает - работать невозможно

ipfw='/sbin/ipfw -q'

${ipfw} -f flush
${ipfw} add divert natd all from any to any via fxp0 (внешний интерфейс)
${ipfw} add allow all from any to any

Сервер работает на freebsd 6.4 на котором работает сквид - раздающий инет в локальную сеть 10.77.0.1-прокси
(В сквиде прописаны delay_pools - максимальная скорость только на 5 пк)

rc.conf

fsck_y_enable="YES"
background_fsck="NO"
#amd_flags="-a /.amd_mnt -l syslog /host /etc/amd.map /net /etc/amd.map"
sendmail_enable="NONE"
check_quotas="NO"
defaultrouter="xx.xxx.172.149"
gateway_enable="YES"
hostname="xxxx-xxx.org"
ifconfig_fxp0="inet xx.xxx.172.150 netmask 255.255.255.252"
ifconfig_rl0="inet 10.77.0.1 netmask 255.255.255.0"
keymap="ua.koi8-u"
named_enable="YES"
nisdomainname="NO"
sshd_enable="YES"
tcp_extensions="NO"
mysql_enable="YES"
apache_enable="YES"
squid_enable="YES"
postfix_enable="YES"
inetd_enable="YES"
#ppp_nat="YES"
# for apache 2
#accf_http_load="YES"
radiusd_enable="YES"
firewall_enable="YES"
firewall_script="/usr/local/etc/rc.d/rc.firewall"
natd_enable="YES"
natd_interface="fxp0"
#natd_flags="-f /etc/natd.conf"


ppp.conf
radius:
set radius /etc/radius.conf
dial-in:
nat enable yes
enable pap
disable chap
set rad_service_type 11
disable deflate pred1
deny deflate pred1
set ifaddr 192.168.0.100 192.168.0.101-192.168.0.110
# set ifaddr 10.77.0.1 10.77.0.151-10.77.0.255
accept dns
set rad_service_type 11
set rad_alive 120
load radius
disable ipv6cp


кажется что при текущей настройке фаервола - интернет со всей внутренней сети идет минуя сквид.
Есть ли вариант сделать нормальную раздачу и в сквид и в ppp.

Re: IPFW

Добавлено: 2011-09-19 16:55:39
Marcello
объясните пожалуйста некоторые моменты составления правил.

ситуация можно сказать самая простая. есть просто компьютер который через одну карточку с одним внешним айпи смотрит в мир.
необходимо просто настроить фаер по принципу "запрет по умолчанию".

во-первых как можно это правило

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

${FwCMD} add allow ip from ${IpOut} to any out xmit ${LanOut}
переписать с учетом динамик айпи? пробовал так

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

${FwCMD} add allow ip from me to any out xmit ${LanOut}
но там что-то непонятное, у меня и исходящий трафик сразу открывается, причем на портах которые я явно не открывал. Что вообще толком значит me?

и непонятно насчет правила:

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

${FwCMD} add allow udp from any 53 to any via ${LanOut}
если трактовать буквально, то разрешается весь трафик от любого порта 53 к любому порту на внешнем интерфейсе, то есть кто угодно с 53 порта по udp сможет доставлять пакеты любому порту моей локальной тачки?

в свою очередь если указать, например

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

${FwCMD} add allow udp from any to any 53 via ${LanOut}
то сразу разрешается трафик udp в обоих направлениях по порту 53, и корректнее было бы поставить так?
dns вообще работает udp запросом на 53 порт и получением на этот же 53 порт данных?

и еще не понятно что вообще значит

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

${FwCMD} add check-state
в мане что-то на английском закрутили непонятное, там что-то "кип алайв" еще должно быть я так понимаю, но в моем случае можно забить на это правило и не добавлять его?

Re: IPFW

Добавлено: 2011-09-19 17:05:53
Marcello
хм, вот я чтоб открыть 53 в обоих направлениях следующие правила добавил, и тогда заработало преобразование имен

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

${FwCMD} add allow udp from any to any 53 via ${LanOut}
${FwCMD} add allow udp from any 53 to any via ${LanOut}
это правильное решение в моем случае, или желательно по-другому делать?

вот так может лучше?

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

${FwCMD} add allow udp from any 53 to any 53 via ${LanOut}
блин, а так не работает (

Re: IPFW

Добавлено: 2011-09-19 17:13:10
Marcello
и так

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

${FwCMD} add allow udp from any to any 53 via ${LanOut}
${FwCMD} add allow udp from any 53 to any 53 via ${LanOut}
тоже чего-то не хочет.

Re: IPFW

Добавлено: 2011-09-19 18:29:16
Marcello
в общем если кому-то интересно я уже в общем то разобрался :)

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

...
${FwCMD} add check-state
...
${FwCMD} add allow tcp from any to any 80 out via ${LanOut} setup keep-state
${FwCMD} add allow tcp from any to any 443 out via ${LanOut} setup keep-state

${FwCMD} add allow tcp from any to x.x.x.x 53 out via ${LanOut} setup keep-state
${FwCMD} add allow udp from any to x.x.x.x 53 out via ${LanOut} keep-state
${FwCMD} add allow tcp from any to y.y.y.y 53 out via ${LanOut} setup keep-state
${FwCMD} add allow udp from any to y.y.y.y 53 out via ${LanOut} keep-state
...
где x.x.x.x и y.y.y.y - dns-сервера, которым мы доверяем.

Re: IPFW

Добавлено: 2011-09-19 18:37:57
Marcello
только вот до конца не мог понять, что толком дает setup? и если без него указать?

вот есть например правила

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

${ipfw} add allow tcp from any to any out via ${ifout}  setup keep-state

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

${ipfw} add allow tcp from any to any keep-state via ${ifout} 
чем они отличаются?

Re: IPFW

Добавлено: 2011-09-20 10:49:35
Marcello
блин, я всетаки не могу понять, почему не работают такие правила?

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

allow udp from any to any dst-port 53
allow tcp from any to any dst-port 53
allow udp from any 53 to any dst-port 53
allow tcp from any 53 to any dst-port 53

Re: IPFW

Добавлено: 2011-09-27 5:22:52
ReZet
У меня не получается файл конфигурации подключить к IPFW пишу FwCMD="/sbin/ipfw"
дальше идут переменные. Полсе чего пишу команду ipfw /etc/rc.firewoll
в ответ получаю bad command 'FwCMD="/sbin/ipfw"'
Ось FreeBSD 8

Re: IPFW

Добавлено: 2011-09-29 17:00:54
Marcello
если надо динамически настройки подключить, переходи в /etc/

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

./set.sh
а о создании скрипта настроек читай здесь http://www.lissyara.su/articles/freebsd/tuning/ipfw/

Re: IPFW

Добавлено: 2011-10-20 5:19:40
slb51
Уважаемые господа, возникла проблемка, с которой не удаётся разобраться. Имеется IPFW на FreeBSD 8.2, локальная сеть и Internet по выделенке. В локалке все машины под Windows XP. До поры всё было хорошо, но вдруг браузеры (любые) перестали загружать сайты. При этом ping по тем же адресам проходит отлично. Если пускать Инет через NAT (nat на другой машине), этой проблемы не возникает, а если через Виндовый ISA 2006, наблюдается та же картинка, что и на IPFW. Ну, не "вдруг", конечно, это случилось, но я не уловил момента, после чего вылез косяк. Подскажите, пожалуйста, в каком направлении искать решение вопроса.

Re: IPFW

Добавлено: 2011-10-20 9:17:19
bagas
Вы пишите , пускаете нет через нат, то все отлично а если через isa то тоже блочитсья?
Тогда как в данный момент тырнет раздается?
Возможно порт 80 блочиться?

Re: IPFW

Добавлено: 2011-10-20 9:39:39
slb51
В данный момент через нат.

Re: IPFW

Добавлено: 2011-10-21 13:39:47
slb51
Возможно порт 80 блочиться?
А если так, то где копать? И почему сразу и на IPFW и на ISA?

Re: IPFW

Добавлено: 2011-10-21 13:55:04
slb51
Точно 80 порт блочится! Попробовал соединения по ftp, катит на ура. Так где копать на фойере, ткните мордой кто-нибудь.

Re: IPFW

Добавлено: 2011-10-21 16:59:39
slb51
Чё-то я сам с собой тут беседую. Всем спасибо, ничего не надо, уже нашёл. Но за подсказку насчёт порта 80 спасибо.