Squid проблема с правами.

fincherling
Любопытный
Сообщения: 17
Зарегистрирован: 07 дек 2016 07:47

Re: Squid проблема с правами.

Сообщение fincherling » 10 дек 2016 09:51

Самое забавное что я развернул дома debian настроил по этой же инструкции и у меня те же самые ошибки, подскажите пожалуйста где в конфигурации squid я ошибся ?

Аватара пользователя
Алексей Максимов
Администратор сайта
Сообщения: 419
Зарегистрирован: 14 сен 2012 06:50
Откуда: г.Сыктывкар
Контактная информация:

Re: Squid проблема с правами.

Сообщение Алексей Максимов » 10 дек 2016 15:10

fincherling писал(а):Изменил подсеть на
acl localnet src 172.0.0.0/8 # RFC1918 possible internal network
перезапустил сервер выходят теже саые ошибки

2016/12/08 13:35:07.648 kid1| Acl.cc(157) matches: checking localhost
2016/12/08 13:35:07.648 kid1| Ip.cc(560) match: aclIpMatchIp: '172.17.224.101:54089' NOT found
2016/12/08 13:35:07.648 kid1| Acl.cc(177) matches: checked: localhost = 0
2016/12/08 13:35:07.648 kid1| Acl.cc(177) matches: checked: http_access#3 = 0
2016/12/08 13:35:07.649 kid1| Acl.cc(157) matches: checking http_access#4
2016/12/08 13:35:07.649 kid1| Acl.cc(157) matches: checking localnet
2016/12/08 13:35:07.649 kid1| Ip.cc(560) match: aclIpMatchIp: '172.17.224.101:54089' found
На самом деле это никакие не ошибки. В первом случае squid проверяет, подпадает ли адрес клиента под ACL "localhost" и совершенно справедливо говорит, что не подпадает. Во тором случае squid проверяет, подпадает ли адрес клиента под ACL "localnet" и также справедливо говорит, что подпадает. Здесь всё совершенно штатно. Проблема в чём-то другом. Из выложенной портянки ничего не углядел.

Нужно.
1) squid.conf
2) access.log (НЕ ВЕСЬ и не за 300 лет, а только на момент воспроизведения проблемы)
3) cache.log (на момент воспроизведения проблемы)

Логи пока в обычном режиме (без тонн дебага) .

Вообще здесь в форуме про Squid уже неоднократно обсуждался порядок отладки и отлова проблем. Читайте другие ветки. Сначала отключаете всю авторизацию и проверяете работает ли без авторизации доступ. Если работает, то включаете по одному хелперы аутентификации - сначала только basic и т.д.

fincherling
Любопытный
Сообщения: 17
Зарегистрирован: 07 дек 2016 07:47

Re: Squid проблема с правами.

Сообщение fincherling » 12 дек 2016 07:01

Добрый день,
По поводу:
016/12/08 13:35:07.648 kid1| Ip.cc(560) match: aclIpMatchIp: '172.17.224.101:54089' NOT found
2016/12/08 13:35:07.648 kid1| Acl.cc(177) matches: checked: localhost = 0
2016/12/08 13:35:07.648 kid1| Acl.cc(177) matches: checked: http_access#3 = 0
2016/12/08 13:35:07.649 kid1| Acl.cc(157) matches: checking http_access#4
2016/12/08 13:35:07.649 kid1| Acl.cc(157) matches: checking localnet
2016/12/08 13:35:07.649 kid1| Ip.cc(560) match: aclIpMatchIp: '172.17.224.101:54089' found

С этим я тоже разобрался и выяснил что это не ошибка а просто поиск по acl
На домашней виртуальной машине мне удалось решить проблему которая была в следующем:
В 95% инструкций путь к группам и юзерам указывается ou=,ou,dc=,=dc=, но в остальных 5% указывается в последней директории CN, почитав понял что указывая CN ты подразумеваешь наличие объектов в конечном каталоге.
Дак вот я заменил у конечных каталогов с ou на cn и все заработало , думал что придя на работе проделаю не сложную манипуляцию и будет счастье, но это ситуацию не спасло squid писал "нет доступа" решил воспользоватся вашим советом и отключить все хелперы да и в принципе половину конфигурации которая будет выложена ниже, но по мне не понятной причине squid в интернет не пускает пока не пропишешь http_access allow all , хотя в localnet подсесть указана и ниже предоставлен ей доступ

