탐색 링크 건너뛰기 | |
인쇄 보기 종료 | |
Oracle Solaris 11.1 관리: 보안 서비스 Oracle Solaris 11.1 Information Library (한국어) |
이 절에서는 Kerberos 소프트웨어에 대한 문제 해결 정보를 제공합니다.
KDC에서 사용하는 키 버전 번호(KVNO)와 시스템에 호스트된 서비스의 /etc/krb5/krb5.keytab에 저장된 서비스 주체 키가 일치하지 않는 경우가 있습니다. 키 테이블 파일을 새 키로 업데이트하지 않은 상태에서 KDC에 새 키 집합이 생성된 경우 KVNO가 동기화되지 않을 수 있습니다. 이 문제는 다음 절차를 사용하여 진단할 수 있습니다.
각 주체의 KVNO가 목록에 포함됩니다.
# klist -k Keytab name: FILE:/etc/krb5/krb5.keytab KVNO Principal ---- -------------------------------------------------------------------------- 2 host/denver.example.com@EXAMPLE.COM 2 host/denver.example.com@EXAMPLE.COM 2 host/denver.example.com@EXAMPLE.COM 2 nfs/denver.example.com@EXAMPLE.COM 2 nfs/denver.example.com@EXAMPLE.COM 2 nfs/denver.example.com@EXAMPLE.COM 2 nfs/denver.example.com@EXAMPLE.COM
# kinit -k
# kvno nfs/denver.example.com nfs/denver.example.com@EXAMPLE.COM: kvno = 3
여기에 나열된 KVNO는 2 대신 3입니다.
krb5.conf 파일의 형식이 올바르지 않은 경우, 다음과 같은 오류 메시지가 터미널 창에 표시되거나 로그 파일에 기록됩니다.
Improper format of Kerberos configuration file while initializing krb5 library
krb5.conf 파일의 형식과 관련된 문제가 있을 경우 연관된 서비스가 공격에 취약할 수 있습니다. Kerberos 기능을 사용하도록 허용하기 전에 문제를 해결해야 합니다.
Kerberos 데이터베이스 전파에 실패한 경우 슬레이브 KDC와 마스터 KDC 간, 그리고 마스터 KDC에서 슬레이브 KDC 서버까지 /usr/bin/rlogin -x를 실행하십시오.
액세스를 제한하도록 KDC가 설정된 경우 rlogin은 사용 안함으로 설정되었으므로 이 문제를 해결하는 데 사용할 수 없습니다. KDC에서 rlogin을 사용으로 설정하려면 eklogin 서비스를 사용으로 설정해야 합니다.
# svcadm enable svc:/network/login:eklogin
문제 해결을 완료한 후에는 eklogin 서비스를 사용 안함으로 설정해야 합니다.
rlogin이 작동하지 않는 경우, KDC의 Keytab 파일 때문에 문제가 발생할 수 있습니다. rlogin 작동할 경우, rlogin 및 전파 소프트웨어에서는 동일한 host/ host-name 주체를 사용하기 때문에 Keytab 파일이나 이름 서비스에 문제가 있는 것이 아닙니다. 이 경우 kpropd.acl 파일이 올바른지 확인하십시오.
Kerberos화된 NFS 파일 시스템 마운트에 실패한 경우 /var/rcache/root 파일이 NFS 서버에 있는지 확인하십시오. root가 파일 시스템을 소유하고 있지 않은 경우 이를 제거하고 다시 마운트해 보십시오.
Kerberos화된 NFS 파일 시스템에 액세스하는 중 문제가 있는 경우 사용자의 시스템과 NFS 서버에서 gssd 서비스가 사용으로 설정되었는지 확인하십시오.
Kerberos화된 NFS 파일 시스템에 액세스하려고 할 때 잘못된 인수 또는 잘못된 디렉토리 오류 메시지가 표시된다면 NFS 파일 시스템을 마운트하려고 할 때 완전 수식 DNS 이름을 사용하는 것이 문제일 수 있습니다. 마운트되는 호스트가 서버 Keytab 파일에 있는 서비스 주체의 호스트 이름 부분과 같지 않습니다.
서버에 이더넷 인터페이스가 여러 개 있는데 "호스트당 복수 주소 레코드" 체계 대신 "인터페이스당 이름" 체계를 사용하도록 DNS를 설정한 경우에도 이 문제가 발생할 수 있습니다. Kerberos 서비스의 경우 다음과 같이 호스트당 복수 주소 레코드를 설정해야 합니다.Ken Hornstein, “Kerberos FAQ,” [http://www.cmf.nrl.navy.mil/CCS/people/kenh/kerberos-faq.html#kerbdns], accessed 10 March 2010.:
my.host.name. A 1.2.3.4 A 1.2.4.4 A 1.2.5.4 my-en0.host.name. A 1.2.3.4 my-en1.host.name. A 1.2.4.4 my-en2.host.name. A 1.2.5.4 4.3.2.1 PTR my.host.name. 4.4.2.1 PTR my.host.name. 4.5.2.1 PTR my.host.name.
이 예의 설정은 서로 다른 인터페이스에 대한 하나의 참조 및 서버 Keytab 파일의 세 서비스 주체 대신 단일 서비스 주체를 허용합니다.
시스템에서 수퍼유저가 되려고 시도하면서 호스트의 Keytab 파일에 root 주체를 이미 추가했는데 인증에 실패할 경우, 확인해야 할 두 가지 잠재적인 문제가 있습니다. 먼저 Keytab 파일의 root 주체가 완전 수식 호스트 이름을 인스턴스로 사용하는지 확인하십시오. 그럴 경우 시스템이 DNS 클라이언트로 올바르게 설정되었는지 /etc/resolv.conf 파일을 확인하십시오.
자격 증명 매핑을 모니터링할 수 있으려면 먼저 /etc/gss/gsscred.conf 파일에서 다음 행의 주석 처리를 해제하십시오.
SYSLOG_UID_MAPPING=yes
다음으로, gssd 서비스가 /etc/gss/gsscred.conf 파일에서 정보를 가져오도록 지정하십시오.
# pkill -HUP gssd
이제 gssd가 자격 증명 매핑을 요청하므로 자격 증명 매핑을 모니터링할 수 있어야 합니다. syslog.conf 파일이 debug 보안 레벨을 사용하여 auth 시스템 설비에 대해 구성된 경우, 매핑이 syslogd에 의해 기록됩니다.