JavaScript is required to for searching.
탐색 링크 건너뛰기
인쇄 보기 종료
Oracle Solaris 11.1 관리: 보안 서비스     Oracle Solaris 11.1 Information Library (한국어)
search filter icon
search icon

문서 정보

머리말

제1부보안 개요

1.  보안 서비스(개요)

제2부시스템, 파일 및 장치 보안

2.  시스템 보안 관리(개요)

3.  시스템에 대한 액세스 제어(작업)

4.  바이러스 검사 서비스(작업)

5.  장치에 대한 액세스 제어(작업)

6.  BART를 사용하여 파일 무결성 확인(작업)

7.  파일에 대한 액세스 제어(작업)

제3부역할, 권한 프로파일 및 권한

8.  역할 및 권한 사용(개요)

9.  역할 기반 액세스 제어 사용(작업)

10.  Oracle Solaris의 보안 속성(참조)

제4부암호화 서비스

11.  암호화 프레임워크(개요)

12.  암호화 프레임워크(작업)

13.  키 관리 프레임워크

제5부인증 서비스 및 보안 통신

14.  플러그 가능한 인증 모듈 사용

15.  Secure Shell 사용

16.  Secure Shell(참조)

17.  단순 인증 및 보안 계층 사용

18.  네트워크 서비스 인증(작업)

제6부Kerberos 서비스

19.  Kerberos 서비스 소개

20.  Kerberos 서비스 계획

21.  Kerberos 서비스 구성(작업)

Kerberos 서비스 구성(작업 맵)

추가 Kerberos 서비스 구성(작업 맵)

KDC 서버 구성

자동으로 마스터 KDC를 구성하는 방법

대화식으로 마스터 KDC를 구성하는 방법

수동으로 마스터 KDC를 구성하는 방법

LDAP 데이터 서버를 사용하도록 KDC를 구성하는 방법

자동으로 슬레이브 KDC를 구성하는 방법

대화식으로 슬레이브 KDC를 구성하는 방법

수동으로 슬레이브 KDC를 구성하는 방법

마스터 서버에서 TGS(티켓 부여 서비스) 키를 새로 고치는 방법

영역 간 인증 구성

계층 영역 간 인증 설정 방법

직접 영역 간 인증 설정 방법

Kerberos 네트워크 애플리케이션 서버 구성

Kerberos 네트워크 애플리케이션 서버 구성 방법

FTP 실행 시 Kerberos를 통한 일반 보안 서비스 사용 방법

Kerberos NFS 서버 구성

Kerberos NFS 서버 구성 방법

자격 증명 테이블을 만드는 방법

자격 증명 테이블에 단일 항목 추가 방법

영역 간 자격 증명 매핑 제공 방법

Kerberos 보안 모드가 여러 개인 보안 NFS 환경 설정 방법

Kerberos 클라이언트 구성

Kerberos 클라이언트 구성(작업 맵)

Kerberos 클라이언트 설치 프로파일을 만드는 방법

자동으로 Kerberos 클라이언트를 구성하는 방법

대화식으로 Kerberos 클라이언트를 구성하는 방법

Active Directory 서버에 대한 Kerberos 클라이언트 구성 방법

수동으로 Kerberos 클라이언트를 구성하는 방법

TGT(티켓 부여 티켓) 확인을 사용 안함으로 설정하는 방법

Kerberos로 보호된 NFS 파일 시스템에 root 사용자로 액세스하는 방법

Kerberos 영역에서 사용자의 자동 마이그레이션을 구성하는 방법

계정 잠금 구성 방법

모든 TGT(티켓 부여 티켓)를 자동으로 갱신하는 방법

KDC와 Kerberos 클라이언트 간의 클럭 동기화

마스터 KDC와 슬레이브 KDC 교체

교체 가능한 슬레이브 KDC 구성 방법

마스터 KDC와 슬레이브 KDC 교체 방법

Kerberos 데이터베이스 관리

Kerberos 데이터베이스 백업 및 전파

kpropd.acl 파일

kprop_script 명령

Kerberos 데이터베이스 백업 방법

Kerberos 데이터베이스 복원 방법

서버 업그레이드 후 Kerberos 데이터베이스 변환 방법

증분 전파를 사용하도록 마스터 KDC를 재구성하는 방법

증분 전파를 사용하도록 슬레이브 KDC를 재구성하는 방법

전체 전파를 사용하도록 슬레이브 KDC를 구성하는 방법

KDC 서버 동기화 여부 확인 방법

수동으로 슬레이브 KDC에 Kerberos 데이터베이스를 전파하는 방법

병렬 전파 설정

병렬 전파 설정을 위한 구성 단계

