Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Название темы: Squid3+AD win 2008 R2
Показать сообщение отдельно

Аватара для Negativ

Ветеран


Сообщения: 1051
Благодарности: 42

Профиль | Отправить PM | Цитировать


В общем задача не изменилась.
Имеем шлюз с
Код: Выделить весь код
squid-3.1.4_1       HTTP Caching Proxy
Шлюз включен в домен win2008 r2 enterprise

klist
Код: Выделить весь код
 klist
Credentials cache: FILE:/tmp/krb5cc_0
        Principal: inetuser@DOMEN.LOCAL

  Issued           Expires          Principal
Oct 29 13:46:41  Oct 29 23:45:18  krbtgt/DOMEN.LOCAL@DOMEN.LOCAL

krb5.conf
Код: Выделить весь код
[libdefaults]
        default_realm = DOMEN.LOCAL
        dns_lookup_kdc = no
        dns_lookup_realm = no
        default_keytab_name = /etc/krb5.keytab
........
default_tgs_enctypes = rc4-hmac
default_tkt_enctypes = rc4-hmac
permitted_enctypes = rc4-hmac

........
[realms]
        DOMEN.LOCAL = {
            kdc = host-pdc.domen.local
            admin_server = host-pdc.domen.local

        }
........
[domain_realm]
        .domen.local = DOMEN.LOCAL
        domen.local = DOMEN.LOCAL
........................................................
[logging]
        kdc = FILE:/var/log/krb5kdc.log
        admin_server = FILE:/var/log/kadmin.log
        default = FILE:/var/log/krb5lib.log

squid.conf брал из примера отсюда -> http://www.lissyara.su/?id=2101
Код: Выделить весь код
#порт на котором будет висеть сквид
http_port 3128 accel vhost vport allow-direct
#http_port 3128
#директория под кеш и её параметры
cache_dir ufs /usr/local/squid/cache 8000 8 64
#лог доступа, полезен для отладки
access_log /var/log/squid/access.log squid
cache_store_log /var/log/squid/store.log

#сл. три строки - аутентификатор
auth_param negotiate program /usr/local/libexec/squid/squid_kerb_auth -d -s HTTP/gate_serv.domen.local@DOMEN.LOCAL
#auth_param basic program /usr/local/libexec/squid/squid_kerb_auth -d
#кол-во аутентификаторов 10 у меня хватает на сотню пользователей
#(хватает и 4 на 100)
auth_param negotiate children 2
auth_param negotiate keep_alive on

#хелпер, который берёт информацию о принадлежности пользователя к группе из AD
external_acl_type ldap_search %LOGIN \
/usr/local/libexec/squid/squid_ldap_group \
-R -b "dc=domen,dc=local" \
-f "(&(samaccountname=%v)(memberof=cn=%a,cn=users,dc=domen,DC=local))" \
-D inetuser@domen.local -W /usr/local/etc/squid/authpw \
-K -h host-pdc.domen.local
acl i_allowed external ldap_search internet

acl AUTHENTICATED proxy_auth REQUIRED

acl localnet dst 192.168.0.0/24
#выпускаем всех кто прошёл kerberos аутентификацию на локальные сайты
http_access allow AUTHENTICATED localnet
#выпускаем в инет всех кто в нужной группе
http_access allow i_allowed
#всем остальным оставить попытки и заниматься своими обязанностями.
http_access deny all
в итоге браузер на клиенте требует аутентифицироваться, а в логах сквида вижу:
Код: Выделить весь код
2010/10/29 13:46:00| squid_kerb_auth: DEBUG: Got 'YR TlRMTVNTUAABAAAAl4II4gAAAAAAAAAAAAAAAAAAAAAGAbA
dAAAADw==' from squid (length: 59).
2010/10/29 13:46:00| squid_kerb_auth: DEBUG: Decode 'TlRMTVNTUAABAAAAl4II4gAAAAAAAAAAAAAAAAAAAAAGAbA
dAAAADw==' (decoded length: 40).
2010/10/29 13:46:00| squid_kerb_auth: WARNING: received type 1 NTLM token
2010/10/29 13:46:00| authenticateNegotiateHandleReply: Error validating user via Negotiate. Error re
turned 'BH received type 1 NTLM token'
Т.е. аутентификация не прошла.
Уже 3 месяца пытаюсь разными способами подружить домен и сквид.

-------
В некоторые головы мысли приходят умирать


Отправлено: 14:04, 29-10-2010 | #2

Название темы: Squid3+AD win 2008 R2