http://dropmefiles.com/H2E7Z

Аватара пользователя
Алексей Максимов
Администратор сайта
Сообщения: 419
Зарегистрирован: 14 сен 2012 06:50
Откуда: г.Сыктывкар
Контактная информация:

Re: Squid проблема с правами.

Сообщение Алексей Максимов » 12 дек 2016 07:45

Вложенный конфг squid, если это вообще так можно назвать, результата никакого не даст.
Самые основные правила http_access закомментированы, acl "localnet" не определён, в acl "localhost" вообще чепуха написана, хотя в данном случае это не критично.
Вы хотите, чтобы такая конфигурация работала?

fincherling
Любопытный
Сообщения: 17
Зарегистрирован: 07 дек 2016 07:47

Re: Squid проблема с правами.

Сообщение fincherling » 12 дек 2016 08:57

Заработало вот с такой конфигурацией когда я повторно указал ниже http_access allow localnet

# Аllow cachemgr access from localhost and localnet
http_access allow localnet manager
http_access deny manager

# Allow direct access to Windows Update
http_access allow GlobalWUSites LocalWUServers

# Allow unrestricted access to prioritysites
http_access allow prioritysites localnet

# Enforce authentication, order of rules is important for authorization levels
http_access deny !auth

# Prevent access to basic auth prompt for BlockedAccess users
http_access deny BlockedAccess all
http_access allow allowedsites localnet
http_access deny RestrictedAccess all
http_access allow AnonymousAccess auth localnet
http_access allow FullAccess auth localnet
http_access deny blockedsites
http_access allow StandardAccess auth localnet
http_access allow localnet



Подскажите почему именно так ? Ведь у вас в инструкции повторно acl не объявляется, да и я дома не делал.

fincherling
Любопытный
Сообщения: 17
Зарегистрирован: 07 дек 2016 07:47

Re: Squid проблема с правами.

Сообщение fincherling » 12 дек 2016 10:31

Разобрался если прописать localnet как я прописывал выше то пускает просто по диапазону IP
Может ли эта проблема в общем быть из за того что по умолчанию в линукс привязывается не правильный принципал ?
Default principal: administrator@EKT.MBRD.RU
А должен быть Default principal: conductor@EKT.MBRD.RU в ключе прописан тоже conductor

klist
Default principal: administrator@EKT.MBRD.RU

Valid starting Expires Service principal
12.12.2016 13:37:33 12.12.2016 23:37:33 krbtgt/EKT.MBRD.RU@EKT.MBRD.RU
renew until 12.12.2016 23:37:33


Если может из за этого , то как его отвязать ?

fincherling
Любопытный
Сообщения: 17
Зарегистрирован: 07 дек 2016 07:47

Re: Squid проблема с правами.

Сообщение fincherling » 13 дек 2016 07:48

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


