LinuxForum.Fans
Тема

Перенаправление запросов на родительский прокси Squid

Автор: Yuriy2005 9 сообщений 72299 просмотров
#172182

Здравствуйте, уважаемые господа!

Столкнулся с проблемой перенаправления запросов на родительский прокси для определенной группы AD. Вот часть моего squid.conf:

text

cache_peer 192.168.10.5 parent 3128 0 proxy-only
cache_peer_domain 192.168.10.5 parent.domain
cache_peer_access 192.168.10.5 allow all

При такой конфиге все работает, т.е. ВСЕ попадают на родительский проски и все идет замечательно, но мне требуется ограничить доступ и когда я делаю вот так

text

cache_peer 192.168.10.5 parent 3128 0 proxy-only
cache_peer_domain 192.168.10.5 parent.domain
cache_peer_access 192.168.10.5 allow AD_GROUP

то никто попасть не может. В access.log появляются вот такие вот строки:

text

7      0 192.168.3.13 TCP_DENIED/407 4037 CONNECT datt.fr.world.socgen:443 - NONE/- text/html
3      2 192.168.3.13 TCP_DENIED/407 4194 CONNECT datt.fr.world.socgen:443 - NONE/- text/html
7     82 192.168.3.13 TCP_MISS/404 0 CONNECT datt.fr.world.socgen:443 USER DIRECT/- -

но браузер говорит, что отобразить страницу невозможно.
Мне кажется, что я что-то где-то упустил. Перерыл все что могу, но все бесполезно. Без чужой помощи мне видать не разрешить эту задачу.

#172189

А членам группы AD_GROUP разрешён доступ на тот сйт по 443 порту?
и почему по 443 именно пытаются?
И ещё, я в строке

cache_peer 192.168.10.5 parent 3128 0 proxy-only

после знака "0" добавил бы

no-query no-digest no-netdb-exchange default
#172194

просто этот сайт по https работает.
Вот мой squid.conf:

text

auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp
auth_param ntlm children 50
auth_param ntlm keep_alive on

auth_param basic program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-basic auth_param basic children 50 auth_param basic realm Squid proxy-caching web server auth_param basic credentialsttl 2 hours auth_param basic casesensitive off

acl MY_DOMAIN proxy_auth REQUIRED

acl INTRA_URL url_regex '/etc/squid/urls_for_internet'

# Это наши доменные группы external_acl_type ad_group %LOGIN /usr/lib/squid/wbinfo_group.pl

acl INTERNET_USERS external ad_group internetusers

acl manager proto cache_object acl localhost src 127.0.0.1/32 acl to_localhost dst 127.0.0.0/8 acl SSL_ports port 443 acl Safe_ports port 80<><------># http acl Safe_ports port 21<><------># ftp acl Safe_ports port 443><------># https acl Safe_ports port 70<><------># gopher acl Safe_ports port 210><------># wais acl Safe_ports port 1025-65535<># unregistered ports acl Safe_ports port 280><------># http-mgmt acl Safe_ports port 488><------># gss-http acl Safe_ports port 591><------># filemaker acl Safe_ports port 777><------># multiling http

acl CONNECT method CONNECT acl POST method POST

http_access allow POST http_access allow manager localhost http_access deny manager

http_access deny !Safe_ports

http_access deny CONNECT !SSL_ports

#always_direct allow SSL_ports CONNECT

# Заставим всех пользоваться родительским прокси never_direct allow INTRA_URLS

http_access allow localhost http_access allow INTRA_URL INTERNET_USERS http_access deny all

http_port 192.168.3.4:3128

cache_peer 192.168.10.5 parent 3128 0 proxy-only cache_peer_domain 192.168.10.5 .parent.domain cache_peer_access 192.168.10.5 allow AD_GROUP

hierarchy_stoplist cgi-bin ?

acl QUERY urlpath_regex cgi-bin \? cache deny QUERY

access_log /var/log/squid/access.log squid

refresh_pattern ^ftp:<-><------>1440<-->20%<--->10080 refresh_pattern ^gopher:<------>1440<-->0%<---->1440 refresh_pattern .<-----><------>0<----->20%<--->4320

acl apache rep_header Server ^Apache #broken_vary_encoding allow apache

maximum_object_size_in_memory 102 KB dns_nameservers 192.168.3.5 visible_hostname proxy-router

а про доступ к SSL что-то я не подумал...

#172195

Yuriy2005,

Yuriy2005 написал:
cache_peer 192.168.10.5 parent 3128 0 proxy-only
Yuriy2005 написал:
cache_peer 192.168.10.5 parent 3128 0 proxy-only
cache_peer_domain 192.168.10.5 parent.domain
cache_peer_access 192.168.10.5 allow AD_GROUP

http://www.visolve.com/squid/squid30/neighboursel.php#cache_peer


Example(s)
The following example could be used, if we want all requests from a specific IP address range to go to a specific cache server (for accounting purposes, for example). Here, all the requests from the 10.0.1.* range are passed to proxy.visolve.com, but all other requests are handled directly.


Using acls to select peers,
acl myNet src 10.0.0.0/255.255.255.0
acl cusNet src 10.0.1.0/255.255.255.0
acl all src 0.0.0.0/0.0.0.0
cache_peer proxy.visolve.com parent 3128 3130
cache_peer_access proxy.visolve.com allow custNet
cache_peer_access proxy.visolve.com deny all


подробности здесь: http://www.visolve.com/squid/squid30/contents.php

#172200

2 i2ks
я отбираю юзеров не по IP а по логину в AD. Мне понятен ваш немек, но проблема немного в другом. У меня нет проблем с перенаправлением трафика на родительский прокси, а проблема с его перенаправлением для определенной группы юзеров AD.
Я прошу прощения, может сумбурно объясняю.
Так вот, если я разрешаю перенаправление для всех, то все замечательно ходят на родительский прокси, но как только я пытаюсь ограничить перенаправление до определенной группы, то тут все встает. Никто не может попасть на сайт www.parent.domain. Браузер говорит, что "не возможно отобразить страницу", а в access.log появляется вышеупомянутые строки.
Теперь поясню еще один нюанс, родительский прокси - это прокси в коорпоративной сети, таких прокси у меня два и зачастую юзерам требуется использовать сайты из обоих прокси-серверов. Поэтому я устал постоянно перебивать настройки прокси в браузере и решил поднять squid, т.к. знаю, что от может заниматься такого рода перенаправлениями.

#172205
Yuriy2005 написал:
192.168.3.13 TCP_DENIED

это говорит о том что обращение к ресурсу идет на прямую, мимо патерна.
По поводу acl надо подумать :rolleyes:

#172206

2 i2ks
А! вы хотите сказать, что первые два TCP_DENIED проходят мимо моих правил?
Хм... тогда надо искать как я их пропустил...
Благодарю за подсказку. :)
Буду смотреть.

#172207

Yuriy2005, могу и ошибаться, но 443 порт он вроде бы поверх прокси работает, хотя проверить можно просто зайти на какой нибудь другой сайт.
Еще в cache.log должна отображаться инфа =)

#172222

443 (https) не будет работать в прозрачном режиме ток если у людей ручками прописать.

Войдите или зарегистрируйтесь, чтобы ответить.