Пытаюсь сделать прозрачный прокси сервер Squid2.5, Freebsd4.9.
Пересобрал ядро:
оptions IPFIREWALL
options IPFIREWALL_VERBOSE
options IPFIREWALL_VERBOSE_LIMIT=10
options IPFIREWALL_FORWARD
options IPDIVERT
В squid.conf:
http_port X.X.X.X:3128
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header onВ rc.firewall:
lanout="lnc0"
lanin="lnc1"
fw="Х.Х.Х.Х" - IP сетевой, которая смотрит в инет
net="192.168.161.0/24"
outnet="Х.Х.Х.Х/16"${fwcmd} -f flush
setup_loopback
#Transparant proxy
${fwcmd} add 50 fwd 192.168.161.56,3128 tcp from any to any 80case ${natd_enable} in
[Yy][Ee][Ss])
if [ -n "${natd_interface}" ]; then
${fwcmd} add divert natd all from any to any via ${natd_interface}
fi
;;
esac
и т.д.При попытке попасть на какой нить сайт - Access Denied. Когда закомментирую "${fwcmd} add 50 fwd 192.168.161.56,3128 tcp from any to any 80", то все работает, токо не через squid, если в браузере указываю прокси - тоже работает, но уже через squid.
Пробовал и {fwcmd} add 50 fwd 127.0.0.1,3128 tcp from any to any 80, и еще кучу извращений - никак. Уже и сквид пересобрал с опцией --enable-ipfw-transparent. Глухо, как в танке. Подскажите в чем может быть причина.
Ура, заработал, чтоб его.
Прописал ${fwcmd} add 50 fwd 192.168.161.56,3128 tcp from 192.168.161.0/24 to any 80 via lnc1 - и все запахало. Странно, почему до этого не работало, вроде так делал уже.
Что скажете, это типа правильно, или нет?