Всем привет. Уже второй день занимаюсь чем-то непотребным с пингвинами. А именно пытаюсь настроить Kerberos-авторизацию в Squid 3. Инфраструктура следующая: сервак на бубунту сервер 14.04. На нем стоит самба 4, в которой поднят домен через samba-tool domain provision. На этом же серваке стоит кальмар. Домен фукнционирует нормально. Компы загоняются, юзеры авторизуются, все ок. Пока настроил basic-ldap аутентификацию в сквиде, чтобы инет у пользователей работал. Пытаюсь сгенерить файл keytab следующей командой:
msktutil -c -b "CN=Computers" -s HTTP/{SERVERNAME}.{domainname} -k /etc/squid3/PROXY.keytab --computer-name {SERVERNAME} --upn HTTP/{SERVERNAME}.{domainname} --server {SERVERNAME}.{domainname} --verbose
-- init_password: Wiping the computer password structure
-- generate_new_password: Generating a new, random password for the computer account
-- generate_new_password: Characters read from /dev/udandom = 82
-- create_fake_krb5_conf: Created a fake krb5.conf file: /tmp/.msktkrb5.conf-ZxlBKg
-- reload: Reloading Kerberos Context
-- finalize_exec: SAM Account Name is: {SERVERNAME}$
-- try_machine_keytab_princ: Trying to authenticate for {SERVERNAME}$ from local keytab...
-- try_machine_keytab_princ: Error: krb5_get_init_creds_keytab failed (No such file or directory)
-- try_machine_keytab_princ: Authentication with keytab failed
-- try_machine_keytab_princ: Trying to authenticate for host/{servername} from local keytab...
-- try_machine_keytab_princ: Error: krb5_get_init_creds_keytab failed (Client not found in Kerberos database)
-- try_machine_keytab_princ: Authentication with keytab failed
-- try_machine_password: Trying to authenticate for {SERVERNAME}$ with password.
-- create_default_machine_password: Default machine password for {SERVERNAME}$ is {servername}
-- try_machine_password: Error: krb5_get_init_creds_keytab failed (Bad encryption type)
-- try_machine_password: Authentication with password failed
-- try_user_creds: Checking if default ticket cache has tickets...
-- finalize_exec: Authenticated using method 4
-- ldap_connect: Connecting to LDAP server: {SERVERNAME}.{domainname} try_tls=YES
-- ldap_connect: Connecting to LDAP server: {SERVERNAME}.{domainname} try_tls=NO
SASL/GSSAPI authentication started
Error: ldap_sasl_interactive_bind_s failed (Local error)
Error: ldap_connect failed
--> Is your kerberos ticket expired? You might try re-"kinit"ing.
-- ~KRB5Context: Destroying Kerberos Context
Попробовал без генерации keytab сделать kinit и затем в squid.conf прописал
auth_param negotiate program /usr/lib/squid3/negotiate_kerberos_auth -r -s HTTP/{servername}@{DOMAINNAME}
2015/09/16 14:31:18| ERROR: Negotiate Authentication validating user. Error returned 'BH received type 1 NTLM token'
2015/09/16 14:31:30| ERROR: Negotiate Authentication validating user. Error returned 'BH gss_acquire_cred() failed: Unspecified GSS failure. Minor code may provide more information. Permission denied'