2016/12/13 12:37:09.159 kid1| external_acl.cc(1518) Start: externalAclLookup: will wait for the result of 'ushakov Internet_IT_ekt' in 'memberof' (ch=0xb8054158).
2016/12/13 12:37:09.159 kid1| external_acl.cc(874) aclMatchExternal: "ushakov Internet_IT_ekt": return -1.
2016/12/13 12:37:09.159 kid1| Acl.cc(177) matches: checked: StandardAccess = -1 async
2016/12/13 12:37:09.159 kid1| Acl.cc(177) matches: checked: http_access#14 = -1 async
2016/12/13 12:37:09.159 kid1| InnerNode.cc(90) resumeMatchingAt: checked: http_access = -1 async
2016/12/13 12:37:09.159 kid1| cbdata.cc(348) cbdataInternalFree: cbdataFree: 0xb81a7240
2016/12/13 12:37:09.159 kid1| cbdata.cc(365) cbdataInternalFree: cbdataFree: Freeing 0xb81a7240
2016/12/13 12:37:09.159 kid1| helper.cc(1208) GetFirstAvailable: GetFirstAvailable: Running servers 5
2016/12/13 12:37:09.159 kid1| cbdata.cc(419) cbdataInternalLock: cbdataLock: 0xb803dac8=3
2016/12/13 12:37:09.159 kid1| cbdata.cc(419) cbdataInternalLock: cbdataLock: 0xb803dac8=4
2016/12/13 12:37:09.159 kid1| AsyncCall.cc(18) AsyncCall: The AsyncCall helperHandleRead constructed, this=0xb8421278 [call12598]
2016/12/13 12:37:09.159 kid1| cbdata.cc(419) cbdataInternalLock: cbdataLock: 0xb803dac8=5
2016/12/13 12:37:09.159 kid1| cbdata.cc(456) cbdataInternalUnlock: cbdataUnlock: 0xb803dac8=4
2016/12/13 12:37:09.159 kid1| cbdata.cc(456) cbdataInternalUnlock: cbdataUnlock: 0xb803dac8=3
2016/12/13 12:37:09.159 kid1| comm.cc(167) comm_read: comm_read, queueing read for local=[::] remote=[::] FD 154 flags=1; asynCall 0xb8421278*1
2016/12/13 12:37:09.159 kid1| ModEpoll.cc(139) SetSelect: FD 154, type=1, handler=1, client_data=0xb4ea5294, timeout=0
2016/12/13 12:37:09.160 kid1| AsyncCallQueue.cc(53) fireNext: leaving helperHandleRead(local=[::] remote=[::] FD 154 flags=1, data=0xb803dac8, size=5, buf=0xb8032598)
2016/12/13 12:37:09.160 kid1| cbdata.cc(456) cbdataInternalUnlock: cbdataUnlock: 0xb803dac8=2
2016/12/13 12:37:09.160 kid1| EventLoop.cc(61) checkEngine: Engine 0xbffb5f10 is idle.
2016/12/13 12:37:09.160 kid1| EventLoop.cc(61) checkEngine: Engine 0xbffb5ef8 is idle.
2016/12/13 12:37:09.160 kid1| ModEpoll.cc(290) DoSelect: got FD 152 events=4 monitoring=1d F->read_handler=1 F->write_handler=1
2016/12/13 12:37:09.160 kid1| ModEpoll.cc(312) DoSelect: Calling write handler on FD 152
2016/12/13 12:37:09.160 kid1| Write.cc(60) HandleWrite: local=[::] remote=[::] FD 152 flags=1: off 0, sz 24.
2016/12/13 12:37:09.160 kid1| Write.cc(100) HandleWrite: write() returns 24
2016/12/13 12:37:09.160 kid1| IoCallback.cc(108) finish: called for local=[::] remote=[::] FD 152 flags=1 (0, 0)
2016/12/13 12:37:09.160 kid1| AsyncCall.cc(85) ScheduleCall: IoCallback.cc(127) will call helperDispatchWriteDone(local=[::] remote=[::] FD 152 flags=1, data=0xb803c738, size=24, buf=0xb8417458) [call12597]
2016/12/13 12:37:09.160 kid1| AsyncCallQueue.cc(51) fireNext: entering helperDispatchWriteDone(local=[::] remote=[::] FD 152 flags=1, data=0xb803c738, size=24, buf=0xb8417458)
2016/12/13 12:37:09.160 kid1| AsyncCall.cc(30) make: make call helperDispatchWriteDone [call12597]
2016/12/13 12:37:09.160 kid1| cbdata.cc(510) cbdataReferenceValid: cbdataReferenceValid: 0xb803c738
2016/12/13 12:37:09.160 kid1| cbdata.cc(348) cbdataInternalFree: cbdataFree: 0xb840c678
2016/12/13 12:37:09.160 kid1| cbdata.cc(365) cbdataInternalFree: cbdataFree: Freeing 0xb840c678
2016/12/13 12:37:09.160 kid1| AsyncCallQueue.cc(53) fireNext: leaving helperDispatchWriteDone(local=[::] remote=[::] FD 152 flags=1, data=0xb803c738, size=24, buf=0xb8417458)
2016/12/13 12:37:09.160 kid1| cbdata.cc(456) cbdataInternalUnlock: cbdataUnlock: 0xb803c738=2
2016/12/13 12:37:09.160 kid1| EventLoop.cc(61) checkEngine: Engine 0xbffb5f10 is idle.
2016/12/13 12:37:09.160 kid1| EventLoop.cc(61) checkEngine: Engine 0xbffb5ef8 is idle.
2016/12/13 12:37:09.161 kid1| ModEpoll.cc(290) DoSelect: got FD 152 events=4 monitoring=1d F->read_handler=1 F->write_handler=0
2016/12/13 12:37:09.161 kid1| ModEpoll.cc(319) DoSelect: no write handler for FD 152
2016/12/13 12:37:09.161 kid1| ModEpoll.cc(139) SetSelect: FD 152, type=2, handler=0, client_data=0, timeout=0
2016/12/13 12:37:09.161 kid1| EventLoop.cc(61) checkEngine: Engine 0xbffb5f10 is idle.
2016/12/13 12:37:09.161 kid1| EventLoop.cc(61) checkEngine: Engine 0xbffb5ef8 is idle.
2016/12/13 12:37:09.163 kid1| ModEpoll.cc(290) DoSelect: got FD 152 events=1 monitoring=19 F->read_handler=1 F->write_handler=0
2016/12/13 12:37:09.164 kid1| ModEpoll.cc(296) DoSelect: Calling read handler on FD 152
2016/12/13 12:37:09.164 kid1| comm.cc(138) commHandleRead: comm_read_try: FD 152, size 4095, retval 5, errno 0
2016/12/13 12:37:09.164 kid1| IoCallback.cc(108) finish: called for local=[::] remote=[::] FD 152 flags=1 (0, 0)
2016/12/13 12:37:09.164 kid1| AsyncCall.cc(85) ScheduleCall: IoCallback.cc(127) will call helperHandleRead(local=[::] remote=[::] FD 152 flags=1, data=0xb803c738, size=5, buf=0xb83b6618) [call12596]
2016/12/13 12:37:09.164 kid1| AsyncCallQueue.cc(51) fireNext: entering helperHandleRead(local=[::] remote=[::] FD 152 flags=1, data=0xb803c738, size=5, buf=0xb83b6618)
2016/12/13 12:37:09.164 kid1| AsyncCall.cc(30) make: make call helperHandleRead [call12596]
2016/12/13 12:37:09.164 kid1| cbdata.cc(510) cbdataReferenceValid: cbdataReferenceValid: 0xb803c738
2016/12/13 12:37:09.164 kid1| cbdata.cc(510) cbdataReferenceValid: cbdataReferenceValid: 0xb803c738
2016/12/13 12:37:09.164 kid1| helper.cc(906) helperHandleRead: helperHandleRead: 5 bytes from memberof #Hlpr0
2016/12/13 12:37:09.164 kid1| helper.cc(915) helperHandleRead: accumulated[5]=ERR