stash 파일 관리

stash 파일 제거 방법

새 마스터 키 사용 방법

LDAP 디렉토리 서버에서 KDC 관리

비Kerberos 객체 클래스 유형에서 Kerberos 주체 속성을 함께 사용하는 방법

LDAP 디렉토리 서버에서 영역 삭제 방법

Kerberos 서버에서 보안 수준 향상

KDC 서버에 대한 액세스 제한 방법

사전 파일을 사용하여 암호 보안 수준을 향상시키는 방법

22.  Kerberos 오류 메시지 및 문제 해결

23.  Kerberos 주체 및 정책 관리(작업)

24.  Kerberos 응용 프로그램 사용(작업)

25.  Kerberos 서비스(참조)

제7부Oracle Solaris에서 감사

26.  감사(개요)

27.  감사 계획

28.  감사 관리(작업)

29.  감사(참조)

용어집

색인

Kerberos 클라이언트 구성

Kerberos 클라이언트에는 Kerberos 서비스를 사용해야 하는 네트워크의 KDC 서버가 아닌 호스트가 포함됩니다. 이 절에서는 root 인증을 사용하여 NFS 파일 시스템을 마운트하는 자세한 내용과 함께 Kerberos 클라이언트 설치 절차를 제공합니다.

Kerberos 클라이언트 구성(작업 맵)

다음 작업 맵에는 Kerberos 클라이언트 설정과 관련된 모든 절차가 포함되어 있습니다. 각 행에서는 작업 식별자, 해당 작업을 수행하고자 하는 이유 설명, 작업에 대한 링크를 차례로 제공합니다.

작업
설명
수행 방법
Kerberos 클라이언트 설치 프로파일을 설정합니다.
Kerberos 클라이언트를 자동으로 설치하는 데 사용할 수 있는 클라이언트 설치 프로파일을 생성합니다.
Kerberos 클라이언트를 구성합니다.
수동으로 Kerberos 클라이언트를 설치합니다. 각 클라이언트 설치에 고유 설치 매개변수가 필요한 경우 이 절차를 사용하십시오.
자동으로 Kerberos 클라이언트를 설치합니다. 각 클라이언트에 대한 설치 매개변수가 동일한 경우 이 절차를 사용하십시오.
대화식으로 Kerberos 클라이언트를 설치합니다. 설치 매개변수 중 일부만 변경해야 할 경우 이 절차를 사용하십시오.
자동으로 Active Directory 서버의 Kerberos 클라이언트를 설치합니다.
클라이언트가 root 사용자로 NFS 파일 시스템에 액세스할 수 있도록 합니다.
클라이언트가 root 액세스를 사용하여 공유되는 NFS 파일 시스템을 마운트할 수 있도록 클라이언트에서 root 주체를 만듭니다. 또한 cron 작업을 실행할 수 있도록 클라이언트가 NFS 파일 시스템에 대한 비대화식 root 액세스를 설정할 수 있도록 합니다.
클라이언트 TGT(티켓 부여 티켓)를 발행한 KDC의 확인을 사용 안함으로 설정합니다.
로컬 keytab 파일에 host 주체가 저장되지 않은 클라이언트가 TGT를 발행한 KDC와 host 주체를 발행한 서버가 동일한지 확인하는 보안 점검을 건너 뛸 수 있도록 합니다.

Kerberos 클라이언트 설치 프로파일을 만드는 방법

이 절차에서는 Kerberos 클라이언트를 설치할 때 사용할 수 있는 kclient 프로파일을 만듭니다. kclient 프로파일을 사용하면 입력 오류 발생 가능성이 줄어듭니다. 또한 이 프로파일을 사용하면 대화식 프로세스에 비해 사용자 개입이 줄어듭니다.

  1. 수퍼유저로 로그인합니다.
  2. kclient 설치 프로파일을 만듭니다.

    샘플 kclient 프로파일은 다음과 같이 표시될 수 있습니다.

    client# cat /net/denver.example.com/export/install/profile
    REALM EXAMPLE.COM
    KDC kdc1.example.com
    ADMIN clntconfig
    FILEPATH /net/denver.example.com/export/install/krb5.conf
    NFS 1
    DNSLOOKUP none

자동으로 Kerberos 클라이언트를 구성하는 방법

시작하기 전에

이 절차에서는 설치 프로파일을 사용합니다. Kerberos 클라이언트 설치 프로파일을 만드는 방법을 참조하십시오.

이 작업을 완료하려면 root 역할을 맡아야 합니다. 자세한 내용은 지정된 관리 권한을 사용하는 방법을 참조하십시오.

