LINUX.ORG.RU
ФорумAdmin

squid и проблема tcp_miss/302

 


0

2

Добрый день!

ОС RHEL 6 Squid Cache: Version 3.1.10 configure options: '--build=x86_64-redhat-linux-gnu' '--host=x86_64-redhat-linux-gnu' '--target=x86_64-redhat-linux-gnu' '--program-prefix=' '--prefix=/usr' '--exec-prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc' '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib64' '--libexecdir=/usr/libexec' '--sharedstatedir=/var/lib' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--enable-internal-dns' '--disable-strict-error-checking' '--exec_prefix=/usr' '--libexecdir=/usr/lib64/squid' '--localstatedir=/var' '--datadir=/usr/share/squid' '--sysconfdir=/etc/squid' '--with-logdir=$(localstatedir)/log/squid' '--with-pidfile=$(localstatedir)/run/squid.pid' '--disable-dependency-tracking' '--enable-arp-acl' '--enable-follow-x-forwarded-for' '--enable-auth=basic,digest,ntlm,negotiate' '--enable-basic-auth-helpers=LDAP,MSNT,NCSA,PAM,SMB,YP,getpwnam,multi-domain-NTLM,SASL,DB,POP3,squid_radius_auth' '--enable-ntlm-auth-helpers=smb_lm,no_check,fakeauth' '--enable-digest-auth-helpers=password,ldap,eDirectory' '--enable-negotiate-auth-helpers=squid_kerb_auth' '--enable-external-acl-helpers=ip_user,ldap_group,session,unix_group,wbinfo_group' '--enable-cache-digests' '--enable-cachemgr-hostname=localhost' '--enable-delay-pools' '--enable-epoll' '--enable-icap-client' '--enable-ident-lookups' '--enable-linux-netfilter' '--enable-referer-log' '--enable-removal-policies=heap,lru' '--enable-snmp' '--enable-ssl' '--enable-storeio=aufs,diskd,ufs' '--enable-useragent-log' '--enable-wccpv2' '--enable-esi' '--with-aio' '--with-default-user=squid' '--with-filedescriptors=16384' '--with-dl' '--with-openssl' '--with-pthreads' 'build_alias=x86_64-redhat-linux-gnu' 'host_alias=x86_64-redhat-linux-gnu' 'target_alias=x86_64-redhat-linux-gnu' 'CFLAGS=-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fpie' 'LDFLAGS=-pie' 'CXXFLAGS=-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fpie' --with-squid=/builddir/build/BUILD/squid-3.1.10

[root@xxx squid]# cat squid.conf

auth_param basic program /usr/lib64/squid/squid_ldap_auth -d -R -D xxx@xxx.kz -w xxx -b «dc=xxx,dc=kz» -f sAMAccountName=%s -d xxx.xxx.kz xxx.xxx.kz

auth_param basic children 5

auth_param basic realm xxx.KZ

external_acl_type ldapg children=5 %LOGIN /usr/lib64/squid/squid_ldap_group -d -R -b «dc=xxx,dc=kz» -f "(&(sAMAccountName=%v)(memberOf=CN=%a,OU=Service-DIT,DC=xxx,DC=kz))" -D xxx@xxx.kz -w xxx -K -h xxx.xxx.kz xxx.xxx.kz

acl manager proto cache_object

acl localhost src 127.0.0.1/32 ::1

acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1

acl localnet src 10.0.0.0/8 # RFC1918 possible internal network

acl localnet src 172.16.0.0/12 # RFC1918 possible internal network

acl localnet src 192.168.0.0/16 # RFC1918 possible internal network

acl localnet src fc00::/7 # RFC 4193 local private network range

acl localnet src fe80::/10 # RFC 4291 link-local (directly plugged) machines

acl SSL_ports port 443 60001 8180 8643 8888 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 Safe_ports port 60001 8180 8643 8888 # NUC

acl CONNECT method CONNECT

acl POST method POST

acl GET method GET

http_access allow manager localhost

http_access deny manager

http_access deny !Safe_ports

http_access deny CONNECT !SSL_ports

#http_access deny to_localhost

acl auth proxy_auth REQUIRED

acl proxy_ldap external ldapg proxyldap

http_access allow proxy_ldap

http_access allow proxy_ldap CONNECT SSL_ports

#http_access allow localnet

#http_access allow localnet CONNECT SSL_ports

http_access allow localhost

http_access deny !auth all

#http_access allow auth

http_access deny all

http_port 3128

hierarchy_stoplist cgi-bin ?

#cache_dir ufs /var/spool/squid 100 16 256

coredump_dir /var/spool/squid

refresh_pattern ^ftp: 1440 20% 10080

refresh_pattern ^gopher: 1440 0% 1440

refresh_pattern -i (/cgi-bin/|\?) 0 0% 0

refresh_pattern . 0 20% 4320

