The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Kerberos-squid-Windows 2008 R2"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Авторизация и аутентификация, LDAP / Linux)
Изначальное сообщение [ Отслеживать ]

"Kerberos-squid-Windows 2008 R2"  –1 +/
Сообщение от operator (ok) on 21-Июл-10, 22:22 
Здравствуйте все.

уже вторую неделю бъюсь над решением такой вот связки.

За основу взяты 3 мануала:

http://klaubert.wordpress.com/2008/01/09/squid-kerberos-auth.../
http://serverfault.com/questions/66556/getting-squid-to-auth...
http://wiki.squid-cache.org/ConfigExamples/Authenticate/Kerb...

Система:
CentOS release 5.3 (Final)
pam_krb5-2.2.14-15
krb5-devel-1.6.1-36.el5_5.4
krb5-libs-1.6.1-36.el5_5.4
krb5-workstation-1.6.1-36.el5_5.4
samba 3.3.8
openldap-2.3.43-12.el5
openldap-devel-2.3.43-12.el5
собственно собраный msktutil-0.3.16.7

Создаю кейтаб:

/opt/msktutil/sbin/msktutil -c -b "CN=COMPUTERS" -s HTTP/suidsrv.test.xxx.local -h squidsrv.test.xxx.local -k /etc/squid/HTTP.keytab --computer-name squidsrv --upn HTTP/suidsrv.test.xxx.local --server dc2k8r2.test.xxx.local --verbose --enctypes 28

Смотрю, что получилось:

[root@squidsrv ~]# klist -ke /etc/squid/HTTP.keytab
Keytab name: FILE:/etc/squid/HTTP.keytab
KVNO Principal
---- --------------------------------------------------------------------------
  19 HOST/squidsrv.test.xxx.local@TEST.XXX.LOCAL (ArcFour with HMAC/md5)
  19 HOST/squidsrv.test.xxx.local@TEST.XXX.LOCAL (AES-128 CTS mode with 96-bit SHA-1 HMAC)
  19 HOST/squidsrv.test.xxx.local@TEST.XXX.LOCAL (AES-256 CTS mode with 96-bit SHA-1 HMAC)
  19 HOST/SQUIDSRV@TEST.XXX.LOCAL (ArcFour with HMAC/md5)
  19 HOST/SQUIDSRV@TEST.XXX.LOCAL (AES-128 CTS mode with 96-bit SHA-1 HMAC)
  19 HOST/SQUIDSRV@TEST.XXX.LOCAL (AES-256 CTS mode with 96-bit SHA-1 HMAC)
  18 HOST/squidsrv.test.xxx.local@TEST.XXX.LOCAL (DES cbc mode with CRC-32)
  18 HOST/squidsrv.test.xxx.local@TEST.XXX.LOCAL (DES cbc mode with RSA-MD5)
  18 HOST/squidsrv.test.xxx.local@TEST.XXX.LOCAL (ArcFour with HMAC/md5)
  18 HOST/SQUIDSRV@TEST.XXX.LOCAL (DES cbc mode with CRC-32)
  18 HOST/SQUIDSRV@TEST.XXX.LOCAL (DES cbc mode with RSA-MD5)
  18 HOST/SQUIDSRV@TEST.XXX.LOCAL (ArcFour with HMAC/md5)

пользователи (не обязательно администратор) могут вполне получать билеты:

[root@squidsrv ~]# klist
Ticket cache: FILE:/tmp/krb5cc_0
Default principal: Administrator@TEST.XXX.LOCAL

Valid starting     Expires            Service principal
07/21/10 13:40:52  07/21/10 23:38:37  krbtgt/TEST.XXX.LOCAL@TEST.XXX.LOCAL
        renew until 07/22/10 13:40:52
07/21/10 15:30:57  07/21/10 23:38:37  ldap/dc2k8r2.test.xxx.local@
        renew until 07/22/10 13:40:52
07/21/10 15:30:57  07/21/10 15:32:57  kadmin/changepw@TEST.XXX.LOCAL
        renew until 07/21/10 15:32:57
07/21/10 15:32:58  07/21/10 15:34:58  kadmin/changepw@TEST.XXX.LOCAL
        renew until 07/21/10 15:34:58
07/21/10 15:36:00  07/21/10 15:38:00  kadmin/changepw@TEST.XXX.LOCAL
        renew until 07/21/10 15:38:00

Kerberos 4 ticket cache: /tmp/tkt0
klist: You have no tickets cached

Проверка тикета:

[root@squidsrv ~]# kinit -V -t /etc/squid/squid.test.xxx.local.keytab -k  HTTP/squidsrv.test.xxx.local
kinit(v5): KDC has no support for encryption type while getting initial credentials

пробовал на котроллере домена создавать тикет и переносить его на Линукс:

C:\Users\Administrator>ktpass -princ HTTP/squidsrv.test.xxx.local@TEST.XXX.LOCAL
-mapuser squid@test.xxx.local -crypto rc4-hmac-nt -ptype KRB5_NT_PRINCIPAL -pas
s "password" -out squid.test.xxx.local.keytab
Targeting domain controller: DC2K8R2.test.xxx.local
Using legacy password setting method
Successfully mapped HTTP/squidsrv.test.xxx.local to squid.
Key created.
Output keytab to squid.test.xxx.local.keytab:
Keytab version: 0x502
keysize 78 HTTP/squidsrv.test.xxx.local@TEST.XXX.LOCAL ptype 1 (KRB5_NT_PRINCIPA
L) vno 11 etype 0x17 (RC4-HMAC) keylength 16 (0x24fb991d018d54e9c1419e1fe7b62042
)

Результат тот же.

Подскажите куда копать дальше.
Те, кто уже пробовал сделать такую связку, наверняка знают, что можно привести еще кучу дополнительной отладочной информации. Но не хочу засорять форум. Поэтому предоставлю все, что надо только по запросам.

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Kerberos-squid-Windows 2008 R2"  +/
Сообщение от gfh (??) on 22-Июл-10, 10:48 
Та же самая проблема с KDC has no support for encryption type while getting initial credentials. Только сервер W2003 R2. Не подхватывает keytab'ы с любым методом шифрования. Аутенфикацию через пользователя проходит без проблем...
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Kerberos-squid-Windows 2008 R2"  +/
Сообщение от Z0termaNN (ok) on 22-Июл-10, 17:36 
не факт, что линуксовая версия кербероса поддерживает rc4, это зависит от версии kerberos.
так же не факт, что виндоусовая версия понимает aes, поэтому для начала обкатайте все на
des-cbc-md5, например
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "Kerberos-squid-Windows 2008 R2"  +/
Сообщение от operator (ok) on 23-Июл-10, 11:12 
Надеюсь, что правильно сделал, но все-равно не помогло:

[root@squidsrv ~]# klist -ke /etc/squid/squid.test.xxx.local.keytab
Keytab name: FILE:/etc/squid/squid.test.xxx.local.keytab
KVNO Principal
---- --------------------------------------------------------------------------
  12 HTTP/squidsrv.test.xxx.local@TEST.XXX.LOCAL (DES cbc mode with RSA-MD5)


[root@squidsrv ~]# kinit -V -t /etc/squid/squid.test.xxx.local.keytab -k  HTTP/squidsrv.test.xxx.local                      
kinit(v5): KDC has no support for encryption type while getting initial credentials

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

4. "Kerberos-squid-Windows 2008 R2"  +/
Сообщение от Z0termaNN (ok) on 23-Июл-10, 14:28 
>[оверквотинг удален]
>[root@squidsrv ~]# klist -ke /etc/squid/squid.test.xxx.local.keytab
>Keytab name: FILE:/etc/squid/squid.test.xxx.local.keytab
>KVNO Principal
>---- --------------------------------------------------------------------------
>  12 HTTP/squidsrv.test.xxx.local@TEST.XXX.LOCAL (DES cbc mode with RSA-MD5)
>
>
>[root@squidsrv ~]# kinit -V -t /etc/squid/squid.test.xxx.local.keytab -k  HTTP/squidsrv.test.xxx.local
>kinit(v5): KDC has no support for encryption type while getting initial credentials
>

kdc не распознает encryption type, поэтому

1. удаляем принципал в виндоусовой базе
2. пересоздаем его еще раз с enctype des-cbc-md5 (т.к. с centos5 используется mit krb 1.6.1, то там нет ENCTYPE_ARCFOUR_* )
3. копируем все это на линукс.
4. правим /etc/krb5.conf в плане default_tgs_enctypes и default_tkt_enctypes

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

5. "Kerberos-squid-Windows 2008 R2"  +/
Сообщение от operator (ok) on 23-Июл-10, 16:26 
>1. удаляем принципал в виндоусовой базе

по вот этой статье http://technet.microsoft.com/ru-ru/library/cc794768(WS.10).aspx удалены Service Principal Name у машины squidsrv и пользователя squid

>2. пересоздаем его еще раз с enctype des-cbc-md5 (т.к. с centos5 используется
>mit krb 1.6.1, то там нет ENCTYPE_ARCFOUR_* )