예 21-8 명령줄 대체를 사용하여 자동으로 Kerberos 클라이언트 구성

다음 예에서는 설치 프로파일에 설정된 DNSARGKDC 매개변수를 대체합니다.

# /usr/sbin/kclient -p /net/denver.example.com/export/install/profile\
-d dns_fallback -k kdc2.example.com

Starting client setup
---------------------------------------------------

kdc1.example.com

Setting up /etc/krb5/krb5.conf.

Obtaining TGT for clntconfig/admin ...
Password for clntconfig/admin@EXAMPLE.COM: <Type the password>

nfs/client.example.com entry ADDED to KDC database.
nfs/client.example.com entry ADDED to keytab.

host/client.example.com entry ADDED to KDC database.
host/client.example.com entry ADDED to keytab.

Copied /net/denver.example.com/export/install/krb5.conf.

---------------------------------------------------
Setup COMPLETE.

client#

대화식으로 Kerberos 클라이언트를 구성하는 방법

이 절차에서는 설치 프로파일 없이 kclient 설치 유틸리티를 사용합니다. Oracle Solaris 11 릴리스에서는 kclient 유틸리티가 향상되어 사용이 간편해지고 Active Directory 서버에서 작동할 수 있게 되었습니다. 자세한 내용은 Active Directory 서버에 대한 Kerberos 클라이언트 구성 방법을 참조하십시오. 이전 릴리스에서 kclient를 실행하는 예는 예 21-10을 참조하십시오.

시작하기 전에

이 작업을 완료하려면 root 역할을 맡아야 합니다. 자세한 내용은 지정된 관리 권한을 사용하는 방법을 참조하십시오.

예 21-9 kclient 설치 유틸리티 실행

client# /usr/sbin/kclient

Starting client setup
---------------------------------------------------

Is this a client of a non-Solaris KDC ? [y/n]: n
        No action performed.
Do you want to use DNS for kerberos lookups ? [y/n]: n
        No action performed.
Enter the Kerberos realm: EXAMPLE.COM
Specify the KDC hostname for the above realm: kdc1.example.com

Note, this system and the KDC's time must be within 5 minutes of each other for
Kerberos to function. Both systems should run some form of time synchronization
system like Network Time Protocol (NTP).
Do you have any slave KDC(s) ? [y/n]: y
Enter a comma-separated list of slave KDC host names: kdc2.example.com

Will this client need service keys ? [y/n]: n
        No action performed.
Is this client a member of a cluster that uses a logical host name ? [y/n]: n
        No action performed.
Do you have multiple domains/hosts to map to realm ? [y/n]: y
Enter a comma-separated list of domain/hosts to map to the default realm: engineering.example.com, \
        example.com

Setting up /etc/krb5/krb5.conf.

Do you plan on doing Kerberized nfs ? [y/n]: y
Do you want to update /etc/pam.conf ? [y/n]: y
Enter a comma-separated list of PAM service names in the following format:
service:{first|only|optional}: xscreensaver:first
Configuring /etc/pam.conf.

Do you want to copy over the master krb5.conf file ? [y/n]: n
        No action performed.

---------------------------------------------------
Setup COMPLETE.

예 21-10 Oracle Solaris 10 릴리스에서 kclient 설치 유틸리티 실행

다음 출력에서는 kclient 명령 실행 결과를 보여 줍니다.

client# /usr/sbin/kclient

Starting client setup
---------------------------------------------------

Do you want to use DNS for kerberos lookups ? [y/n]: n
        No action performed.
Enter the Kerberos realm: EXAMPLE.COM
Specify the KDC hostname for the above realm: kdc1.example.com

Setting up /etc/krb5/krb5.conf.

Enter the krb5 administrative principal to be used: clntconfig/admin
Obtaining TGT for clntconfig/admin ...
Password for clntconfig/admin@EXAMPLE.COM: <Type the password>
Do you plan on doing Kerberized nfs ? [y/n]: n

host/client.example.com entry ADDED to KDC database.
host/client.example.com entry ADDED to keytab.

Do you want to copy over the master krb5.conf file ? [y/n]: y
Enter the pathname of the file to be copied: \
/net/denver.example.com/export/install/krb5.conf

Copied /net/denver.example.com/export/install/krb5.conf.

---------------------------------------------------
Setup COMPLETE !
#

Active Directory 서버에 대한 Kerberos 클라이언트 구성 방법

이 절차에서는 설치 프로파일 없이 kclient 설치 유틸리티를 사용합니다.

시작하기 전에