2016/12/13 12:37:09.164 kid1| helper.cc(932) helperHandleRead: helperHandleRead: end of reply found
2016/12/13 12:37:09.164 kid1| cbdata.cc(510) cbdataReferenceValid: cbdataReferenceValid: 0xb84094f8
2016/12/13 12:37:09.164 kid1| cbdata.cc(456) cbdataInternalUnlock: cbdataUnlock: 0xb84094f8=0
2016/12/13 12:37:09.164 kid1| HelperReply.cc(23) parse: Parsing helper buffer
2016/12/13 12:37:09.164 kid1| HelperReply.cc(42) parse: Buff length is larger than 2
2016/12/13 12:37:09.164 kid1| HelperReply.cc(50) parse: helper Result = ERR
2016/12/13 12:37:09.164 kid1| external_acl.cc(1375) externalAclHandleReply: reply={result=ERR}
2016/12/13 12:37:09.164 kid1| cbdata.cc(510) cbdataReferenceValid: cbdataReferenceValid: 0xb7fc5228
2016/12/13 12:37:09.164 kid1| external_acl.cc(1290) external_acl_cache_add: external_acl_cache_add: Adding 'ushakov Internet_IT_ekt' = DENIED
2016/12/13 12:37:09.164 kid1| external_acl.cc(1293) external_acl_cache_add: updating existing entry
2016/12/13 12:37:09.164 kid1| cbdata.cc(456) cbdataInternalUnlock: cbdataUnlock: 0xb7fc5228=5
2016/12/13 12:37:09.164 kid1| cbdata.cc(510) cbdataReferenceValid: cbdataReferenceValid: 0xb8054158
2016/12/13 12:37:09.164 kid1| cbdata.cc(456) cbdataInternalUnlock: cbdataUnlock: 0xb8054158=0
2016/12/13 12:37:09.164 kid1| cbdata.cc(510) cbdataReferenceValid: cbdataReferenceValid: 0xb7fee600
2016/12/13 12:37:09.164 kid1| cbdata.cc(510) cbdataReferenceValid: cbdataReferenceValid: 0xb7fc6dc8
2016/12/13 12:37:09.164 kid1| InnerNode.cc(87) resumeMatchingAt: checking http_access at 13
2016/12/13 12:37:09.164 kid1| InnerNode.cc(87) resumeMatchingAt: checking http_access#14 at 0
2016/12/13 12:37:09.164 kid1| Acl.cc(157) matches: checking StandardAccess
2016/12/13 12:37:09.164 kid1| external_acl.cc(805) aclMatchExternal: acl="memberof"
2016/12/13 12:37:09.164 kid1| external_acl.cc(896) aclMatchExternal: entry = { date=1481614629, result=DENIED tag= log= }

