Kerberos ktutil, 어떤 종류의 암호화를 사용할 수 있습니까?


9

를 사용하여 키 탭을 만들려고합니다 ktutil. 암호화 유형을 선택하지만 ktutil매뉴얼 페이지에 가능한 선택 목록이 없습니다. 또한 어떤 암호화 방법이 가장 좋은지 모르겠습니다! 이 두 가지를 어떻게 찾을 수 있습니까? 가장 강력한 암호화를 원합니다.

$ ktutil
> add_entry -password -p me@DOMAIN.COM -k 1 -e [what goes here?!]

답변:


8

서비스의 키탭을 만들려고하면 84104에서 제공하는 ktutil 솔루션이 올바른 것입니다. 암호를 임의 화하고 키탭없이 계정을 사용할 수 없게하므로 일부 자동화 된 프로세스에 사용하려는 키탭에 대한 끔찍한 아이디어입니다.

키탭을 암호 저장소로 사용하여 프로세스를 자동화하기 위해 kinit에 공급하는 경우 암호를 사용하여 kinit를 실행할 때 얻는 enctype을 사용하는 것이 좋습니다.

klist -e

원하는 줄이 이것입니다. ktutil에 나열된 etype을 사용하십시오.

    Etype (skey, tkt): aes256-cts-hmac-sha1-96, aes256-cts-hmac-sha1-96

이 ktutil 사용은 비밀번호를 일반 텍스트 파일에 저장하는 것과 정확히 동일합니다. 키탭을 읽을 수있는 사람은 누구나 시스템에 자신의 신원을 가장 할 수 있습니다. 또한 이러한 명령은 MIT 버전, heimdal ktutil 및 klist가 약간 다릅니다 (Heimdal은 최신 버전의 OS X에서 사용되는 kerberos 버전입니다)


1
그리고 가장 강력한 암호화를 사용하려고하더라도 Kerberos 서버가 지원하고 허용하도록 구성된만큼 강력한 암호화 만 사용하고 있는지 확인하십시오.
Ryan Bolger

3

ktutil기존 키탭에서 키탭을 만들지 않는 한 사용 하지 마십시오 . kadmin대신 사용하십시오 .

# kadmin -p user/admin
Password for user/admin@EXAMPLE.COM:
kadmin: add_principal -randkey service/server.example.com
WARNING: no policy specified for service/server.example.com@EXAMPLE.COM; defaulting to no policy
Principal "service/server.example.com@EXAMPLE.COM" created.
kadmin:  ktadd -k /etc/service/service.keytab service/server.example.com
Entry for principal service/server.example.com with kvno 2, encryption type aes256-cts-hmac-sha1-96 added to keytab
Entry for principal service/server.example.com with kvno 2, encryption type camellia256-cts-cmac added to keytab
kadmin: quit

kdc에 따라 kdc.conf다른 암호화 : 소금 유형으로 끝날 수 있습니다. 기본 목록은 다음과 같습니다.

aes256-cts-hmac-sha1-96:normal
aes128-cts-hmac-sha1-96:normal
des3-cbc-sha1:normal
arc‐four-hmac-md5:normal

-e원하는 유형 을 사용 하고 지정 하여 키탭을 작성할 때 키탭에서 사용되는 enctype을 제한 (또는 확장) 할 수도 있습니다.


기존 키탭에서 키탭을 만들려는 경우 :

# kutil
ktutil: read_kt /etc/krb5.keytab
ktutil:  l -e
slot KVNO Principal
---- ---- ---------------------------------------------------------------------
   1    6   host/server.example.com@EXAMPLE.COM (aes256-cts-hmac-sha1-96)
   2    6   host/server.example.com@EXAMPLE.COM (camellia256-cts-cmac)
   3    3   HTTP/server.example.com@EXAMPLE.COM (aes256-cts-hmac-sha1-96)
   4    3   HTTP/server.example.com@EXAMPLE.COM (camellia256-cts-cmac)
ktutil: delete_entry 1
ktutil:  l -e
slot KVNO Principal
---- ---- ---------------------------------------------------------------------
   1    6   host/server.example.com@EXAMPLE.COM (camellia256-cts-cmac)
   2    3   HTTP/server.example.com@EXAMPLE.COM (aes256-cts-hmac-sha1-96)
   3    3   HTTP/server.example.com@EXAMPLE.COM (camellia256-cts-cmac)
ktutil: delete_entry 1
ktutil:  l -e
slot KVNO Principal
---- ---- ---------------------------------------------------------------------
   1    3   HTTP/server.example.com@EXAMPLE.COM (aes256-cts-hmac-sha1-96)
   2    3   HTTP/server.example.com@EXAMPLE.COM (camellia256-cts-cmac)
ktutil: write_kt /etc/httpd/http.keytab
ktutil: quit
# klist -ke /etc/httpd/http.keytab
Keytab name: FILE:/etc/httpd/http.keytab
KVNO Principal
---- ---------------------------------------------------------------------
    3   HTTP/server.example.com@EXAMPLE.COM (aes256-cts-hmac-sha1-96)
    3   HTTP/server.example.com@EXAMPLE.COM (camellia256-cts-cmac)

3
Windows Active Directory 서버에 대해 인증 중이며 kadmin을 사용하는 것은 가능하지 않습니다.
Dylan Klomparens가

"기존 키탭에서 키탭을 만들려고하지 않는 한 ktutil을 사용하지 마십시오. 대신 kadmin을 사용하십시오." -이유를 명확히 하시겠습니까? 원칙 이름도 작성하는 것입니까?
Samuel Harmer

@ Styne666 -randkey의 키 공간은 모든 입력 가능한 키의 키 공간보다 큽니다.
84104
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.