root 역할을 맡아야 합니다. 자세한 내용은 지정된 관리 권한을 사용하는 방법을 참조하십시오.

  1. (옵션) 클라이언트에 대한 DNS 리소스 레코드 생성을 사용으로 설정합니다.
    client# sharectl set -p ddns_enable=true smb
  2. kclient 유틸리티를 실행합니다.

    -T 옵션을 사용하면 KDC 서버 유형이 선택됩니다. 이 경우 Active Directory 서버가 선택됩니다.

    client# kclient -T ms_ad

    기본적으로 관리자 주체에 대한 암호를 제공해야 합니다.

예 21-11 kclient를 사용하여 Active Directory 서버에 대한 Kerberos 클라이언트 구성

다음 출력에서는 ms_ad(Microsoft Active Directory) 서버 유형 인수를 사용하여 kclient 명령을 실행한 결과를 보여 줍니다. 이름이 EXAMPLE.COM인 Active Directory 도메인에 클라이언트가 결합됩니다.

client# /usr/sbin/kclient -T ms_ad

Starting client setup
---------------------------------------------------

Attempting to join 'CLIENT' to the 'EXAMPLE.COM' domain.
Password for Administrator@EXAMPLE.COM: <Type the password>
Forest name found: example.com
Looking for local KDCs, DCs and global catalog servers (SVR RRs).

Setting up /etc/krb5/krb5.conf

Creating the machine account in AD via LDAP.
---------------------------------------------------
Setup COMPLETE.
#

수동으로 Kerberos 클라이언트를 구성하는 방법

이 절차에서는 다음 구성 매개변수가 사용됩니다.

시작하기 전에