Аватара пользователя
Алексей Максимов
Администратор сайта
Сообщения: 419
Зарегистрирован: 14 сен 2012 06:50
Откуда: г.Сыктывкар
Контактная информация:

Re: Squid проблема с правами.

Сообщение Алексей Максимов » 13 дек 2016 08:09

Почитайте этот топик viewtopic.php?f=52&t=70

fincherling
Любопытный
Сообщения: 17
Зарегистрирован: 07 дек 2016 07:47

Re: Squid проблема с правами.

Сообщение fincherling » 13 дек 2016 11:10

squid -k check -- ошибок нет
А вот при запросе ошибка.. побывал с OU менять на CN
/usr/lib/squid3/ext_ldap_group_acl -d -v 3 -P -R -K -b "dc=ekt,dc=mbrd,dc=ru" -D squid3@ekt.mbrd.ru -W /etc/squid3/conf_param_ldappass.txt -f "(&(objectclass=person)(sAMAccountName=%v)(memberOf:1.2.840.113556.1.4.1941:=cn=%g,OU=EKT,OU=Groups,OU=Security Groups,DC=ekt,DC=mbrd,DC=ru))" -h ekt-dc1.ekt.mbrd.ru
ext_ldap_group_acl.cc(583): pid=31596 :Connected OK
ext_ldap_group_acl.cc(722): pid=31596 :group filter '(&(objectclass=person)(sAMAccountName=ushakov)(memberOf:1.2.840.113556.1.4.1941:=cn=internet_IT_ekt,OU=EKT,OU=Groups,OU=Security Groups,DC=ekt,DC=mbrd,DC=ru))', searchbase 'dc=ekt,dc=mbrd,dc=ru'
ERR

fincherling
Любопытный
Сообщения: 17
Зарегистрирован: 07 дек 2016 07:47

Re: Squid проблема с правами.

Сообщение fincherling » 13 дек 2016 11:41

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

/usr/lib/squid3/ext_ldap_group_acl -d -v 3 -P -R -K -b "dc=ekt,dc=mbrd,dc=ru" -D squid3@ekt.mbrd.ru -W /etc/squid3/conf_param_ldappass.txt -f "(&(objectclass=person)(sAMAccountName=%v)(memberOf:1.2.840.113556.1.4.1941:=cn=%g,OU=Security Groups,OU=Groups,OU=EKT,DC=ekt,DC=mbrd,DC=ru))" -h ekt-dc1.ekt.mbrd.ru
ushakov internet_IT_ekt
ext_ldap_group_acl.cc(583): pid=8202 :Connected OK
ext_ldap_group_acl.cc(722): pid=8202 :group filter '(&(objectclass=person)(sAMAccountName=ushakov)(memberOf:1.2.840.113556.1.4.1941:=cn=internet_IT_ekt,OU=Security Groups,OU=Groups,OU=EKT,DC=ekt,DC=mbrd,DC=ru))', searchbase 'dc=ekt,dc=mbrd,dc=ru'
OK

Ответить

Вернуться в «Прокси-сервер Squid»