Добрый день, встала задача: запоролить доступ в интернет пользователям.
Ну задача как задача, вроде все просто. настроил сквид, принался за фаервол.
но не тут-то было!
FWD не работает.
Вот строка в конфиге фаера:
$cmd 050 fwd 127.0.0.1,3128 tcp from $lannet to any 8080,80 out via $eifА вот что он мне выдает при загрузке правил:
ipfw: getsockopt(IP_FW_ADD):перечитал кучу всего, ядро пересобирал.
Если кто знает в чем проблема, помогите. FreeBSD 8.2-RELEASE
>[оверквотинг удален]
> Ну задача как задача, вроде все просто. настроил сквид, принался за фаервол.
> но не тут-то было!
> FWD не работает.
> Вот строка в конфиге фаера:
> $cmd 050 fwd 127.0.0.1,3128 tcp from $lannet to any 8080,80 out via
> $eif
> А вот что он мне выдает при загрузке правил:
> ipfw: getsockopt(IP_FW_ADD):
> перечитал кучу всего, ядро пересобирал.
> Если кто знает в чем проблема, помогите. FreeBSD 8.2-RELEASEну пусть cmd = /sbin/ipfw
ок... получается
/sbin/ipfw 0050 fwd 127.0.0.1 ..... ?а add не нужно между ipfw и 0050 ?
>[оверквотинг удален]
>> $cmd 050 fwd 127.0.0.1,3128 tcp from $lannet to any 8080,80 out via
>> $eif
>> А вот что он мне выдает при загрузке правил:
>> ipfw: getsockopt(IP_FW_ADD):
>> перечитал кучу всего, ядро пересобирал.
>> Если кто знает в чем проблема, помогите. FreeBSD 8.2-RELEASE
> ну пусть cmd = /sbin/ipfw
> ок... получается
> /sbin/ipfw 0050 fwd 127.0.0.1 ..... ?
> а add не нужно между ipfw и 0050 ?Сквид не поддерживает авторизацию в прозрачном режиме.
>[оверквотинг удален]
>>> $eif
>>> А вот что он мне выдает при загрузке правил:
>>> ipfw: getsockopt(IP_FW_ADD):
>>> перечитал кучу всего, ядро пересобирал.
>>> Если кто знает в чем проблема, помогите. FreeBSD 8.2-RELEASE
>> ну пусть cmd = /sbin/ipfw
>> ок... получается
>> /sbin/ipfw 0050 fwd 127.0.0.1 ..... ?
>> а add не нужно между ipfw и 0050 ?
> Сквид не поддерживает авторизацию в прозрачном режиме.это я понял, но даже когда в конфиге сквида не указываешь что порт прозрачный тоже самое происходит
а в конфиге squid'a вы хоть указали авторизацию?
> а в конфиге squid'a вы хоть указали авторизацию?да, если прописываешь в настройках браузера адрес прокси то все нормально, а вот форвардить на сквид из ipfw не выходит
cd /usr/src; echo "options IPFIREWALL_FORWARD" >> /usr/src/sys/`uname -m`/conf/`uname -i`; rm -Rf /usr/obj/*; make -s kernel && shutdown -r nowв общем виде - без пересборки ядра fwd не работает. в хендбуке описано.
> cd /usr/src; echo "options IPFIREWALL_FORWARD" >> /usr/src/sys/`uname -m`/conf/`uname
> -i`; rm -Rf /usr/obj/*; make -s kernel && shutdown -r now
> в общем виде - без пересборки ядра fwd не работает. в хендбуке
> описано.Вся суть в том чтоб добавить в ядро "options IPFIREWALL_FORWARD".
Но тут загвоздка в том что я уже пересобирал ядро с этой опцией
Ну собрать-тособрали. а поставили и бутнулись?
Вот вывод при собранном правильно ядре:
#ipfw add 64000 fwd 127.0.0.1:3128 tcp from 8.8.8.8 80 to 8.8.8.8 80 via em1
64000 fwd 127.0.0.1,3128 tcp from 8.8.8.8 80 to 8.8.8.8 dst-port 80 via em1
#ipfw sh 64000
ipfw: DEPRECATED: 'sh' matched 'show' as a sub-string
64000 0 0 fwd 127.0.0.1,3128 tcp from 8.8.8.8 80 to 8.8.8.8 dst-port 80 via em1и на GENERIC:
#ipfw add 64000 fwd 127.0.0.1:3128 tcp from 8.8.8.8 80 to 8.8.8.8 80 via em1
ipfw: getsockopt(IP_FW_ADD): Invalid argument
#ipfw sh 64000
ipfw: DEPRECATED: 'sh' matched 'show' as a sub-string
ipfw: rule 64000 does not existНу и, для полноты картины, сначала добавляйте правило без переменных, явно указывая, что нужно. Когдазаработает - можно и скриптовать более ровно.
Ну и, для полноты картины, можете развлечься с pf.#pfctl -sn
No ALTQ support in kernel
ALTQ related functions disabled
rdr on em0 inet proto tcp from 192.168.1.0/24 to any port = http -> 192.168.1.1 port 3128
> Ну и, для полноты картины, можете развлечься с pf.
> #pfctl -sn
> No ALTQ support in kernel
> ALTQ related functions disabled
> rdr on em0 inet proto tcp from 192.168.1.0/24 to any port =
> http -> 192.168.1.1 port 3128BTW, лучше не использовать форвард при необходимости запаролить прокси, а пользоваться средствами автонастройки через DHCP и DNS:
http://ru.wikipedia.org/wiki/Web_Proxy_Autodiscovery_Protocol
http://support.microsoft.com/kb/309814
> BTW, лучше не использовать форвард при необходимости запаролить прокси, а пользоваться
> средствами автонастройки через DHCP и DNS:
> http://ru.wikipedia.org/wiki/Web_Proxy_Autodiscovery_Protocol
> http://support.microsoft.com/kb/309814наверное это буду использовать, а то очередная персборка и переустановка ядра никак не помогает а pf использовать не хочется