Есть Free BSD 4.2 есть НАТ и Firewall, надумал поставить Squid, все поставил поднялось заработало, но вот в чем проблема, работает он только при настроенных правилах ipfw pass all from any to any, при включении firewal-а и собственно правил на нем, при запросе с одной из клиентских машин, картина такая - Conecting to host, awaiting for reply а далее слетает по таймауту, в логах ipfw вижу такие строчки типа,
ipfw: 65000 Deny TCP 194.186.36.154:80 10.5.1.11:1073 in via xl0
ipfw: 65000 Deny TCP 207.200.89.225:80 10.5.1.11:1072 in via xl0
ipfw: 65000 Deny TCP 207.200.89.225:80 10.5.1.11:1063 in via xl0
В чем может быть проблема в настройказ ipfw или nat-а? Редирект может быть какойнибудь необходим?подскажите плиз, заранее спасибо всем ответившим!
>Есть Free BSD 4.2 есть НАТ
>и Firewall, надумал поставить Squid,
>все поставил поднялось заработало, но
>вот в чем проблема, работает
>он только при настроенных правилах
>ipfw pass all from any
>to any, при включении firewal-а
>и собственно правил на нем,
>при запросе с одной из
>клиентских машин, картина такая -
> Conecting to host, awaiting
>for reply а далее слетает
>по таймауту, в логах ipfw
>вижу такие строчки типа,
>ipfw: 65000 Deny TCP 194.186.36.154:80 10.5.1.11:1073
>in via xl0
>ipfw: 65000 Deny TCP 207.200.89.225:80 10.5.1.11:1072
>in via xl0
>ipfw: 65000 Deny TCP 207.200.89.225:80 10.5.1.11:1063
>in via xl0
>В чем может быть проблема в
>настройказ ipfw или nat-а? Редирект
>может быть какойнибудь необходим?
>
>подскажите плиз, заранее спасибо всем ответившим!
>Выскажу смелую идею, что это самый что ни на есть фаервол и гадит своим последним (или не совсем последним правилом). В общем, нужно внимательно глянуть в список правил и четенько взять у него все анализы :))
Да нет проблем, самый что нинаесть простенький...fw=10.5.1.11
ip=191.168.10.1
net="192.168.10.0/28"
mask="255.255.255.0"# ------------------ divert ---------------------
# DIVERT
ipfw add divert natd ip from 192.168.10.0/24 to any out via xl0
ipfw add divert natd ip from any to 10.5.1.11 in via xl0# ----------------- COUNT --------------
# ipfw add count all from any to 10.5.1.11 in via xl0
# ipfw add count all from 192.168.10/24 to any out via xl0# ----------------- SHAPER---------------
ipfw pipe 1 config bw 64Kbit/s queue 5
ipfw add pipe 1 ip from any to 192.168.10.21 in via xl0
ipfw add pipe 1 ip from any to 192.168.10.23 in via xl0ipfw pipe 2 config bw 100Kbit/s queue 5
ipfw add pipe 2 ip from any to 192.168.10.5 in via xl0# ------------------- END Shaper -----------
# ------------------- FW rulez ---------
ipfw add pass all from any to any via lo0
ipfw add pass all from any to any via xl1
ipfw add deny ip from any to 127.0.0.0/8
ipfw add deny icmp from any to any frag
ipfw add pass ICMP from any to any# DNS Resolving
ipfw add pass udp from any to any 53
ipfw add pass udp from any 53 to any
ipfw add pass tcp from any to any 25
ipfw add pass tcp from any 25 to anyipfw add pass tcp from any to any 443 out via xl0
ipfw add pass tcp from any 443 to any in via xl0ipfw add pass tcp from 10.5.1.11 to any 80 out via xl0
ipfw add pass tcp from any 80 to 192.168.10.0/24 in via xl0ipfw add pass tcp from 10.5.1.11 to any 19020 out via xl0
ipfw add pass tcp from any 19020 to 192.168.10.0/24 in via xl0
ipfw add pass udp from 10.5.1.11 to any 119 out via xl0
ipfw add pass udp from any 119 to 192.168.10.0/24 in via xl0ipfw add pass tcp from any 110 to any
ipfw add pass tcp from any to any 110ipfw add pass tcp from 10.5.1.11 1024-65535 to any 21 out
ipfw add deny log tcp from any 21 to 10.5.1.11 1024-65535 in setup
ipfw add pass tcp from any 21 to 192.168.10.0/24 1024-65535 in
ipfw add pass tcp from 10.5.1.11 1024-65535 to any 20 out
ipfw add pass tcp from any 20 to 192.168.10.0/24 1024-65535 inipfw add pass tcp from 10.5.1.11 1024-65535 to 212.45.1.179 1024-65535 out
ipfw add pass tcp from 212.45.1.179 1024-65535 to 192.168.10.0/24 in via xl0ipfw add pass tcp from any 22 to any
ipfw add pass tcp from any to any 22
ipfw add pass tcp from any 2700 to 192.168.10.0/24 in via xl0
ipfw add pass tcp from 10.5.1.11 to any 2700 out via xl0ipfw add pass tcp from any 8025 to 192.168.10.0/24 in via xl0
ipfw add pass tcp from 10.5.1.11 to any 8025 out via xl0
ipfw add pass tcp from any 12801 to 192.168.10.0/24 in via xl0
ipfw add pass tcp from 10.5.1.11 to any 12801 out via xl0
Еще не понятно то, что ответы с 80-х портов серверов приходят на наружный интерфейс и с такими загадочными портами, может быть в качестве outgoing_address поставить не 192.168.10.1 а не 10.5.1.1 ??не дайте погибнуть в невежестве =)
Человеки ну черканите же пару строчек плиз, а ? =)
А что тут непонятного?
Сквид вякает с твоего внешнего адреса (10.5.чего-то-там) в открытый мир; ответы серверов (c их 80-го порта) возвращаютя ему на этот же адрес, а ты их рубишь файерволом (разрешающего привила для них у тебя нет). И вообще - половина из твоих правил, на мой взгляд, на фиг не нужна. запусти ipfw show и посмотри на каунтеры - какие правила и сколько раз хитнулись
Если ты внимательно посмотришь на свой же лог то заметишь, что правило 65000 это дело режет :). Поправить его наверно надо или тогда явно долго и нудно писать правила для разрешения трафа. Причем правила надо нумеровать иначе все время придется делать ipfw l дабы узнать какое за каким идет, а это весьма важно.
Это я все понимаю что они у меня рубятся, вот я и хочу понять какие правила я должен прописать в файерволе, т.е. с какими портами оперирует Squid
в своей работе, в конце концов хочется и файервол иметь на роутере и сквид настроить однако. Есть же стандартные решения работы связок nat+ squid +ipfw или у всех по отдельности все работает, не поверю.Митя.
>Это я все понимаю что они
>у меня рубятся, вот я
>и хочу понять какие правила
>я должен прописать в файерволе,
>т.е. с какими портами оперирует
>Squid
>в своей работе, в конце концов
>хочется и файервол иметь на
>роутере и сквид настроить однако.
>Есть же стандартные решения работы
>связок nat+ squid +ipfw или
>у всех по отдельности все
>работает, не поверю.
>
>Митя.Перед deny from any to any. Пропиши
ipfw pass log logamount 1000 all from any to any
Смотри log и открывай что нужно исходя из log-а и своих желаний.
Потом снимеш эту строку.
Стандартных решений нет.У каждого свой набор пакетов + каждый понимает безопастность по своему!