C:\Users\Administrator>ktpass -princ HTTP/squidsrv.test.xxx.local@TEST.XXX.LOCAL
-mapuser squid@test.xxx.local -crypto des-cbc-md5 -ptype KRB5_NT_PRINCIPAL -pas
s "passwd" -out squid.test.xxx.local.keytab
Targeting domain controller: DC2K8R2.test.xxx.local
Using legacy password setting method
Successfully mapped HTTP/squidsrv.test.xxx.local to squid.
Key created.
Output keytab to squid.test.xxx.local.keytab:
Keytab version: 0x502
keysize 70 HTTP/squidsrv.test.xxx.local@TEST.XXX.LOCAL ptype 1 (KRB5_NT_PRINCIPA
L) vno 13 etype 0x3 (DES-CBC-MD5) keylength 8 (0x2faef498946dd075)

>3. копируем все это на линукс.
>4. правим /etc/krb5.conf в плане default_tgs_enctypes и default_tkt_enctypes

[root@squidsrv ~]# cat /etc/krb5.conf | grep enctypes
default_tgs_enctypes = des-cbc-md5
default_tkt_enctypes = des-cbc-md5

[root@squidsrv ~]# kdestroy
[root@squidsrv ~]# kinit Administrator
Password for Administrator@TEST.XXX.LOCAL:
[root@squidsrv ~]# klist
Ticket cache: FILE:/tmp/krb5cc_0
Default principal: Administrator@TEST.XXX.LOCAL

Valid starting     Expires            Service principal
07/23/10 14:18:59  07/24/10 00:16:38  krbtgt/TEST.XXX.LOCAL@TEST.XXX.LOCAL
        renew until 07/24/10 14:18:59

Kerberos 4 ticket cache: /tmp/tkt0
klist: You have no tickets cached
[root@squidsrv ~]# klist -ke -t /etc/squid/squid.test.xxx.local.keytab
Keytab name: FILE:/etc/squid/squid.test.xxx.local.keytab
KVNO Timestamp         Principal
---- ----------------- --------------------------------------------------------
  13 01/01/70 01:00:00 HTTP/squidsrv.test.xxx.local@TEST.XXX.LOCAL (DES cbc mode with RSA-MD5)
[root@squidsrv ~]# kinit -V -t /etc/squid/squid.test.ssg.local.keytab -k HTTP/squidsrv.test.ssg.local
kinit(v5): KDC has no support for encryption type while getting initial credentials

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

6. "Kerberos-squid-Windows 2008 R2"  +/
Сообщение от Z0termaNN (ok) on 23-Июл-10, 17:05 
1. не сразу обратил внимание, что проблемы с win2008, скорее всего удалили из него весь
   des,
2. очень мог бы помочь лог kdc, не знаю возможно ли его на винде получить.
записи типа :
>Jul 23 16:22:01 kappa krb5kdc[3254](info): AS_REQ (7 etypes {18 17 16 23 1 3 2}) >172.21.100.111: ISSUE: authtime 1279887721, etypes {rep=18 tkt=18 ses=18}, >ldap/gsx.domain.com@REALM for krbtgt/REALM@REALM

3. возможные пути выхода из ситуации:
- раскопать какие виды шифрации в керберос доступны в win2008
- докатить линуксовый керберос до 1.7 или 1.8 , там по крайней мере есть rc4

и последнее - надеюсь, что на юниксе и винде часы синхронизированы.


Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

7. "Kerberos-squid-Windows 2008 R2"  +/
Сообщение от operator (ok) on 23-Июл-10, 17:43 
>1. не сразу обратил внимание, что проблемы с win2008, скорее всего удалили
>из него весь
>   des,

Точно не могу сказать, но по-моему я натыкался на статьи, где говорилось, что в 2008R2 он стандартно отключен. Его возмжно где-то включить, но майкрософт сильно не рекомендует это делать. (типа недостаточно надежный)

>2. очень мог бы помочь лог kdc, не знаю возможно ли его
>на винде получить.
>записи типа :
>>Jul 23 16:22:01 kappa krb5kdc[3254](info): AS_REQ (7 etypes {18 17 16 23 1 3 2}) >172.21.100.111: ISSUE: authtime 1279887721, etypes {rep=18 tkt=18 ses=18}, >ldap/gsx.domain.com@REALM for krbtgt/REALM@REALM

Тоже не в курсе. Кстати вопрос: у меня прописаны пути к логам, но Керберос туда нчего не пишет. (Точнее сказать файлов даже нет).
Как добиться, что бы туда что-то падало?
Как альтернативый совет уже получил внедрение wireshark или еще какого-нибудь сниффера, что бы понять, что же происходит...

>3. возможные пути выхода из ситуации:
>- раскопать какие виды шифрации в керберос доступны в win2008
>- докатить линуксовый керберос до 1.7 или 1.8 , там по крайней
>мере есть rc4

Ок. проверю.

>и последнее - надеюсь, что на юниксе и винде часы синхронизированы.

Конечно, и ДНС тоже работает :-)
В любом случае - спасибо за совет!

Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

