20장. Kerberos Flags 및 주요 별칭 관리
20.1. 서비스 및 호스트용 Kerberos 플래그
다양한 Kerberos 플래그를 사용하여 Kerberos 티켓 동작의 특정 측면을 정의할 수 있습니다. 이 플래그를 service 및 host Kerberos principals에 추가할 수 있습니다.
IdM(Identity Management)의 주체는 다음 Kerberos 플래그를 허용합니다.
OK_AS_DELEGATE
- 이 플래그를 사용하여 위임을 위해 신뢰할 수 있는 Kerberos 티켓을 지정합니다.AD(활성 디렉터리) 클라이언트는 Kerberos 티켓에서
OK_AS_DELEGATE
플래그를 확인하여 사용자 자격 증명을 특정 서버에 전달하거나 위임할 수 있는지 확인합니다. AD는 TGT( ticket-granting ticket)를OK_AS_DELEGATE
가 설정된 서비스 또는 호스트에만 전달합니다. 이 플래그를 사용하면 SSSD(시스템 보안 서비스 데몬)에서 IdM 클라이언트 시스템의 기본 Kerberos 자격 증명 캐시에 AD 사용자 TGT를 추가할 수 있습니다. REQUIRES_PRE_AUTH
- 이 플래그를 사용하여 사전 인증 티켓만 보안 주체에 인증할 수 있도록 지정합니다.
REQUIRES_PRE_AUTH
플래그를 설정하면 KDC(키 배포 센터)에 추가 인증이 필요합니다. TGT가 TGT가 사전 인증되지 않은 경우에만REQUIRES_PRE_AUTH
의 보안 주체에 대해 TGT를 발행합니다.REQUIRES_PRE_AUTH
를 지우면 선택한 서비스 또는 호스트에 대해 사전 인증을 비활성화하면 CloudEvent의 부하가 줄어들지만 장기 키에서 무차별 공격 가능성이 약간 높아집니다. OK_TO_AUTH_AS_DELEGATE
OK_TO_AUTH_AS_DELEGATE
플래그를 사용하여 서비스가 사용자를 대신하여 kerberos 티켓을 받을 수 있도록 지정합니다. 이는 프로토콜 전환을 수행하기에 충분하지만, 사용자를 대신하여 다른 티켓을 얻으려면 서비스에OK_AS_DELEGATE
플래그와 키 분배 센터 측에서 허용되는 해당 정책 결정이 필요합니다.
20.1.1. 웹 UI에서 Kerberos 플래그 설정
OK_AS_DELEGATE
,REQUIRES_PRE_AUTH
, OK_TO_AUTH_AS_DELEGATE
를 주체에 추가하려면 다음을 수행하십시오.
- ID 기본 탭을 통해 액세스할 수 있는 Services (서비스)를 선택합니다.
그림 20.1. 서비스 목록
- 플래그를 추가할 서비스를 클릭합니다.
- 설정할 옵션을 확인합니다. 예를 들어
REQUIRES_PRE_AUTH
플래그를 설정하려면 Requires pre-authentication 옵션을 확인합니다.그림 20.2.
REQUIRES_PRE_AUTH
플래그 추가다음 표에는 Kerberos 플래그의 이름과 웹 UI의 해당 이름이 나열되어 있습니다.표 20.1. WebUI에서의 Kerberos 플래그 매핑 Kerberos 플래그 이름 웹 UI 옵션 OK_AS_DELEGATE 신뢰할 수 있는 위임 REQUIRES_PRE_AUTH 사전 인증 필요 OK_TO_AUTH_AS_DELEGATE 사용자로 인증할 수 있는 신뢰할 수 있음
20.1.2. 명령줄에서 Kerberos 플래그 설정 및 제거
명령행의 주체에 플래그를 추가하거나 플래그를 제거하려면 ipa service-mod 명령에 다음 옵션 중 하나를 추가합니다.
--ok-as-delegate
forOK_AS_DELEGATE
--requires-pre-auth
forREQUIRES_PRE_AUTH
--OK-to-auth-as-delegate
forOK_TO_AUTH_AS_DELEGATE
플래그를 추가하려면 해당 옵션을
1
로 설정합니다. 예를 들어 서비스/ipa.example.com@EXAMPLE.COM 주체에 OK_AS_DELEGATE
플래그를 추가하려면 다음을 수행합니다.
$ ipa service-mod service/ipa.example.com@EXAMPLE.COM --ok-as-delegate=1
플래그를 제거하거나 비활성화하려면 해당 옵션을
0
으로 설정합니다. 예를 들어 test/ipa.example.com@EXAMPLE.COM 주체에 대해 REQUIRES_PRE_AUTH
플래그를 비활성화하려면 다음을 수행합니다.
$ ipa service-mod test/ipa.example.com@EXAMPLE.COM --requires-pre-auth=0
20.1.3. 명령줄에서 Kerberos 플래그 표시
현재 보안 주체에 대해
OK_AS_DELEGATE
가 설정되어 있는지 확인하려면 다음을 수행하십시오.
- kvno 유틸리티를 실행합니다.
- klist -f 명령을 실행합니다.
OK_AS_DELEGATE
는 klist -f 출력의 O
문자로 표시됩니다.
$ kvno test/ipa.example.com@EXAMPLE.COM
$ klist -f
Ticket cache: KEYRING:persistent:0:0
Default principal: admin@EXAMPLE.COM
Valid starting Expires Service principal
02/19/2014 09:59:02 02/20/2014 08:21:33 test/ipa/example.com@EXAMPLE.COM
Flags: FATO
Kerberos 플래그 이름 | 약어 |
---|---|
OK_AS_DELEGATE | O |
REQUIRES_PRE_AUTH | A |
OK_TO_AUTH_AS_DELEGATE | F |
현재 보안 주체에 설정된 플래그를 찾으려면
kadmin.local
유틸리티를 사용합니다. 현재 플래그는 kadmin.local
출력의 Attributes
행에 표시됩니다. 예를 들면 다음과 같습니다.
# kadmin.local
kadmin.local: getprinc test/ipa.example.com
Principal: test/ipa.example.com@EXAMPLE.COM
Expiration date: [never]
...
Attributes: REQUIRES_PRE_AUTH OK_AS_DELEGATE OK_TO_AUTH_AS_DELEGATE
Policy: [none]