Не срабатывает авторизация в SQUID
Добавлено: 17 дек 2015 14:37
Доброго времени суток! Не знаю куда копать - не то в ширь не то в глубь. вроде все правильно О_о
Negotiate Kerberos and NTLM authentication и Only NTLM authentication проходят на ура. но как только начинается разделение по группам сразу "доступ запрещен".
делал по аналогии http://blog.it-kb.ru/2014/06/26/forward ... ess-rules/
Домен ads.local
OO - контейнер подразделения в АД, в нем содержится контейнер "users" в котором томятся учетки пользователей и группы
тестовая группа в АД выглядит так:
она прописана в файлах доступа
proxyad
конструкция хелпера (убрал полные пути, иначе не вставлялось)
выдает:
user113 proxyad
ext_ldap_group_acl.cc(726): pid=4638 :group filter '(&(objectclass=person)(sAMAccountName=user113)(memberOf:1.2.840.113556.1.4.1941:=cn=proxyad,OU=users,OU=OO,DC=ads,DC=local))', searchbase 'OU=users,OU=OO,DC=ads,DC=local'
OK
Правда он не завершает работы, а предлагает следующего проверить - это нормально?
говорит что все в порядке,
а вот
1450360590.724 6 192.168.151.105 TCP_DENIED/403 4607 GET http://www.squid-cache.org/Artwork/SN.png user113 HIER_NONE/- text/html
1450360590.724 6 192.168.151.105 TCP_DENIED/403 4607 GET http://www.squid-cache.org/Artwork/SN.png user113 HIER_NONE/- text/html
и куда можно еще посмотреть?
И попутный вопрос, собственно для чего вся каша заваривается: можно ли в SQUID создать конструкцию которая бы делала перекрестную проверку пользователя? Доступ предоставлялся бы с одного компьютера на 1 перечень ресурсов, а с другого компа на другой, ограниченный перечень ресурсов. Это нужно чтобы пользователь со своего компьютера мог зайти везде кроме черного списка, а с Терминального сервера мог заходить на сильно ограниченный перечень ресурсов.
Negotiate Kerberos and NTLM authentication и Only NTLM authentication проходят на ура. но как только начинается разделение по группам сразу "доступ запрещен".
делал по аналогии http://blog.it-kb.ru/2014/06/26/forward ... ess-rules/
Домен ads.local
OO - контейнер подразделения в АД, в нем содержится контейнер "users" в котором томятся учетки пользователей и группы
тестовая группа в АД выглядит так:
Код: Выделить всё
CN=proxyad,OU=users,OU=OO,DC=ads,DC=local
Код: Выделить всё
cat conf_param_groups_full_auth.txt
конструкция хелпера (убрал полные пути, иначе не вставлялось)
Код: Выделить всё
sudo ext_ldap_group_acl -d -v 3 -P -R -K -b "OU=users,OU=OO,DC=ads,DC=local" -D squid@ads.local -W conf_param_ldappass.txt \
-f "(&(objectclass=person)(sAMAccountName=%v)(memberOf:1.2.840.113556.1.4.1941:=cn=%g,OU=users,OU=OO,DC=ads,DC=local))" -h d1-ad1.ads.local
user113 proxyad
ext_ldap_group_acl.cc(726): pid=4638 :group filter '(&(objectclass=person)(sAMAccountName=user113)(memberOf:1.2.840.113556.1.4.1941:=cn=proxyad,OU=users,OU=OO,DC=ads,DC=local))', searchbase 'OU=users,OU=OO,DC=ads,DC=local'
OK
Правда он не завершает работы, а предлагает следующего проверить - это нормально?
Код: Выделить всё
tail -f cache.log
Код: Выделить всё
Got user=[user113] domain=[ADS] workstation=[TS1] len1=24 len2=242
NTLMSSP Sign/Seal - Initialising with flags:
Got NTLMSSP neg_flags=0xe2088215
NTLMSSP_NEGOTIATE_UNICODE
NTLMSSP_REQUEST_TARGET
NTLMSSP_NEGOTIATE_SIGN
NTLMSSP_NEGOTIATE_NTLM
NTLMSSP_NEGOTIATE_ALWAYS_SIGN
NTLMSSP_NEGOTIATE_NTLM2
NTLMSSP_NEGOTIATE_VERSION
NTLMSSP_NEGOTIATE_128
NTLMSSP_NEGOTIATE_KEY_EXCH
NTLMSSP_NEGOTIATE_56
ext_ldap_group_acl.cc(587): pid=8393 :Connected OK
ext_ldap_group_acl.cc(726): pid=8393 :group filter '(&(objectclass=person)(sAMAccountName=user113)(memberOf:1.2.840.113556.1.4.1941:=cn=proxyad,OU=users,OU=OO,DC=ads,DC=local))', searchbase 'OU=users,OU=OO,DC=ADS,DC=local'
Starting GENSEC mechanism ntlmssp
Starting GENSEC mechanism ntlmssp
Got NTLMSSP neg_flags=0xe2088297
NTLMSSP_NEGOTIATE_UNICODE
NTLMSSP_NEGOTIATE_OEM
NTLMSSP_REQUEST_TARGET
NTLMSSP_NEGOTIATE_SIGN
NTLMSSP_NEGOTIATE_LM_KEY
NTLMSSP_NEGOTIATE_NTLM
NTLMSSP_NEGOTIATE_ALWAYS_SIGN
NTLMSSP_NEGOTIATE_NTLM2
NTLMSSP_NEGOTIATE_VERSION
NTLMSSP_NEGOTIATE_128
NTLMSSP_NEGOTIATE_KEY_EXCH
NTLMSSP_NEGOTIATE_56
Got user=[user113] domain=[ADS] workstation=[TS1] len1=24 len2=242
NTLMSSP Sign/Seal - Initialising with flags:
Got NTLMSSP neg_flags=0xe2088215
NTLMSSP_NEGOTIATE_UNICODE
NTLMSSP_REQUEST_TARGET
NTLMSSP_NEGOTIATE_SIGN
NTLMSSP_NEGOTIATE_NTLM
NTLMSSP_NEGOTIATE_ALWAYS_SIGN
NTLMSSP_NEGOTIATE_NTLM2
NTLMSSP_NEGOTIATE_VERSION
NTLMSSP_NEGOTIATE_128
NTLMSSP_NEGOTIATE_KEY_EXCH
NTLMSSP_NEGOTIATE_56
Starting GENSEC mechanism ntlmssp
Starting GENSEC mechanism ntlmssp
Got NTLMSSP neg_flags=0xe2088297
NTLMSSP_NEGOTIATE_UNICODE
NTLMSSP_NEGOTIATE_OEM
NTLMSSP_REQUEST_TARGET
NTLMSSP_NEGOTIATE_SIGN
NTLMSSP_NEGOTIATE_LM_KEY
NTLMSSP_NEGOTIATE_NTLM
NTLMSSP_NEGOTIATE_ALWAYS_SIGN
NTLMSSP_NEGOTIATE_NTLM2
NTLMSSP_NEGOTIATE_VERSION
NTLMSSP_NEGOTIATE_128
NTLMSSP_NEGOTIATE_KEY_EXCH
NTLMSSP_NEGOTIATE_56
а вот
Код: Выделить всё
tail -f access.log
1450360590.724 6 192.168.151.105 TCP_DENIED/403 4607 GET http://www.squid-cache.org/Artwork/SN.png user113 HIER_NONE/- text/html
Код: Выделить всё
squid3 -k parse
Код: Выделить всё
/ заменен на |
Startup: Initializing Authentication Schemes ...
2015|12|17 15:04:02| Startup: Initialized Authentication Scheme 'basic'
2015|12|17 15:04:02| Startup: Initialized Authentication Scheme 'digest'
2015|12|17 15:04:02| Startup: Initialized Authentication Scheme 'negotiate'
2015|12|17 15:04:02| Startup: Initialized Authentication Scheme 'ntlm'
2015|12|17 15:04:02| Startup: Initialized Authentication.
2015|12|17 15:04:02| Processing Configuration File: |etc|squid3|squid.conf (depth 0)
2015|12|17 15:04:02| Processing: http_port 192.168.151.5:3128
2015|12|17 15:04:02| Processing: http_port 127.0.0.1:3128
2015|12|17 15:04:02| Processing: dns_nameservers 192.168.151.10, 8.8.8.8
2015|12|17 15:04:02| Processing: auth_param negotiate program |usr|lib|squid3|negotiate_wrapper_auth --ntlm |usr|bin|ntlm_auth --diagnostics --helper-protocol=squid-2.5-ntlmssp --kerberos |usr|lib|squid3|negotiate_kerberos_auth -i -d -r -s HTTP|o1-proxy.ads.local@ADS.LOCAL
2015|12|17 15:04:02| Processing: auth_param negotiate children 200 startup=50 idle=10
2015|12|17 15:04:02| Processing: auth_param negotiate keep_alive off
2015|12|17 15:04:02| Processing: auth_param ntlm program |usr|bin|ntlm_auth --diagnostics --helper-protocol=squid-2.5-ntlmssp
2015|12|17 15:04:02| Processing: auth_param ntlm children 5
2015|12|17 15:04:02| Processing: auth_param ntlm keep_alive off
2015|12|17 15:04:02| Processing: auth_param basic program |usr|lib|squid3|basic_ldap_auth -v 3 -P -R -b "dc=ads,dc=local" -D squid@ads.local -W |etc|squid3|conf_param_ldappass.txt -f sAMAccountName=%s -h d1-ad1.ads.local
2015|12|17 15:04:02| Processing: auth_param basic children 20
2015|12|17 15:04:02| Processing: auth_param basic realm "SQUID Proxy Server Basic authentication!"
2015|12|17 15:04:02| Processing: auth_param basic credentialsttl 2 hours
2015|12|17 15:04:02| Processing: external_acl_type memberof ttl=3600 ipv4 %LOGIN |usr|lib|squid3|ext_ldap_group_acl -d -v 3 -P -R -K -b "OU=users,OU=OO,DC=ads,DC=local" -D squid@ads.local -W |etc|squid3|conf_param_ldappass.txt -f "(&(objectclass=person)(sAMAccountName=%v)(memberOf:1.2.840.113556.1.4.1941:=cn=%g,OU=users,OU=OO,DC=ads,DC=local))" -h d1-ad1.ads.local
2015|12|17 15:04:02| Processing: acl auth proxy_auth REQUIRED
2015|12|17 15:04:02| Processing: acl BlockedAccess external memberof "|etc|squid3|conf_param_groups_blocked.txt"
2015|12|17 15:04:02| Processing: acl RestrictedAccess external memberof "|etc|squid3|conf_param_groups_restricted.txt"
2015|12|17 15:04:02| Processing: acl StandardAccess external memberof "|etc|squid3|conf_param_groups_standard.txt"
2015|12|17 15:04:02| Processing: acl FullAccess external memberof "|etc|squid3|conf_param_groups_full_auth.txt"
2015|12|17 15:04:02| Processing: acl AnonymousAccess external memberof "|etc|squid3|conf_param_groups_full_anon.txt"
2015|12|17 15:04:02| Processing: acl allowedsites dstdomain "|etc|squid3|conf_param_sites_allowed.txt"
2015|12|17 15:04:02| Processing: acl blockedsites dstdomain "|etc|squid3|conf_param_sites_blocked.txt"
2015|12|17 15:04:02| Processing: acl prioritysites dstdomain "|etc|squid3|conf_param_sites_priority.txt"
2015|12|17 15:04:02| Processing: visible_hostname proxy-server
2015|12|17 15:04:02| Processing: acl localnet src 192.168.151.0|24 # RFC1918 possible internal network
2015|12|17 15:04:02| Processing: acl SSL_ports port 443
2015|12|17 15:04:02| Processing: acl Safe_ports port 80 # http
2015|12|17 15:04:02| Processing: acl Safe_ports port 21 # ftp
2015|12|17 15:04:02| Processing: acl Safe_ports port 443 # https
2015|12|17 15:04:02| Processing: acl Safe_ports port 70 # gopher
2015|12|17 15:04:02| Processing: acl Safe_ports port 210 # wais
2015|12|17 15:04:02| Processing: acl Safe_ports port 1025-65535 # unregistered ports
2015|12|17 15:04:02| Processing: acl Safe_ports port 280 # http-mgmt
2015|12|17 15:04:02| Processing: acl Safe_ports port 488 # gss-http
2015|12|17 15:04:02| Processing: acl Safe_ports port 591 # filemaker
2015|12|17 15:04:02| Processing: acl Safe_ports port 777 # multiling http
2015|12|17 15:04:02| Processing: acl CONNECT method CONNECT
2015|12|17 15:04:02| Processing: http_access deny !Safe_ports
2015|12|17 15:04:02| Processing: http_access deny CONNECT !SSL_ports
2015|12|17 15:04:02| Processing: http_access allow localhost manager
2015|12|17 15:04:02| Processing: http_access allow localnet manager
2015|12|17 15:04:02| Processing: http_access deny manager
2015|12|17 15:04:02| Processing: cachemgr_passwd Strong_pass all
2015|12|17 15:04:02| Processing: http_access deny !auth
2015|12|17 15:04:02| Processing: http_access deny BlockedAccess all
2015|12|17 15:04:02| Processing: http_access allow allowedsites localnet
2015|12|17 15:04:02| Processing: http_access deny RestrictedAccess all
2015|12|17 15:04:02| Processing: http_access allow AnonymousAccess auth localnet
2015|12|17 15:04:02| Processing: http_access allow FullAccess auth localnet
2015|12|17 15:04:02| Processing: http_access deny blockedsites
2015|12|17 15:04:02| Processing: http_access allow StandardAccess auth localnet
2015|12|17 15:04:02| Processing: http_access deny all
2015|12|17 15:04:02| Processing: hierarchy_stoplist cgi-bin ?
2015|12|17 15:04:02| Processing: forward_max_tries 25
2015|12|17 15:04:02| Processing: access_log daemon:|var|log|squid3|access.log squid
2015|12|17 15:04:02| Processing: cache_log |var|log|squid3|cache.log
2015|12|17 15:04:02| Processing: coredump_dir |var|spool|squid3
2015|12|17 15:04:02| Processing: cache_mgr it164@alfamailbox.com
2015|12|17 15:04:02| Processing: httpd_suppress_version_string on
2015|12|17 15:04:02| Processing: error_directory |usr|share|squid3|errors|ru
2015|12|17 15:04:02| Processing: error_default_language ru
2015|12|17 15:04:02| Processing: dns_v4_first on
2015|12|17 15:04:02| Processing: forwarded_for delete
2015|12|17 15:04:02| Processing: cache_mem 2048 MB
2015|12|17 15:04:02| Processing: maximum_object_size_in_memory 2048 KB
2015|12|17 15:04:02| Processing: memory_replacement_policy heap GDSF
2015|12|17 15:04:02| Processing: cache_dir ufs |var|spool|squid3 1024 10 20
2015|12|17 15:04:02| Processing: access_log |var|log|squid3|access.log squid
2015|12|17 15:04:02| Processing: cache_log |var|log|squid3|cache.log
2015|12|17 15:04:02| Processing: coredump_dir |var|spool|squid3
2015|12|17 15:04:02| Processing: refresh_pattern ^ftp: 1440 20% 10080
2015|12|17 15:04:02| Processing: refresh_pattern ^gopher: 1440 0% 1440
2015|12|17 15:04:02| Processing: refresh_pattern -i (|cgi-bin||\?) 0 0% 0
2015|12|17 15:04:02| Processing: refresh_pattern (Release|Packages(.gz)*)$ 0 20% 2880
2015|12|17 15:04:02| Processing: refresh_pattern . 0 20% 4320
И попутный вопрос, собственно для чего вся каша заваривается: можно ли в SQUID создать конструкцию которая бы делала перекрестную проверку пользователя? Доступ предоставлялся бы с одного компьютера на 1 перечень ресурсов, а с другого компа на другой, ограниченный перечень ресурсов. Это нужно чтобы пользователь со своего компьютера мог зайти везде кроме черного списка, а с Терминального сервера мог заходить на сильно ограниченный перечень ресурсов.