Всем привет.
Использую связку squid+kerberos для аутентификации юзеров из АД. squid собран с поддержкой

AUTH_LDAP
AUTH_SASL
GSSAPI_MIT

Из необходимых пакетов стоит:

openldap-sasl-client-2.4.44
krb5-1.14.1
cyrus-sasl-2.1.26_12
cyrus-sasl-gssapi-2.1.26_7
squid-3.5.15_1

Билет от кербероса получаю (через keytab-файл, сгенерённый на контроллере домена). Но вот аутентицировать юзера не могу. В логах ошибка:

ERROR: Negotiate Authentication validating user. Result: {result=BH, notes={message: received type 1 NTLM token; }}

Гугление вообще мало что знает, а то, что знает от разряда "у меня вот в такой конфигурации работает". Перепробовал много чего, в том числе и пересборка squid'a с системным/heimdal керберосом, но ничего не поменялось.
Рядом, на Debian'e с теми же конфигами работает. Вот конфиги:

squid.conf:
...
auth_param negotiate program /usr/local/libexec/squid/negotiate_kerberos_auth -s HTTP/proxy.domain.local@DOMAIN.LOCAL
auth_param negotiate children 50 startup=10 idle=5
auth_param negotiate keep_alive on
...

/etc/krb5.conf

[libdefaults]
        default_realm = DOMAIN.LOCAL
        default_keytab_name = /usr/local/etc/squid/squid.keytab

[realms]
        OVOSTAR.LOCAL = {
                kdc = srvad.domain.local
                kdc = srvad2.domain.local
                admin_server = srvad.domain.local
                default_domain = domain.local
        }

[domain_realm]
        .domain.local = DOMAIN.LOCAL
        domain.local = DOMAIN.LOCAL

[logging]
  kdc = FILE:/var/log/kerberos/kdc.log
  admin_server = FILE:/var/log/kerberos/kadmin.log
  default = FILE:/var/log/kerberos/default.log


# kinit -k HTTP/proxy.domain.local@DOMAIN.LOCAL
# klist
Credentials cache: FILE:/tmp/krb5cc_0
        Principal: HTTP/proxy.domain.local@DOMAIN.LOCAL

  Issued                Expires               Principal
Apr  2 18:36:22 2016  Apr  3 04:36:22 2016  krbtgt/DOMAIN.LOCAL@DOMAIN.LOCAL

Ответить