URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID12
Нить номер: 154
[ Назад ]

Исходное сообщение
"Доступ в инет только через Squid WWW-трафика с авторизацией пользователя"

Отправлено Boris Korenev , 03-Ноя-02 17:24 
Доступ в инет только через Squid WWW-трафика с авторизацией пользователя

Подскажите, пожалуйста, как сделать так, чтобы в инет можно было заходить
броузером, настроив у него прокси-сервер и порт squid-а 3128?
А если не стоят эти настройки в броузере, то в инет не должно быть доступа?
Короче говоря, как сделать так, что весь WWW и FTP трафик шел через порт
3128 squid-а. У меня squid 2.4 стоит на одном единственном маршрутизаторе
в локальной сети под FreeBSD 4.4 через который пользователи и имеют
доступ в интернет? Сразу скажу, что прозрачное проксирование мне не
подходит, потому,что у меня squid настроен на авторизацию пользователей, а
прозрачное проксирование и авторизация в месте не работают, это в
squid.conf написано. У меня на сервере FreeBSD 4.4 настроено так.

Конфигурация сети:

rl0            - внешний интерфейс
213.165.192.208/29    - внешняя сеть
213.165.192.211        - IP-адрес внешнего интерфейса

xl0            - внутренний интерфейс          
192.168.1.0/24          - внутренняя сеть                
192.168.1.202           - IP-адрес внутреннего интерфейса


Правило для Firewall:

---------------------------------
#!/bin/sh
#Firewall rules
#

fwcmd="/sbin/ipfw"

oif="rl0"            #set to outside interface name
onwr="213.165.192.208/29"    #set to outside network range
oip="213.165.192.211"        #set to outside ip address

iif="xl0"            #set to internal interface name
inwr="192.168.1.0/24"        #set to internal network range
iip="192.168.1.202"        #set to internal ip address

${fwcmd} -f flush

${fwcmd} add divert natd all from any to any via ${oif}

${fwcmd} add permit tcp from $iip to any 80
${fwcmd} add permit tcp from any 80 to $iip established

${fwcmd} add permit tcp from $inwr to $iip 3128
${fwcmd} add permit tcp from $iip 3128 to $inwr established

${fwcmd} add deny all from any to any
---------------------------------

После загрузки сервера выдается сообщение:

ns natd[117]: failed to write packet back (Permission denied)

Что я не так делаю?
Заранее спасибо. Борис.


Содержание

Сообщения в этом обсуждении
"RE: Доступ в инет только через Squid WWW-трафика с авторизацией пользователя"
Отправлено Squid , 05-Ноя-02 13:26 

Ну ты даешь :)))
Какой ещё нат, у тя ж сквид стоит, он те сам все "пронатит"
Вешаешь сквид на 213.165.192.211, закрываешь фаэрволлом все, кроме 3128 порта :))
И все работает, пока проксю в броузере не пропишут - будет посылать.
И всех делов.

./squid


>Конфигурация сети:
>
>rl0   - внешний интерфейс
>213.165.192.208/29 - внешняя сеть
>213.165.192.211  - IP-адрес внешнего интерфейса
>${fwcmd} add divert natd all from any to any via ${oif}
>После загрузки сервера выдается сообщение:
>
>ns natd[117]: failed to write packet back (Permission denied)
>
>Что я не так делаю?
>Заранее спасибо. Борис.



"RE: Доступ в инет только через Squid WWW-трафика с авторизацией пользователя"
Отправлено Boris Korenev , 11-Ноя-02 14:48 
> Вешаешь сквид на 213.165.192.211,

А как это сделать?

> закрываешь фаэрволлом все, кроме 3128 порта :))

И это тоже?

Заранее спасибо. Борис.



"RE: Доступ в инет только через Squid WWW-трафика с авторизацией пользователя"
Отправлено Squid , 11-Ноя-02 15:19 
>А как это сделать?
tcp_outgoing_address 213.165.192.211 # это в squid.conf

>И это тоже?
Да собственно если ты нат снимешь, то и фаэрволла не надо,
все равно у тебя на мир запросы с 192.168.0./24 не пройдут :)

P.S. Для общей крутости можешь прикрутить transparent_proxy
(заворачиваешь фаэрволлом весь 80-ый порт из внутренней сетки на 3128 порт сквида.)
Тогда, даже те кто проксю явно не пропишут - будут через сквид нормально ходить. В кофнфе сквида только прийдется пару параметров поменять, там коментарии есть - зарбедерьшся.

Успехов!

./squid


"RE: Доступ в инет только через Squid WWW-трафика с авторизацией пользователя"
Отправлено Boris Korenev , 11-Ноя-02 20:25 
>Да собственно если ты нат снимешь, то и фаэрволла не надо,
>все равно у тебя на мир запросы с 192.168.0./24 не пройдут :)

Все заработала как я хотел , спасибо большое :-)
А как-жешь почта, как с ней быть и без защиты тоже как то
не хочется. Что посоветуешь?
Да и с натом быстрей инет ходил.

>P.S. Для общей крутости можешь прикрутить transparent_proxy
>(заворачиваешь фаэрволлом весь 80-ый порт из внутренней сетки на 3128 порт сквида.)
>Тогда, даже те кто проксю явно не пропишут - будут через сквид
>нормально ходить. В кофнфе сквида только прийдется пару параметров поменять, там
>коментарии есть - зарбедерьшся.

transparent_proxy - вещь классная, я уже настраивал у меня
получилось, но дело в том что оно не работает с авторизацией
пользователей это в squid.conf написано. Начальник на работе
хочет чтоб все заходили в Инет с авторизацией, чтоб трафик отслеживать.

Заранее Спасибо Большое. Борис.


"RE: Доступ в инет только через Squid WWW-трафика с авторизацией пользователя"
Отправлено Squid , 11-Ноя-02 21:28 
>Все заработала как я хотел , спасибо большое :-)
>А как-жешь почта, как с ней быть и без защиты тоже как
>то
>не хочется. Что посоветуешь?
>Да и с натом быстрей инет ходил.

Ну, дальше натом, я бы порекомендовал натить только "нужные порты", почту, может ещё что-то. Тут уже по желанию.


>transparent_proxy - вещь классная, я уже настраивал у меня
>получилось, но дело в том что оно не работает с авторизацией
>пользователей это в squid.conf написано. Начальник на работе
>хочет чтоб все заходили в Инет с авторизацией, чтоб трафик отслеживать.

Да, это правда. Значит прийдется всех "заставить" проксю в броузере прописать.

P.S. "Медленнее" без ната - то это уже сквид "криво" настроен.