root 역할을 맡아야 합니다. 자세한 내용은 지정된 관리 권한을 사용하는 방법을 참조하십시오.

  1. Kerberos 구성 파일(krb5.conf)을 편집합니다.

    Kerberos 기본 버전에서 파일을 변경하려면 영역 이름 및 서버 이름을 변경해야 합니다. gkadmin에 대한 도움말 파일의 경로도 식별해야 합니다.

    kdc1 # cat /etc/krb5/krb5.conf
    [libdefaults]
            default_realm = EXAMPLE.COM
    
    [realms]
            EXAMPLE.COM = {
            kdc = kdc1.example.com
            kdc = kdc2.example.com
            admin_server = kdc1.example.com
            }
    
    [domain_realm]
            .example.com = EXAMPLE.COM
    #
    # if the domain name and realm name are equivalent, 
    # this entry is not needed
    #
    [logging]
            default = FILE:/var/krb5/kdc.log
            kdc = FILE:/var/krb5/kdc.log
    
    [appdefaults]
        gkadmin = {
            help_url = http://docs.oracle.com/cd/E23824_01/html/821-1456/aadmin-23.html

    주 - 암호화 유형을 제한하려는 경우 default_tkt_enctypes 또는 default_tgs_enctypes 행을 설정할 수 있습니다. 암호화 유형 제한과 관련된 문제에 대한 설명은 Kerberos 암호화 유형 사용을 참조하십시오.


  2. (옵션) KDC를 찾는 데 사용되는 프로세스를 변경합니다.

    기본적으로 Kerberos 영역과 KDC 간의 매핑은 다음 순서로 확인됩니다.

    • krb5.confrealms 섹션에 있는 정의

    • DNS에서 SRV 레코드 조회

    dns_lookup_kdc 또는 dns_fallbackkrb5.conf 파일의 libdefaults 섹션에 추가하여 이 동작을 변경할 수 있습니다. 자세한 내용은 krb5.conf(4) 매뉴얼 페이지를 참조하십시오. 항상 참조가 먼저 시도됩니다.

  3. (옵션) 호스트에 대한 영역을 확인하는 데 사용되는 프로세스를 변경합니다.

    기본적으로 호스트와 영역 간의 매핑은 다음 순서로 확인됩니다.

    • KDC가 참조를 지원하는 경우 KDC가 클라이언트에 호스트가 속한 영역을 알릴 수 있음

    • krb5.conf 파일의 domain_realm 정의

    • 호스트의 DNS 도메인 이름

    • 기본 영역

    dns_lookup_kdc 또는 dns_fallbackkrb5.conf 파일의 libdefaults 섹션에 추가하여 이 동작을 변경할 수 있습니다. 자세한 내용은 krb5.conf(4) 매뉴얼 페이지를 참조하십시오. 항상 참조가 먼저 시도됩니다.

  4. (옵션) NTP 또는 다른 클럭 동기화 방식을 사용하여 클라이언트의 클럭을 마스터 KDC의 클럭과 동기화합니다.

    NTP(Network Time Protocol)를 설치하여 사용할 필요가 없습니다. 하지만 인증이 성공하려면 모든 클럭이 krb5.conf 파일의 clockskew 관계에 정의된 최대 차이 범위 내에서 KDC 서버의 시간과 동기화되어야 합니다. NTP에 대한 자세한 내용은 KDC와 Kerberos 클라이언트 간의 클럭 동기화를 참조하십시오.

  5. kadmin을 시작합니다.

    새 Kerberos 주체를 만드는 방법에 설명된 대로 그래픽 Kerberos 관리 도구를 사용하여 주체를 추가할 수 있습니다. 이 작업을 수행하려면 마스터 KDC를 구성할 때 만든 admin 주체 이름 중 하나로 로그인해야 합니다. 하지만 다음 예에서는 명령줄을 사용하여 필요한 주체를 추가하는 방법을 보여 줍니다.

    denver # /usr/sbin/kadmin -p kws/admin
    Enter password: <Type kws/admin password>
    kadmin: 
    1. (옵션) 사용자 주체가 존재하지 않을 경우 사용자 주체를 만듭니다.

      이 호스트에 연결된 사용자에게 주체가 지정되지 않은 경우에만 사용자 주체를 만들어야 합니다.

      kadmin: addprinc mre
      Enter password for principal mre@EXAMPLE.COM: <Type the password>
      Re-enter password for principal mre@EXAMPLE.COM: <Type it again>
      kadmin: 
    2. (옵션) root 주체를 만들고 서버의 keytab 파일에 주체를 추가합니다.

      클라이언트가 NFS 서비스를 사용하여 마운트된 파일 시스템에 대해 root 액세스를 실행할 수 있도록 이 단계를 수행해야 합니다. cron 작업을 root로 실행하는 등 비대화식 root 액세스가 필요한 경우에도 이 단계를 수행해야 합니다.

      클라이언트가 NFS 서비스를 사용하여 마운트된 원격 파일 시스템에 대한 root 액세스를 필요로 하지 않을 경우 이 단계를 건너 뛸 수 있습니다. 영역 차원의 root 주체가 만들어지지 않도록 하려면 root 주체가 두번째 구성 요소(Kerberos 클라이언트 시스템의 호스트 이름)와 쌍으로 구성된 구성 요소 주체여야 합니다. 주체 인스턴스가 호스트 이름인 경우 FQDN은 이름 서비스의 도메인 이름 대소문자에 관계없이 소문자로 지정되어야 합니다.

      kadmin: addprinc -randkey root/client.example.com
      Principal "root/client.example.com" created.
      kadmin: ktadd root/client.example.com
      Entry for principal root/client.example.com with kvno 3, encryption type AES-256 CTS mode
                with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal root/client.example.com with kvno 3, encryption type AES-128 CTS mode
                with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal root/client.example.com with kvno 3, encryption type Triple DES cbc
                mode with HMAC/sha1 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal root/client.example.com with kvno 3, encryption type ArcFour
                with HMAC/md5 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal root/client.example.com with kvno 3, encryption type DES cbc mode
                with RSA-MD5 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      kadmin: 
    3. host 주체를 만들고 서버의 keytab 파일에 주체를 추가합니다.

      host 주체는 원격 액세스 서비스가 인증을 제공하는 데 사용합니다. 이 주체는 keytab 파일에 자격 증명이 없을 경우 root가 자격 증명을 확보할 수 있도록 합니다.

      kadmin: addprinc -randkey host/denver.example.com
      Principal "host/denver.example.com@EXAMPLE.COM" created.
      kadmin: ktadd host/denver.example.com
      Entry for principal host/denver.example.com with kvno 3, encryption type AES-256 CTS mode
                with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal host/denver.example.com with kvno 3, encryption type AES-128 CTS mode
                with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal host/denver.example.com with kvno 3, encryption type Triple DES cbc
                mode with HMAC/sha1 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal host/denver.example.com with kvno 3, encryption type ArcFour
                with HMAC/md5 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal host/denver.example.com with kvno 3, encryption type DES cbc mode
                with RSA-MD5 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      kadmin:
    4. (옵션) 서버의 keytab 파일에 서버의 NFS 서비스 주체를 추가합니다.

      클라이언트가 Kerberos 인증을 사용하여 NFS 파일 시스템에 액세스해야 하는 경우에만 이 단계를 수행해야 합니다.

      kadmin: ktadd nfs/denver.example.com
      Entry for principal nfs/denver.example.com with kvno 3, encryption type AES-256 CTS mode
                with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal nfs/denver.example.com with kvno 3, encryption type AES-128 CTS mode
                with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal nfs/denver.example.com with kvno 3, encryption type Triple DES cbc
                mode with HMAC/sha1 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal nfs/denver.example.com with kvno 3, encryption type ArcFour
                with HMAC/md5 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      Entry for principal nfs/denver.example.com with kvno 3, encryption type DES cbc mode
                with RSA-MD5 added to keytab WRFILE:/etc/krb5/krb5.keytab.
      kadmin: 
    5. kadmin을 종료합니다.
      kadmin: quit
  6. (옵션) NFS에서 Kerberos를 사용으로 설정합니다.
    1. /etc/nfssec.conf 파일에서 Kerberos 보안 모드를 사용으로 설정합니다.

      /etc/nfssec.conf 파일을 편집하고 Kerberos 보안 모드 앞에 배치된 "#"을 제거합니다.

      # cat /etc/nfssec.conf
       .
       .
      #
      # Uncomment the following lines to use Kerberos V5 with NFS
      #
      krb5            390003  kerberos_v5     default -               # RPCSEC_GSS
      krb5i           390004  kerberos_v5     default integrity       # RPCSEC_GSS
      krb5p           390005  kerberos_v5     default privacy         # RPCSEC_GSS
    2. DNS를 사용으로 설정합니다.

      svc:/network/dns/client:default 서비스가 사용으로 설정되지 않은 경우 사용으로 설정합니다. 자세한 내용은 resolv.conf(4) 매뉴얼 페이지를 참조하십시오.

    3. gssd 서비스를 다시 시작합니다.
      # svcadm restart network/rpc/gss
  7. 클라이언트가 TGT를 자동으로 갱신하도록 하거나 사용자에게 Kerberos 티켓 만료를 경고하려면 /etc/krb5/warn.conf 파일에서 항목을 만듭니다.

    자세한 내용은 warn.conf(4) 매뉴얼 페이지를 참조하십시오.

예 21-12 비Solaris KDC를 사용하는 Kerberos 클라이언트 설정

비Solaris KDC에서 작동하도록 Kerberos 클라이언트를 설정할 수 있습니다. 이 경우 /etc/krb5/krb5.conf 파일의 realms 섹션에 행이 포함되어야 합니다. 이 행은 클라이언트가 Kerberos 암호 변경 서버와 통신하는 동안 사용되는 프로토콜을 변경합니다. 이 행의 형식은 다음과 같습니다.

[realms]
                EXAMPLE.COM = {
                kdc = kdc1.example.com
                kdc = kdc2.example.com
                admin_server = kdc1.example.com
                kpasswd_protocol = SET_CHANGE
        }

예 21-13 호스트 및 도메인 이름과 Kerberos 영역 간의 매핑에 대한 DNS TXT 레코드

@ IN SOA kdc1.example.com root.kdc1.example.com (
                                1989020501   ;serial
                                10800        ;refresh
                                3600         ;retry
                                3600000      ;expire
                                86400 )      ;minimum

                        IN      NS      kdc1.example.com.
kdc1                    IN      A       192.146.86.20
kdc2                    IN      A       192.146.86.21

_kerberos.example.com.             IN      TXT     "EXAMPLE.COM"
_kerberos.kdc1.example.com.        IN      TXT     "EXAMPLE.COM"
_kerberos.kdc2.example.com.        IN      TXT     "EXAMPLE.COM"

예 21-14 Kerberos 서버 위치에 대한 DNS SRV 레코드

이 예에서는 KDC, admin 서버 및 kpasswd 서버 각각에 대한 레코드를 정의합니다.

@ IN SOA kdc1.example.com root.kdc1.example.com (
                                1989020501   ;serial
                                10800        ;refresh
                                3600         ;retry
                                3600000      ;expire
                                86400 )      ;minimum

                                   IN      NS      kdc1.example.com.
kdc1                               IN      A       192.146.86.20
kdc2                               IN      A       192.146.86.21

_kerberos._udp.EXAMPLE.COM         IN      SRV 0 0 88  kdc2.example.com
_kerberos._tcp.EXAMPLE.COM         IN      SRV 0 0 88  kdc2.example.com
_kerberos._udp.EXAMPLE.COM         IN      SRV 1 0 88  kdc1.example.com
_kerberos._tcp.EXAMPLE.COM         IN      SRV 1 0 88  kdc1.example.com
_kerberos-adm._tcp.EXAMPLE.COM     IN      SRV 0 0 749 kdc1.example.com
_kpasswd._udp.EXAMPLE.COM          IN      SRV 0 0 749 kdc1.example.com

예 21-15 다중 마스터 KDC로 작업하도록 Solaris 클라이언트 구성

Microsoft Active Directory Kerberos 서비스는 여러 마스터에서 실행되는 KDC를 제공합니다. Solaris 클라이언트가 정보를 업데이트할 수 있도록 하려면 모든 서버를 나열하도록 /etc/krb5/krb5.confadmin_server 또는 kpasswd_server 선언을 업데이트해야 합니다. 이 예에서는 kdc1kdc2 사이에 공유되는 KDC에서 클라이언트가 정보를 업데이트하도록 허용하는 방법을 보여줍니다.

[realms]
                EXAMPLE.COM = {
                kdc = kdc1.example.com
                kdc = kdc2.example.com
                admin_server = kdc1.example.com
                admin_server = kdc2.example.com
                }

TGT(티켓 부여 티켓) 확인을 사용 안함으로 설정하는 방법

이 절차에서는 로컬 /etc/krb5/krb5.keytab 파일에 저장된 host 주체의 KDC와 TGT(티켓 부여 티켓)를 발행한 KDC가 동일한지 확인하는 보안 점검을 사용 안함으로 설정합니다. 이 점검은 DNS 스푸핑 공격을 방지합니다. 하지만 일부 클라이언트 구성의 경우 host 주체를 사용하지 못할 수 있으므로 클라이언트가 작동하려면 이 점검을 사용 안함으로 설정해야 합니다. 다음은 이 점검을 사용 안함으로 설정해야 할 구성입니다.

시작하기 전에

root 역할을 맡아야 합니다. 자세한 내용은 지정된 관리 권한을 사용하는 방법을 참조하십시오.

Kerberos로 보호된 NFS 파일 시스템에 root 사용자로 액세스하는 방법

이 절차를 수행하면 클라이언트가 Kerberos 인증을 필요로 하는 NFS 파일 시스템에 root ID 권한으로 액세스할 수 있습니다. 특히 NFS 파일 시스템이 -o sec=krb5,root=client1.sun.com 등의 옵션과 공유되는 경우 이 절차를 수행하십시오.

Kerberos 영역에서 사용자의 자동 마이그레이션을 구성하는 방법

Kerberos 주체가 없는 사용자는 기존 Kerberos 영역으로 자동 마이그레이션될 수 있습니다. 마이그레이션을 수행하려면 PAM 구성 파일의 서비스 인증 스택에서 pam_krb5_migrate 모듈을 스택으로 구성하여 사용 중인 서비스에 PAM 프레임워크를 사용합니다.

이 예에서는 gdmother PAM 서비스 이름이 자동 마이그레이션을 사용하도록 구성됩니다. 사용되는 구성 매개변수는 다음과 같습니다.

시작하기 전에

server1EXAMPLE.COM 영역의 Kerberos 클라이언트로 설정합니다. 자세한 내용은 Kerberos 클라이언트 구성을 참조하십시오.

root 역할을 맡아야 합니다. 자세한 내용은 지정된 관리 권한을 사용하는 방법을 참조하십시오.

  1. server1에 대한 호스트 서비스 주체가 존재하는지 여부를 확인합니다.

    server1keytab 파일에 있는 호스트 서비스 주체는 마스터 KDC에 대해 서버를 인증하는 데 사용됩니다.

    server1 # klist -k
    Keytab name: FILE:/etc/krb5/krb5.keytab
        KVNO Principal
        ---- ------------------------------------------------
           3 host/server1.example.com@EXAMPLE.COM
           3 host/server1.example.com@EXAMPLE.COM
           3 host/server1.example.com@EXAMPLE.COM
           3 host/server1.example.com@EXAMPLE.COM
  2. PAM 구성 파일을 변경합니다.
    1. gdm 서비스에 대한 항목을 업데이트합니다.
      # cat /etc/pam.d/gdm
       .
       .
      
      auth definitive         pam_user_policy.so.1
      auth requisite          pam_authtok_get.so.1
      auth required           pam_dhkeys.so.1
      auth sufficient         pam_krb5.so.1
      auth requisite          pam_unix_auth.so.1
      auth required           pam_unix_cred.so.1
      auth optional           pam_krb5_migrate.so.1
    2. (옵션) 필요한 경우 강제로 암호를 즉시 변경합니다.

      강제로 Kerberos 암호를 즉시 변경하려는 경우 새로 만들어진 Kerberos 계정의 암호 만료 시간을 현재 시간으로 설정할 수 있습니다. 만료 시간을 현재 시간으로 설정하려면 pam_krb5_migrate 모듈을 사용하는 행에 expire_pw 옵션을 추가합니다. 자세한 내용은 pam_krb5_migrate(5) 매뉴얼 페이지를 참조하십시오.

      # cat /etc/pam.d/gdm
       .
       .
      auth optional           pam_krb5_migrate.so.1 expire_pw
    3. 계정 스택에 pam_krb5 모듈을 추가합니다.

      그러면 Kerberos의 암호가 만료될 때 액세스가 차단됩니다.

      # cat /etc/pam.d/other
       .
       .
      #
      # Default definition for Account management
      # Used when service name is not explicitly mentioned for account management
      #
      account requisite       pam_roles.so.1
      account definitive      pam_user_policy.so.1
      account required        pam_krb5.so.1
      account required        pam_unix_account.so.1
      account required        pam_tsol_account.so.1
      #
    4. 암호 스택에 pam_krb5 모듈을 추가합니다.

      그러면 암호가 만료될 때 암호가 업데이트됩니다.

      # cat /etc/pam.d/other
       .
       .
      #
      # Default definition for Password management
      #
      password include        pam_authtok_common
      password sufficient     pam_krb5.so.1
      password required       pam_authtok_store.so.1
  3. 마스터 KDC에서 액세스 제어 파일을 업데이트합니다.

    다음 항목은 root 사용자를 제외한 모든 사용자에 대한 host/server1.example.com 서비스 주체에 마이그레이션 및 조회 권한을 허가합니다. 마이그레이션되지 않아야 하는 사용자는 U 권한을 사용하여 kadm5.acl 파일에 나열되어야 합니다. 이러한 항목은 전체 또는 ui 허가 항목 앞에 와야 합니다. 자세한 내용은 kadm5.acl(4) 매뉴얼 페이지를 참조하십시오.

    kdc1 # cat /etc/krb5/kadm5.acl
    host/server1.example.com@EXAMPLE.COM U root
    host/server1.example.com@EXAMPLE.COM ui *
    */admin@EXAMPLE.COM *
  4. 마스터 KDC에서 Kerberos 관리 데몬을 다시 시작합니다.

    이 단계를 수행하면 kadmind 데몬이 새 kadm5.acl 항목을 사용할 수 있습니다.

    kdc1 # svcadm restart network/security/kadmin
  5. 마스터 KDC에서 pam.conf 파일에 항목을 추가합니다.

    다음 항목은 kadmind 데몬이 k5migrate PAM 서비스를 사용하고 마이그레이션해야 할 계정에 대해 UNIX 사용자 암호를 검증할 수 있도록 합니다.

    # grep k5migrate /etc/pam.conf
    k5migrate        auth    required        pam_unix_auth.so.1
    k5migrate        account required        pam_unix_account.so.1

계정 잠금 구성 방법

예 21-16 잠긴 주체의 잠금 해제

다음 예에서는 사용자 주체의 잠금이 해제됩니다.

 /usr/sbin/kadmin -p kws/admin
Enter password: <Type kws/admin password>
kadmin: modify_principal -unlock principal

모든 TGT(티켓 부여 티켓)를 자동으로 갱신하는 방법

시작하기 전에

root 역할을 맡아야 합니다. 자세한 내용은 지정된 관리 권한을 사용하는 방법을 참조하십시오.

  1. warnd 구성 파일을 편집합니다.

    다음과 같은 항목을 추가하여 티켓이 만료되기 30분 전에 TGT를 갱신하고 갱신이 성공하거나 실패하면 사용자 터미널에 메시지를 기록합니다.

    # cat /etc/krb5/warn.conf
    * renew:log terminal 30m
  2. 서비스를 다시 시작합니다.
    # svcadm restart network/security/ktkt_warn

예 21-17 서버에서 TGT 만료 메시지 구성

다음 예에서는 TGT의 갱신 및 메시지 시스템을 구성하는 몇 가지 방법을 보여줍니다.

# cat /etc/krb5/warn.conf
#
# renew the TGT 30 minutes before expiration and send message to users terminal
#
gtb@EXAMPLE.COM renew:log terminal 30m
#
# send a warning message to a specific email address 20 minutes before TGT expiration
#
mre@EXAMPLE.COM mail 20m mre@example2.com
#
# renew the TGT 20 minutes before expiration and send an email message on failure
#
bricker@EXAMPLE.COM renew:log-failure mail 20m &
#
# catch-all: any principal not matched above will get an email warning
* mail 20m & 

예 21-18 사용자에 대한 TGT 만료 메시지 구성

시스템 레벨에서 각 사용자에 대한 항목을 구성하는 것 외에도 각 사용자가 이름이 /var/user/$USER/krb-warn.conf인 개별 warnd 구성 파일을 구성할 수 있습니다. 예를 들면 다음과 같습니다.

% cat /var/user/gtb/krb-warn.conf
gtb@EXAMPLE.COM renew:log mail 30m &