Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Общий по FreeBSD (http://forum.oszone.net/forumdisplay.php?f=10)
-   -   SQUID (http://forum.oszone.net/showthread.php?t=131626)

youko 11-02-2009 07:46 1035101

SQUID
 
После долгих мучений настроил SQUID в качестве непрозрачного прокси с такими вот параметрами:

http_port 192.168.7.100:3128
visible_hostname proxy
icp_port 0
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY

acl all src 192.168.7.0/24
http_access allow all
#cache_effective_user squid
#cache_effective_group squid
httpd_accel_with_proxy off
httpd_accel_uses_host_header off
httpd_accel_single_host off
dns_nameservers 195.38.33.2 195.38.32.2

В разных статьях пишут одно и тоже, что для прозрачного прокси нужно добавить только "http_port 192.168.7.100:3128 transparent"
Однако при таком вот приемчике, сквид перестает пропускать трафик через себя....

Вопрос: Помогите подправить данный конфиг для прозрачного прокси и как должны быть настроены ПК на стороне клиента (тоесть, надо ли прописывать шлюз, ДНС, писать прокси в броузере и т.д.)....

gf100 11-02-2009 10:06 1035181

Версия FreeBSD, SQUID и как он устанавливался? Может, собран без соответствующих ключей.

Если не секрет, зачем нужен именно прозрачный?

Telepuzik 11-02-2009 10:18 1035192

Цитата:

Цитата youko
В разных статьях пишут одно и тоже, что для прозрачного прокси нужно добавить только "http_port 192.168.7.100:3128 transparent"
Однако при таком вот приемчике, сквид перестает пропускать трафик через себя.... »

Необходимо еще трафик завернуть на squid, если используется ipfw то должно быть правило вида:
${IPFW} add 100 fwd 192.168.7.100,3128 all from 192.168.7.0/24 to any http via xl0

Цитата:

Цитата youko
Вопрос: Помогите подправить данный конфиг для прозрачного прокси и как должны быть настроены ПК на стороне клиента (тоесть, надо ли прописывать шлюз, ДНС, писать прокси в броузере и т.д.).... »

Если будет прозрачный прокси то необходимо на клиентах прописать днс и шлюз, прописывать прокси в браузере не надо.

leonty 11-02-2009 10:20 1035194

Цитата:

Цитата youko
Однако при таком вот приемчике, сквид перестает пропускать трафик через себя.... »

а в каком случае он пропускает через себя?
да и чтото мне подсказывает, что надо фаерволом заварачивать трафик идущий от клиентов, на порт прокси.

блин, долго же я с мыслями собирался. уже ответили (:

youko 11-02-2009 15:07 1035446

- Версия FreeBSD, SQUID и как он устанавливался? Может, собран без соответствующих ключей.
Ответ: FreeBSD 6.2, SQUID 3.0.STABLE11- собран со следующими параметрами:

$ configure options: '--with-default-user=squid' '--bindir=/usr/local/sbin' '--sbindir=/usr/local/sbin' '--datadir=/usr/local/etc/squid' '--libexecdir=/usr/local/libexec/squid' '--localstatedir=/usr/local/squid' '--sysconfdir=/usr/local/etc/squid' '--enable-removal-policies=lru heap' '--disable-linux-netfilter' '--disable-linux-tproxy' '--disable-epoll' '--enable-auth=basic digest negotiate ntlm' '--enable-basic-auth-helpers=DB NCSA PAM MSNT SMB squid_radius_auth YP' '--enable-digest-auth-helpers=password' '--enable-external-acl-helpers=ip_user session unix_group wbinfo_group' '--enable-ntlm-auth-helpers=SMB' '--enable-negotiate-auth-helpers=squid_kerb_auth' '--enable-storeio=ufs diskd null' '--enable-arp-acl' '--enable-pf-transparent' '--enable-kqueue' '--enable-err-languages=Armenian Azerbaijani Bulgarian Catalan Czech Danish Dutch English Estonian Finnish French German Greek Hebrew Hungarian Italian Japanese Korean Lithuanian Polish Portuguese Romanian Russian-1251 Russian-koi8-r Serbian Simplify_Chinese Slovak Spanish Swedish Traditional_Chinese Turkish Ukrainian-1251 Ukrainian-koi8-u Ukrainian-utf8' '--enable-default-err-language=templates' '--prefix=/usr/local' '--mandir=/usr/local/man' '--infodir=/usr/local/info/' '--build=i386-portbld-freebsd6.2' 'build_alias=i386-portbld-freebsd6.2' 'CC=cc' 'CFLAGS=-O2 -fno-strict-aliasing -pipe' 'LDFLAGS=' 'CPPFLAGS=' 'CXX=c++' 'CXXFLAGS=-O2 -fno-strict-aliasing -pipe'

- Если не секрет, зачем нужен именно прозрачный?
Ответ: Для того, что нектороые клиент-банки не поддерживают проксирование... Да и неудобно каждый раз на ПК при уст нового прописывать внутри браузеров.

- Необходимо еще трафик завернуть на squid, если используется ipfw то должно быть правило вида:
Ответ: Траффик заварачивается PF'ом мледующими правилами:

ext_if="rl0" # Внешка
int_if="vr0" # Внутренняя
lan_if= "192.168.7.0/24"

rdr on $int_if proto tcp from $lan_if to any port www -> 127.0.0.1 port 3128
nat on $ext_if inet from $lan_if to any -> ($ext_if)

Telepuzik 11-02-2009 17:02 1035538

В squid.conf пропишите:
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on

Вместо:
Цитата:

Цитата youko
rdr on $int_if proto tcp from $lan_if to any port www -> 127.0.0.1 port 3128 »

попробуйте прописать:
rdr pass on vr0 proto tcp from $lan_if to any port www -> 127.0.0.1 port 3128

youko 11-02-2009 20:27 1035764

C 3й версии SQUIDа эту конструкцию:

Цитата:

Цитата Telepuzik
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on »

Заменили на transparent. Он на каждую строчку матом ругается, если вставить...

Цитата:

Цитата Telepuzik
rdr pass on vr0 proto tcp from $lan_if to any port www -> 127.0.0.1 port 3128 »

В Редиректе слово Pass ненужно...

gf100 11-02-2009 21:30 1035820

Цитата:

Цитата youko
нектороые клиент-банки не поддерживают проксирование... »

Проксировать можно только http(s) протоколы... Для протоколов "прямого контакта" делается "проброс" портов.
Нестандартные https порты дописываются в конфиг squid'а.
Цитата:

Цитата youko
неудобно каждый раз на ПК при уст нового прописывать внутри браузеров. »

Автоматический подхват прокси в браузере можно сделать с помощью wpad.
Цитата:

Цитата youko
'--enable-auth=basic digest negotiate ntlm' »

Squid случайно не с авторизацией в домене windows? Транспарент с такой авторизацией не дружит. То есть вообще.

youko 11-02-2009 21:41 1035835

Цитата:

Цитата gf100
Squid случайно не с авторизацией в домене windows? Транспарент с такой авторизацией не дружит. То есть вообще. »

хммм... попробую тогда переустановить SQUID.... убиру этот пункт наф...

youko 11-02-2009 23:18 1035924

переустановил и настроил все по статье http://alterworld.ru/show.php?id=22

Теперь такой вопрос: как проверить, идет ли траффик через SQUID или просто НАТится на локальные машины???

Все вопрос отпал сам собой. Набрал cat /var/log/squid/access.log
И он вывел мне все сайты на которые я заходил перед этим.... и постоянно обновляется... Правильно я проверил???

gf100 12-02-2009 09:10 1036153

Цитата:

Цитата youko
Правильно я проверил??? »

Да.
Так и смотрится, по логам...

youko 12-02-2009 09:33 1036174

ок, Всем Спасибо. Тема закрыта!

lcnet 20-05-2010 17:43 1417534

народ помогите плиз
у меня открытый фаер с заворачиванием на сквид

конфиг:
00050 divert 8668 ip4 from any to any via em1
00055 fwd 172.21.0.1,3128 tcp from 172.21.0.0/16 to any dst-port 80,8080,443 via em0
00100 allow ip from any to any via lo0
00200 deny ip from any to 127.0.0.0/8
00300 deny ip from 127.0.0.0/8 to any
65000 allow ip from any to any

em0 -смотрит в локалку

конфиг SQUID'а:

acl manager proto cache_object
acl porn url_regex "/usr/local/etc/squid/conf/porn"
acl zapret url_regex "/usr/local/etc/squid/conf/zapret"
acl localhost src 127.0.0.1/32
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32
#acl localnet src 10.0.0.0/8 # RFC1918 possible internal network
#acl localnet src 172.16.0.0/16 # RFC1918 possible internal network
#acl localnet src 192.168.0.0/24 # RFC1918 possible internal network
acl localnet src 172.21.0.0/24 # RFC1918 possible internal network
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
http_access deny zapret all
http_access deny porn all
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localnet
http_access deny all
icp_access allow localnet
icp_access deny all
htcp_access allow localnet
htcp_access deny all
http_port 172.21.0.1:3128 transparent
hierarchy_stoplist cgi-bin ?
access_log /usr/local/etc/squid/logs/access.log squid
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern (cgi-bin|\?) 0 0% 0
refresh_pattern . 0 20% 4320
icp_port 3130
visible_hostname FRYA
error_directory /usr/local/etc/squid/errors/Russian-1251
coredump_dir /usr/local/squid/cache
dns_nameservers 192.168.82.201 192.168.82.200


cat /usr/local/etc/squid/logs/access.log

1274376361.909 13 172.21.0.2 TCP_DENIED/403 1225 GET http://ya.ru/ - NONE/- text/html

в чем затык?

gf100 24-05-2010 16:13 1420028

lcnet, ошибка появляется в любом случае? - прокси прописан/нет в браузере?

Если поменять правило "http_access deny all" на разрешающее результат изменится?


Время: 03:36.

Время: 03:36.
© OSzone.net 2001-