Kerberos 구성 파일
Kerberos 구성 특성 krb5.ini 또는 krb5.conf 파일은 WebSphere® Application Server에서 SPNEGO (Simple and Protected GSS-API Negotiation Mechanism) 신뢰 연관 인터셉터(TAI)를 사용하기 위해서 셀에 있는 모든 WebSphere Application Server 인스턴스에서 구성되어야 합니다.

운영 체제 | 기본 위치 |
---|---|
Windows | c:\winnt\krb5.ini 참고: krb5.ini 파일이
c:\winnt 디렉토리에 없는 경우 이 파일은 c:\windows 디렉토리에 있을 수 있습니다.
|
Linux | /etc/krb5.conf |
기타 UNIX 기반 | /etc/krb5/krb5.conf |
z/OS | /etc/krb5/krb5.conf |
IBM i | /QIBM/UserData/OS400/NetworkAuthentication/krb5.conf |
SPNEGO TAI에서 경우 기본 위치 및 Kerberos 구성 파일 이름을 사용하지 않는 경우 java.security.krb5.conf JVM 특성을 지정해야 합니다.
기본 Kerberos 구성 파일은 Windows에서는 /winnt/krb5.ini이고 분산 환경에서는 /etc/krb5입니다. 다른 위치 경로를 지정하는 경우 java.security.krb5.conf JVM 특성도 지정해야 합니다.
예를 들어, krb5.conf 파일이 /opt/IBM/WebSphere/profiles/AppServer/etc/krb5.conf에 지정되는 경우 -Djava.security.krb5.conf=/opt/IBM/WebSphere/profiles/AppServer/etc/krb5.conf를 지정해야 합니다.
- Java™ 특성 java.security.krb5.conf에서 참조되는 파일
- <java.home>/lib/security/krb5.conf
- Microsoft Windows 플랫폼의 c:\winnt\krb5.ini
- UNIX 플랫폼의 /etc/krb5/krb5.conf
- /etc/krb5.conf on Linux platforms.
- WebSphere Application Server를 시작하십시오.
app_server_root/bin 디렉토리에서 wsadmin 명령을 실행하여 명령행 유틸리티를 시작하십시오.
Qshell 명령행의 app_server_root/bin 디렉토리에서 wsadmin 명령을 실행하여 명령행 유틸리티를 시작하십시오.
- wsadmin 프롬프트에서 다음 명령을 입력하십시오.
$AdminTask createKrbConfigFile
이 명령에서 다음 매개변수를 사용할 수 있습니다.표 2. 명령 매개변수. 이 테이블은 $AdminTask createKrbConfigFile 명령에 대한 매개변수를 설명합니다. 옵션 설명 <krbPath> 이 매개변수는 필수입니다. 이 매개변수는 Kerberos 구성(krb5.ini 또는 krb5.conf) 파일의 완전한 파일 시스템 위치를 제공합니다. <realm> 이 매개변수는 필수입니다. 이 매개변수는 Kerberos 영역 이름을 제공합니다. 이 속성의 값은 com.ibm.ws.security.spnego.SPNid.hostName 특성으로 지정된 각 호스트에 대해 Kerberos 서비스 프린시펄 이름을 구성하기 위해 SPNEGO TAI에서 사용됩니다. <kdcHost> 이 매개변수는 필수입니다. 이 매개변수는 Kerberos KDC(Key Distribution Center)의 호스트 이름을 제공합니다. <kdcPort> 이 매개변수는 선택적입니다. 이 매개변수는 KDC의 포트 번호를 제공합니다. 지정되지 않는 경우 기본값은 88입니다. <dns> 이 매개변수는 필수입니다. 이 매개변수는 완전한 호스트 이름을 생성하는 데 사용되는 기본 도메인 이름 서비스(DNS)를 제공합니다. <keytabPath> 이 매개변수는 필수입니다. 이 매개변수는 Kerberos keytab 파일의 파일 시스템 위치를 제공합니다. <encryption> 이 매개변수는 선택적입니다. 이 매개변수는 공백으로 구분되는 지원되는 암호화 유형의 목록을 식별합니다. 지정되는 값은 default_tkt_enctypes 및 default_tgs_enctypes에 사용됩니다. 지정되지 않는 경우 기본 암호화 유형은 des-cbc-md5 및 rc4-hmac입니다.
다음 예제에서 wsadmin 명령은 c:\winnt 디렉토리에 krb5.ini 파일을 작성합니다. 기본 Kerberos keytab 파일도 c:\winnt에 있습니다. 실제 Kerberos 영역 이름은 WSSEC.AUSTIN.IBM.COM이고 KDC 호스트 이름은 host1.austin.ibm.com입니다.
wsadmin>$AdminTask createKrbConfigFile {-krbPath
c:\winnt\krb5.ini -realm WSSEC.AUSTIN.IBM.COM -kdcHost host1.austin.ibm.com
-dns austin.ibm.com -keytabPath c:\winnt\krb5.keytab}
[libdefaults]
default_realm = WSSEC.AUSTIN.IBM.COM
default_keytab_name = FILE:c:\winnt\krb5.keytab
default_tkt_enctypes = des-cbc-md5 rc4-hmac
default_tgs_enctypes = des-cbc-md5 rc4-hmac
[realms]
WSSEC.AUSTIN.IBM.COM = {
kdc = host1.austin.ibm.com:88
default_domain = austin.ibm.com
}
[domain_realm]
.austin.ibm.com = WSSEC.AUSTIN.IBM.COM
Kerberos keytab 파일은 사용자 비밀번호와 유사한 키 목록을 포함합니다. 호스트가 해당 Kerberos keytab 파일을 로컬 디스크에 저장하여 보호하는 것은 중요합니다. krb5.conf 파일 권한은 644이어야 합니다. 이는 이 권한으로 이 파일을 읽고 쓸 수 있지만 이 파일이 속한 그룹의 멤버 및 다른 모든 사용자는 이 파일을 읽을 수만 있음을 의미합니다.
Kerberos keytab 파일에는 사용자 비밀번호와 유사한 키 목록이 포함됩니다. 호스트가 해당 Kerberos keytab 파일을 로컬 디스크에 저장하여 보호하는 것은 중요합니다. krb5.conf 파일 권한은 644이어야 합니다. 이는 이 권한으로 이 파일을 읽고 쓸 수 있지만 이 파일이 속한 그룹의 멤버 및 다른 모든 사용자는 이 파일을 읽을 수만 있음을 의미합니다. 부속, 제어 및 하위(servant)를 실행하는 사용자 ID에는 krb5.conf 및 krb5.keytab 파일에 대한 읽기 액세스 권한이 있어야 합니다.
- 런타임이 krb5.ini 파일의 default_tkt_enctypes 또는 default_tgs_enctypes 항목을 읽을 수 없는 경우 해당 값이 누락되거나 해당 값이 지원되지 않습니다. DES-CBC-MD5 값이 기본값으로 사용됩니다.
![[IBM i]](../images/iseries.gif)
- krb5.conf 파일의 3중 문자를 해당 문자가 나타내는 문자로 대체하십시오.
- WebSphere Application Server에서 생성되는 krb5.conf 파일을 사용하십시오.
- Microsoft Windows 또는 KDC(Key Distribution Center)에서 생성된 keytab 파일을 사용하십시오.
SPNEGO(Simple and Protected GSS-API Negotiation Mechanism) TAI(trust association interceptor)의 Kerberos 구성 설정, Kerberos KDC(Key Distribution Center) 이름 및 영역 설정은 Kerberos 구성 파일에 제공되거나 java.security.krb5.kdc 및 java.security.krb5.realm 시스템 특성 파일을 통해 제공됩니다.