8. "Kerberos-squid-Windows 2008 R2"  +/
Сообщение от operator (ok) on 30-Июл-10, 10:01 
>>3. возможные пути выхода из ситуации:
>>- раскопать какие виды шифрации в керберос доступны в win2008
>>- докатить линуксовый керберос до 1.7 или 1.8 , там по крайней
>>мере есть rc4
>
>Ок. проверю.

Проверил: собрал 1.8. Проблема осталась прежней.

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

9. "Kerberos-squid-Windows 2008 R2"  +/
Сообщение от Z0termaNN (ok) on 04-Авг-10, 10:22 
>>>3. возможные пути выхода из ситуации:
>>>- раскопать какие виды шифрации в керберос доступны в win2008
>>>- докатить линуксовый керберос до 1.7 или 1.8 , там по крайней
>>>мере есть rc4
>>
>>Ок. проверю.
>
>Проверил: собрал 1.8. Проблема осталась прежней.

в смысле с rc4 ?

Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

10. "Kerberos-squid-Windows 2008 R2"  +/
Сообщение от operator (ok) on 04-Авг-10, 21:20 
>>Проверил: собрал 1.8. Проблема осталась прежней.
>
>в смысле с rc4 ?

с ArcFour with HMAC/md5.
Проблема вообще-то говоря решилась, но была не в версии MIT Kerberos.
В процессе поиска правильной конфигурации, получилось несколько пользователей с одинаковыми UserPrincipalName. После удаления всех UserPrincipalName и заново созданного кейтаба, все заработало даже с родной версией MIT Kerberos (1.6) CentOS.
До конца недели надеюсь проверить работоспособную конструкцию, и тогда уже полностью отписать конфигурацию и возникшие проблемы.
Спасибо за поддержку.

Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

12. "Kerberos-squid-Windows 2008 R2"  +/
Сообщение от Mc.Sim email on 09-Ноя-11, 12:35 
>[оверквотинг удален]
>>
>>в смысле с rc4 ?
> с ArcFour with HMAC/md5.
> Проблема вообще-то говоря решилась, но была не в версии MIT Kerberos.
> В процессе поиска правильной конфигурации, получилось несколько пользователей с одинаковыми
> UserPrincipalName. После удаления всех UserPrincipalName и заново созданного кейтаба,
> все заработало даже с родной версией MIT Kerberos (1.6) CentOS.
> До конца недели надеюсь проверить работоспособную конструкцию, и тогда уже полностью отписать
> конфигурацию и возникшие проблемы.
> Спасибо за поддержку.

Ну как дела? Отпишись обещанными проблемами и конфигурациями ))

Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

14. "Kerberos-squid-Windows 2008 R2"  +/
Сообщение от Аноним (??) on 31-Дек-15, 01:44 
[libdefaults]
      default_realm = WIN2003R2.HOME
      dns_lookup_kdc = no
      dns_lookup_realm = no
      default_keytab_name = /etc/krb5.keytab
; for Windows 2003
      default_tgs_enctypes = rc4-hmac des-cbc-crc des-cbc-md5
      default_tkt_enctypes = rc4-hmac des-cbc-crc des-cbc-md5
      permitted_enctypes = rc4-hmac des-cbc-crc des-cbc-md5

; for Windows 2008 with AES
;      default_tgs_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
;      default_tkt_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
;      permitted_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
;
; for MIT/Heimdal kdc no need to restrict encryption type

[realms]
      WIN2003R2.HOME = {
              kdc = w2k3r2.win2003r2.home
              admin_server = w2k3r2.win2003r2.home
      }

[domain_realm]
      .linux.home = WIN2003R2.HOME
      .win2003r2.home = WIN2003R2.HOME
      win2003r2.home = WIN2003R2.HOME

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

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

11. "Kerberos-squid-Windows 2008 R2"  +/
Сообщение от operator (ok) on 06-Авг-10, 10:29 
Интересный вопрос:
вот по вот этому мануалу http://serverfault.com/questions/66556/getting-squid-to-auth... необходимо в настройках браузера указывать FQDN прокси. IP - не подходит. Проверил - действительно так.
А есть этому какое-либо объяснение?
Либо по-другому: а можно-ли обойти это ограничение?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

13. "Kerberos-squid-Windows 2008 R2"  +/
Сообщение от Mc.Sim (ok) on 24-Апр-13, 20:07 
> Интересный вопрос:
> вот по вот этому мануалу http://serverfault.com/questions/66556/getting-squid-to-auth...
> необходимо в настройках браузера указывать FQDN прокси. IP - не подходит.
> Проверил - действительно так.
> А есть этому какое-либо объяснение?
> Либо по-другому: а можно-ли обойти это ограничение?

Ограничение не обойти. Kerberos не работает без DNS.

Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Спонсоры:
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2021 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру