![]() |
Firewall IPFW криво работает
Здравствуйте, помогите решить следующую проблему:
На FreeBSD 5.3 крутятся squid; mysql; apache; sams. Решил настроить IPFW (в rc.conf прописал firewall_enable="yes" firewall_type="/etc/firewall.conf" и в /etc/firewall.conf следующие правила: add allow all from 10.15.1.1 to me 80 add allow all from 10.15.1.2 to me 80 add allow all from 10.15.1.3 to me 80 add deny all from any to any цель: открыть доступ к 80 порту только этим хостам ) и столкнулся со следующей проблемой: доступ есть только либо для всех либо никому как я ни игрался с правилами не могу понять почему так??? |
kryo
А причем тут тип файервола и указание на его конфиг? Код:
firewall_enable="yes" |
ИМХО удобнее писать в firewall.sh
тогда в rc.conf: firewall_enable="yes" firewall_type="UNKNOWN" firewall_script="/etc/firewall.sh" в firewall.sh: #!/bin/sh ipfw -f flush #сбрасываем все правила, что установлены ранее чтоб не накладывались ipfw add 100 allow tcp from 10.15.1.1 to me 80 in ipfw add 200 allow udp from 10.15.1.1 to me 80 in и так далее... кажись при "IP" или "all" нелья указывать какой-то определенный порт. IPFW с этим не дружит. если два и более интерфейсов - указывать интерфейс в конце (in via lx0, например) Твои правила вообще работать не могут по определению - ты к себе разрешил, а от себя? :) Твоя машина не дает себе же отвечать на полученные запросы. Вернее она отвечает, а фойрвол находит для этого случая только одно правило - add deny all from any to any и поступает по нему. так что лучше последним поставить deny log all from any to any чтоб видеть в логе что режится. так проще отлаживать. нумерацию правил тоже лучше указать явно. |
Почитай здесь - http://www.nsd.ru/hack.php?group=unix&state=8
------- Там очень хороший пример, как обезопасить машину с помощью ipfw. :) |
Спасибо, разобрался, SantaXP сделал как в примере. Стал делить доступ по IPшникам и портам после компиляции в ядро.
|
kryo
Дык, всегда пожалуйста! :) |
Слушайте, у меня очень тупой вопрос.
---- Я прописал firewall_enable="YES", но не вижу его в процессах. :( То есть он работает на уровне ядра и поэтому его не видно, или же, я его просто не запускаю??? |
2SantaXP он работает в ядре и ты его не увидишь. Единственное, что можно увидеть - демоны пользовательского уровня, использующие DIVERT (например, natd).
|
FrIcE
Но славо богу! То есть, если прописать его rc.conf, то он будет включаться по умолчанию. Хм... Хитро! :) ------- А зачем тогда команды ipfw set enable/disable??? |
Почему-то при установке на сервере (делал все то же самое) при выводе листинга ipfw -a list в конце всегда стоит правило
deny all from any to any хотя в rc.conf задано firewall_mode="open" До конца еще не разобрался, подскажите пожалуйста правило для /etc/firewall.sh чтобы все юзеры сети (сеть 10.0.0.0) могли подключаться к squid-у на 3128 порт а сам серв мог (для него есть NAT) выходить в инет через шлюз 10.0.0.200 любым портом |
2SantaXP Эти команды позволяют включать/выключать IPFW в уже работающей системе (приспичит вдруг). А настройки из rc.conf срабатывают только при загрузке.
|
Время: 00:14. |
Время: 00:14.
© OSzone.net 2001-