как видно из конфига сквид работает с авторизацией керберос в АД.

прокся тестовая, но на продуктивах в отличие от тестового есть еще ACL с блокировкой по сайтам.

проблема в том что и на тестовом и продуктивном прокси у многих пользователей не открывается сайт http://hh.kz

вот что пишет в логах когда на этот сайт подключаюсь я: 1401966755.556 491 xxx.xxx.xxx.xxx TCP_MISS/200 53041 GET http://hh.kz/ super_user DIRECT/178.88.114.118 text/html

1401966755.922 125 xxx.xxx.xxx.xxx TCP_MISS/200 435 GET http://hhcdn.ru/pv super_user DIRECT/94.124.200.82 text/javascript

1401966756.035 58 xxx.xxx.xxx.xxx TCP_MISS/200 436 GET http://hhcdn.ru/pv super_user DIRECT/94.124.200.82 text/javascript

вот что пишет когда подключается пользователь: 1401966979.350 170 ууу.ууу.ууу.ууу TCP_MISS/302 561 GET http://hh.kz/ just_user DIRECT/178.88.114.118 text/html

1401966986.242 57 ууу.ууу.ууу.ууу TCP_MISS/302 533 GET http://hhid.ru/validate/;http;hh.kz;80;/ just_user DIRECT/94.124.200.81 text/plain

1401966993.306 164 ууу.ууу.ууу.ууу TCP_MISS/302 374 GET http://hh.kz/hhid/bind just_user DIRECT/178.88.114.118 text/plain

1401967000.300 149 ууу.ууу.ууу.ууу TCP_MISS/302 561 GET http://hh.kz/ just_user DIRECT/178.88.114.118 text/html

1401967007.222 57 ууу.ууу.ууу.ууу TCP_MISS/302 533 GET http://hhid.ru/validate/;http;hh.kz;80;/ just_user DIRECT/94.124.200.81 text/plain

пробовали у разных юзеров в разных браузерах, проблема везде одинаковая. загрузка висит и обрывается. что странно у меня доступ есть, хотя как видно из конфига, он у меня такой же как у всех юзеров. кеш у себя и пользователей чистился неоднократно. Сам прокси не кеширующий. Может быть настройки браузера?

уже не знаю что делать, помогите разобраться с проблемой.



Последнее исправление: djeg (всего исправлений: 2)

На сервере со сквидом hh.kz нормально резолвится? /etc/resolv.conf в порядке?

До кучи: если для проверки убрать всю авторизацию/acl и оставить только «http_access allow all» - проблема остаётся?

selivan ★★★
()
Последнее исправление: selivan (всего исправлений: 1)
Ответ на: комментарий от selivan

да. думала об этом. даже прописывала dns_namesrvers в конфиг сквида

свои днс сервера и для тестов 1.сервер провайдера 2. сервер-днс гугла 8.8.8.8

ответ на моем сервере nslookup hh.kz

Non-authoritative answer: Name: hh.kz Address: 178.88.114.118

[root@xxx squid]# cat /etc/resolv.conf search xxx.kz nameserver 10.159.7.34 nameserver 10.159.4.2

прописаны наши внутренние днс-ы

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

я читала о сообщении 302, но не могу понять это теоретически, что именно это значит и почему так происходит.

djeg
() автор топика

Вот здесь http://technotrance.su/index.php/moi-zametki/20-squid-headhunter пишут про hh.ru, но, думаю, что у вас тоже самое. Похоже, что сайт смотрит заголовки http, и, когда там что-то лишее перенаправляет на другой URL.

Получите дамп трафика с помощью tcpdump и сравните, какие заголовки отправляются от super_user и от just_user.

mky ★★★★★
()
Ответ на: комментарий от mky

нашла решение!

http_access allow all CONNECT Safe_ports

добавила эту строчку и доступ появился, теперь нужно определить конкретный порт из всех Safe_ports

найду порт, отпишу сюда.

догадываюсь что 80ый

djeg
() автор топика
Ответ на: комментарий от djeg

O_o очень странно. CONNECT нужен для SSL, потому что оно шифрованное и сквид не может его разобрать. Возможно, у этих чудаков SSL на 80 порту висит. В любом случае, стоит создать отдельный acl для проблемного сайта и разрешить CONNECT только для него. Текущее правило слишком широкое.

selivan ★★★
()
Ответ на: комментарий от selivan

да сама в шоке))))

сейчас тестирую, но это уже точно не 80ый порт.

как напишу правило, размещу его сюда

djeg
() автор топика
Ответ на: комментарий от djeg

нашли решение

оказывается веб-шилд блочил сайт

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

djeg
() автор топика
11 августа 2014 г.
21 апреля 2015 г.
Ответ на: комментарий от artb1sh

это программно-аппаратный продукт mcafee, работает как антивирусный шлюз

djeg
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.