Oracle Solaris Trusted Extensions 구성 설명서

Trusted Extensions 시스템에서 Sun Java System Directory Server 구성

LDAP 이름 지정 서비스는 Trusted Extensions에서 지원되는 이름 지정 서비스입니다. 사이트에서 아직 LDAP 이름 지정 서비스가 실행되고 있지 않은 경우 Trusted Extensions로 구성된 시스템에서 Sun Java System Directory Server(Directory Server)를 구성합니다.

사이트에서 이미 Directory Server가 실행되고 있는 경우 서버에 Trusted Extensions 데이터베이스를 추가해야 합니다. Directory Server에 액세스하려면 시스템에 LDAP 프록시를 설정합니다.


주 –

이 LDAP 서버를 NFS 서버 또는 Sun Ray 클라이언트용 서버로 사용하지 않는 경우 이 서버에 레이블이 있는 영역을 설치할 필요가 없습니다.


ProcedureLDAP용 Directory Server에 대한 정보 수집

  1. 다음 항목의 값을 결정합니다.

    항목은 Sun Java Enterprise System Install Wizard에 나타나는 순서대로 나열됩니다.

    설치 마법사 프롬프트 

    작업 또는 정보 

    Sun Java System Directory Server version

    Administrator User ID(관리자 아이디) 

    기본값은 admin입니다.

    Administrator Password(관리자 비밀번호) 

    admin123과 같은 비밀번호를 만듭니다.

    Directory Manager DN(디렉토리 관리자 DN) 

    기본값은 cn=Directory Manager입니다.

    Directory Manager Password(디렉토리 관리자 비밀번호) 

    dirmgr89와 같은 비밀번호를 만듭니다.

    Directory Server Root(디렉토리 서버 루트) 

    기본값은 /var/Sun/mps입니다. 프록시 소프트웨어가 설치된 경우 이 경로는 나중에도 사용됩니다.

    Server Identifier(서버 식별자) 

    기본값은 로컬 시스템입니다. 

    Server Port(서버 포트) 

    Directory Server를 사용하여 클라이언트 시스템에 대한 표준 LDAP 이름 지정 서비스를 제공하려면 기본값 389를 사용합니다.

    Directory Server를 사용하여 이후의 프록시 서버 설치를 지원하려면 10389와 같은 비표준 포트를 입력합니다.

    Suffix(접미어) 

    dc=example-domain,dc=com에서와 같이 도메인 구성 요소를 포함합니다.

    Administration Domain(관리 도메인) 

    example-domain.com에서와 같이 Suffix(접미어)에 일치하도록 구성합니다.

    System User(시스템 사용자) 

    기본값은 root입니다.

    System Group(시스템 그룹) 

    기본값은 root입니다.

    Data Storage Location(데이터 저장소 위치) 

    기본값은 Store configuration data on this server(구성 데이터를 이 서버에 저장합니다)입니다.

    Data Storage Location(데이터 저장소 위치) 

    기본값은 Store user data and group data on this server(사용자 데이터와 그룹 데이터를 이 서버에 저장합니다)입니다.

    Administration Port(관리 포트) 

    기본값은 Server Port(서버 포트)입니다. 기본값 변경을 위해 제안된 규칙은 software-version TIMES 1000입니다. 소프트웨어 버전 5.2의 경우 이 규칙은 포트 5200이 됩니다.

ProcedureSun Java System Directory Server 설치

Directory Server 패키지는 Sun Software Gateway 웹 사이트에서 구할 수 있습니다.

시작하기 전에

현재 사용 중인 Trusted Extensions 시스템에 전역 영역만 설치되어 있으며, 레이블이 있는 영역이 없습니다.

Trusted Extensions LDAP 서버는 LDAP 리포지토리에 인증하는 데 pam_unix를 사용하는 클라이언트에 적합하게 구성되어 있습니다. 따라서 클라이언트에서 pam_unix를 사용하여 암호 작업 및 암호 정책을 결정합니다. 특히, LDAP 서버에서 설정된 정책은 사용되지 않습니다. 클라이언트에 설정할 수 있는 암호 매개 변수에 대해서는 System Administration Guide: Security ServicesManaging Password Information을 참조하십시오. pam_unix에 대한 자세한 내용은 pam.conf(4) 매뉴얼 페이지를 참조하십시오.


주 –

LDAP 클라이언트에서 Trusted Extensions에 대해 pam_ldap를 사용하는 것은 평가된 구성이 아닙니다.


  1. Directory Server 패키지를 설치하기 전에 먼저 시스템의 호스트 이름 항목에 FQDN을 추가합니다.

    FQDN은 Fully Qualified Domain Name(정규화된 도메인 이름)의 약어로 다음과 같이 호스트 이름과 관리 도메인의 조합입니다.


    ## /etc/hosts
    ...
    192.168.5.5 myhost myhost.example-domain.com

    Solaris 10 8/07 이전 릴리스를 실행하는 시스템에서는 IPv4 및 IPv6 항목을 /etc/inet/ipnodes 파일에 추가합니다. 한 시스템에 대한 항목은 이 파일에서 모두 같이 있어야 합니다.

    최신 Solaris OS 릴리스를 실행하고 있지 않은 경우 다음 패치를 설치해야 합니다. 첫 번째 번호는 SPARC 패치이고, 두 번째 번호는 X86 패치입니다.

    • 138874–05, 138875–05: 기본 LDAP, PAM, name-service-switch 패치

    • 119313-35, 119314-36: WBEM 패치

    • 121308-21, 121308-21: Solaris Management Console 패치

    • 119315-20, 119316-20: Solaris Management Applications 패치

  2. Oracle Sun 웹 사이트에서 Sun Java System Directory Server 패키지를 찾습니다.

    1. Sun Software Gateway 페이지에서 Get It(얻기) 탭을 누릅니다.

    2. Sun Java Identity Management Suite(Sun Java Identity Management 제품군)의 확인란을 누릅니다.

    3. Submit(제출) 버튼을 누릅니다.

    4. 등록하지 않은 경우 등록합니다.

    5. 로그인하여 소프트웨어를 다운로드합니다.

    6. 화면 왼쪽 위에서 Download Center(다운로드 센터)를 누릅니다.

    7. Identity Management 아래에서 사용자의 플랫폼에 맞는 최신 소프트웨어를 다운로드합니다.

  3. Directory Server 패키지를 설치합니다.

    LDAP용 Directory Server에 대한 정보 수집의 정보를 사용하여 질문에 답합니다. 질문, 기본값 및 권장 응답 사항의 전체 목록은 System Administration Guide: Naming and Directory Services (DNS, NIS, and LDAP)의 11 장, Setting Up Sun Java System Directory Server With LDAP Clients (Tasks)System Administration Guide: Naming and Directory Services (DNS, NIS, and LDAP)의 12 장, Setting Up LDAP Clients (Tasks)를 참조하십시오.

  4. (옵션) Directory Server에 대한 환경 변수를 사용자 경로에 추가합니다.


    # $PATH
    /usr/sbin:.../opt/SUNWdsee/dsee6/bin:/opt/SUNWdsee/dscc6/bin:/opt/SUNWdsee/ds6/bin:
    /opt/SUNWdsee/dps6/bin
  5. (옵션) Directory Server 매뉴얼 페이지를 MANPATH에 추가합니다.


    /opt/SUNWdsee/dsee6/man
  6. cacaoadm 프로그램을 활성화하고 해당 프로그램이 활성화되었는지 확인합니다.


    # /usr/sbin/cacaoadm enable
    # /usr/sbin/cacaoadm start
    start: server (pid n) already running
  7. 부트할 때마다 Directory Server가 시작되는지 확인합니다.

    디렉토리 서버용 SMF 서비스 템플리트는 Sun Java System Directory Server 패키지에 있습니다.

    • Trusted Extensions 디렉토리 서버에 대해 서비스를 활성화합니다.


      # dsadm stop /export/home/ds/instances/your-instance
      # dsadm enable-service -T SMF /export/home/ds/instances/your-instance
      # dsadm start /export/home/ds/instances/your-instance
      

      dsadm 명령에 대한 자세한 내용은 dsadm(1M) 매뉴얼 페이지를 참조하십시오.

    • 프록시 디렉토리 서버에 대해 서비스를 활성화합니다.


      # dpadm stop /export/home/ds/instances/your-instance
      # dpadm enable-service -T SMF /export/home/ds/instances/your-instance
      # dpadm start /export/home/ds/instances/your-instance
      

      dpadm 명령에 대한 자세한 내용은 dpadm(1M) 매뉴얼 페이지를 참조하십시오.

  8. 설치를 확인합니다.


    # dsadm info /export/home/ds/instances/your-instance
    Instance Path:         /export/home/ds/instances/your-instance
    Owner:                 root(root)
    Non-secure port:       389
    Secure port:           636
    Bit format:            32-bit
    State:                 Running
    Server PID:            298
    DSCC url:              -
    SMF application name:  ds--export-home-ds-instances-your-instance
    Instance version:      D-A00
일반 오류

LDAP 구성 문제를 해결하기 위한 전략에 대해서는 System Administration Guide: Naming and Directory Services (DNS, NIS, and LDAP)의 13 장, LDAP Troubleshooting (Reference)을 참조하십시오.

ProcedureDirectory Server용 LDAP 클라이언트 만들기

이 클라이언트를 사용하여 LDAP용 Directory Server를 채울 수 있습니다. Directory Server를 채우기 전에 먼저 이 작업을 수행해야 합니다.

Trusted Extensions Directory Server에 클라이언트를 임시로 만든 다음 해당 서버에서 클라이언트를 제거하거나 독립 클라이언트를 만들 수 있습니다.

  1. 시스템에 Trusted Extensions를 설치합니다.

    Trusted Extensions Directory Server를 사용하거나 Trusted Extensions를 별도의 시스템에 설치할 수 있습니다.


    주 –

    최신 Solaris OS 릴리스를 실행하고 있지 않은 경우 다음 패치를 설치해야 합니다. 첫 번째 번호는 SPARC 패치이고, 두 번째 번호는 X86 패치입니다.

    • 138874–05, 138875–05: 기본 LDAP, PAM, name-service-switch 패치

    • 119313-35, 119314-36: WBEM 패치

    • 121308-21, 121308-21: Solaris Management Console 패치

    • 119315-20, 119316-20: Solaris Management Applications 패치


  2. 클라이언트에서 기본 /etc/nsswitch.ldap 파일을 수정합니다.

    굵게 표시된 항목이 수정 사항입니다. 파일은 다음과 같이 표시됩니다.


    # /etc/nsswitch.ldap
    #
    # An example file that could be copied over to /etc/nsswitch.conf; it
    # uses LDAP in conjunction with files.
    #
    # "hosts:" and "services:" in this file are used only if the
    # /etc/netconfig file has a "-" for nametoaddr_libs of "inet" transports.
    
    # LDAP service requires that svc:/network/ldap/client:default be enabled
    # and online.
    
    # the following two lines obviate the "+" entry in /etc/passwd and /etc/group.
    passwd:     files ldap
    group:      files ldap
    
    # consult /etc "files" only if ldap is down. 
    hosts:      files ldap dns [NOTFOUND=return] files
    
    # Note that IPv4 addresses are searched for in all of the ipnodes databases
    # before searching the hosts databases.
    ipnodes:    files ldap [NOTFOUND=return] files
    
    networks:   files ldap [NOTFOUND=return] files
    protocols:  files ldap [NOTFOUND=return] files
    rpc:        files ldap [NOTFOUND=return] files
    ethers:     files ldap [NOTFOUND=return] files
    netmasks:   files ldap [NOTFOUND=return] files
    bootparams: files ldap [NOTFOUND=return] files
    publickey:  files ldap [NOTFOUND=return] files
    
    netgroup:   ldap
    
    automount:  files ldap
    aliases:    files ldap
    
    # for efficient getservbyname() avoid ldap
    services:   files ldap
    
    printers:   user files ldap
    
    auth_attr:  files ldap
    prof_attr:  files ldap
    
    project:    files ldap
    
    tnrhtp:     files ldap
    tnrhdb:     files ldap
  3. 전역 영역에서 ldapclient init 명령을 실행합니다.

    이 명령은 nsswitch.ldap 파일을 nsswitch.conf 파일로 복사합니다.

    이 예에서 LDAP 클라이언트는 example-domain.com 도메인에 있습니다. 서버의 IP 주소는 192.168.5.5입니다.


    # ldapclient init -a domainName=example-domain.com -a profileNmae=default \
    > -a proxyDN=cn=proxyagent,ou=profile,dc=example-domain,dc=com \
    > -a proxyDN=cn=proxyPassword={NS1}ecc423aad0 192.168.5.5
    System successfully configured
  4. 서버의 enableShadowUpdate 매개 변수를 TRUE로 설정합니다.


    # ldapclient -v mod -a enableShadowUpdate=TRUE \
    > -a adminDN=cn=admin,ou=profile,dc=example-domain,dc=com
    System successfully configured

    enableShadowUpdate 매개 변수에 대한 자세한 내용은 System Administration Guide: Naming and Directory Services (DNS, NIS, and LDAP)enableShadowUpdate Switchldapclient(1M) 매뉴얼 페이지를 참조하십시오.

ProcedureSun Java System Directory Server용 로그 구성

이 절차에서는 3가지 로그 유형인 액세스 로그, 감사 로그 및 오류 로그를 구성합니다. 다음 기본 설정은 변경되지 않습니다.

이 절차에 있는 설정은 다음 요구 사항을 충족합니다.

  1. 액세스 로그를 구성합니다.

    액세스용 LOG_TYPEACCESS입니다. 로그 구성 구문은 다음과 같습니다.


    dsconf set-log-prop LOG_TYPE property:value
    

    # dsconf set-log-prop ACCESS max-age:3M
    # dsconf set-log-prop ACCESS max-disk-space-size:20000M
    # dsconf set-log-prop ACCESS max-file-count:100
    # dsconf set-log-prop ACCESS max-size:500M
    # dsconf set-log-prop ACCESS min-free-disk-space:500M
    
  2. 감사 로그를 구성합니다.


    # dsconf set-log-prop AUDIT max-age:3M
    # dsconf set-log-prop AUDIT max-disk-space-size:20000M
    # dsconf set-log-prop AUDIT max-file-count:100
    # dsconf set-log-prop AUDIT max-size:500M
    # dsconf set-log-prop AUDIT min-free-disk-space:500M
    # dsconf set-log-prop AUDIT rotation-interval:1d
    

    기본적으로 감사 로그의 회전 간격은 1주입니다.

  3. 오류 로그를 구성합니다.

    이 구성에서 오류 로그에서 수집할 추가 데이터를 지정할 수 있습니다.


    # dsconf set-log-prop ERROR max-age:3M
    # dsconf set-log-prop ERROR max-disk-space-size:20000M
    # dsconf set-log-prop ERROR max-file-count:30
    # dsconf set-log-prop ERROR max-size:500M
    # dsconf set-log-prop ERROR min-free-disk-space:500M
    # dsconf set-log-prop ERROR verbose-enabled:on
    
  4. (옵션) 로그를 좀 더 자세히 구성합니다.

    각 로그에 대해 다음 설정을 구성할 수도 있습니다.


    # dsconf set-log-prop LOG_TYPE rotation-min-file-size:undefined
    # dsconf set-log-prop LOG_TYPE rotation-time:undefined
    

    dsconf 명령에 대한 자세한 내용은 dsconf(1M) 매뉴얼 페이지를 참조하십시오.

ProcedureSun Java System Directory Server용 다중 레벨 포트 구성

Trusted Extensions에서 작업하려면 Directory Server의 서버 포트가 전역 영역에서 다중 레벨 포트(MLP)로 구성되어야 합니다.

  1. Solaris Management Console을 시작합니다.


    # /usr/sbin/smc &
    
  2. 이 컴퓨터(this-host: Scope=Files, Policy=TSOL) 도구 상자를 선택합니다.

  3. System Configuration(시스템 구성)을 누른 다음 Computers and Networks(컴퓨터 및 네트워크)를 누릅니다.

    암호를 입력하라는 메시지가 표시됩니다.

  4. 적절한 암호를 입력합니다.

  5. Trusted Network Zones(신뢰할 수 있는 네트워크 영역)를 두 번 누릅니다.

  6. 전역 영역을 두 번 누릅니다.

  7. TCP 프로토콜에 대해 다중 레벨 포트를 추가합니다.

    1. Add for the Multilevel Ports for Zone's IP Addresses(영역 IP 주소에 대해 다중 레벨 포트 추가)를 누릅니다.

    2. 포트 번호로 389를 입력하고 OK(확인)를 누릅니다.

  8. UDP 프로토콜에 대해 다중 레벨 포트를 추가합니다.

    1. Add for the Multilevel Ports for Zone's IP Addresses(영역 IP 주소에 대해 다중 레벨 포트 추가)를 누릅니다.

    2. 포트 번호로 389를 입력합니다.

    3. udp 프로토콜을 선택하고 OK(확인)를 누릅니다.

  9. 확인을 눌러 설정을 저장합니다.

  10. 커널을 업데이트합니다.


    # tnctl -fz /etc/security/tsol/tnzonecfg
    

ProcedureSun Java System Directory Server 채우기

몇 개의 LDAP 데이터베이스가 레이블 구성, 사용자 및 원격 시스템에 대한 Trusted Extensions 데이터를 보관할 수 있도록 작성되거나 수정되었습니다. 이 절차에서는 Directory Server 데이터베이스에 Trusted Extensions 정보를 채웁니다.

시작하기 전에

섀도우 업데이트가 활성화된 LDAP 클라이언트에서 데이터베이스를 채워야 합니다. 필수 조건에 대해서는 Directory Server용 LDAP 클라이언트 만들기를 참조하십시오.

사이트 보안 요구 사항에 따라 업무 분리가 필요한 경우 디렉토리 서버를 채우기 전에 다음을 완료합니다.

  1. 이름 지정 서비스 데이터베이스를 채우는 데 사용할 파일의 스테이징 영역을 만듭니다.


    # mkdir -p /setup/files
    
  2. 샘플 /etc 파일을 스테이징 영역에 복사합니다.


    # cd /etc
    # cp aliases group networks netmasks protocols /setup/files
    # cp rpc services auto_master /setup/files
    
    # cd /etc/security
    # cp auth_attr prof_attr exec_attr /setup/files/
    #
    # cd /etc/security/tsol
    # cp tnrhdb tnrhtp /setup/files
    

    패치 없이 Solaris 10 11/06 릴리스를 실행하는 경우 ipnodes 파일을 복사합니다.


    # cd /etc/inet
    # cp ipnodes /setup/files
    
  3. /setup/files/auto_master 파일에서 +auto_master 항목을 제거합니다.

  4. ?:::::? 항목을 /setup/files/auth_attr 파일에서 제거합니다.

  5. :::: 항목을 /setup/files/prof_attr 파일에서 제거합니다.

  6. 단계화 영역에서 영역 자동맵을 만듭니다.

    다음 자동맵 목록에서 각 쌍의 첫 번째 줄에는 파일 이름이 표시됩니다. 각 쌍의 두 번째 줄에는 파일 내용이 표시됩니다. 영역 이름은 Trusted Extensions 소프트웨어와 함께 제공된 기본 label_encodings 파일에서 레이블을 식별합니다.

    • 사용자의 영역 이름이 이 줄의 영역 이름을 대체합니다.

    • myNFSserver는 홈 디렉토리에 대한 NFS 서버를 식별합니다.


    /setup/files/auto_home_public
     * myNFSserver_FQDN:/zone/public/root/export/home/&
    
    /setup/files/auto_home_internal
     * myNFSserver_FQDN:/zone/internal/root/export/home/&
    
    /setup/files/auto_home_needtoknow
     * myNFSserver_FQDN:/zone/needtoknow/root/export/home/&
    
    /setup/files/auto_home_restricted
     * myNFSserver_FQDN:/zone/restricted/root/export/home/&
  7. 네트워크의 모든 시스템을 /setup/files/tnrhdb 파일에 추가합니다.

    이 파일에는 와일드카드 메커니즘을 사용할 수 없습니다. 레이블이 있는 영역의 IP 주소를 포함하여 연결하는 모든 시스템의 IP 주소가 이 파일에 있어야 합니다.

    1. 신뢰할 수 있는 편집기를 열고 /setup/files/tnrhdb를 편집합니다.

    2. Trusted Extensions 도메인에서 레이블이 있는 시스템의 모든 IP 주소를 추가합니다.

      레이블이 있는 시스템은 cipso 유형입니다. 또한 레이블이 있는 시스템의 보안 템플리트 이름은 cipso입니다. 따라서 기본 구성에서 cipso 항목은 다음과 비슷합니다.


      192.168.25.2:cipso

      주 –

      이 목록에는 전역 영역과 레이블이 있는 영역의 IP 주소가 포함됩니다.


    3. 도메인이 통신할 수 있는 레이블이 없는 모든 시스템을 추가합니다.

      레이블이 없는 시스템 unlabeled 유형입니다. 레이블이 없는 시스템의 보안 템플리트 이름은 admin_low입니다. 따라서 기본 구성에서 레이블이 없는 시스템의 항목은 다음과 비슷합니다.


      192.168.35.2:admin_low
    4. 파일을 저장하고 편집기를 종료합니다.

    5. 파일 구문을 확인합니다.


      # tnchkdb -h /setup/files/tnrhdb
      
    6. 계속하기 전에 오류를 수정합니다.

  8. /setup/files/tnrhdb 파일을 /etc/security/tsol/tnrhdb 파일로 복사합니다.

  9. ldapaddent 명령을 사용하여 Directory Server를 스테이징 영역의 모든 파일로 채웁니다.

    예를 들어, 다음 명령은 스테이징 영역의 hosts 파일로 서버를 채웁니다.


    # /usr/sbin/ldapaddent -D "cn=directory manager" \
    -w dirmgr123 -a simple -f /setup/files/hosts hosts
    
  10. Trusted Extensions Directory Server에 대해 ldapclient 명령을 실행한 경우 해당 시스템에서 클라이언트를 비활성화합니다.

    전역 영역에서 ldapclient uninit 명령을 실행합니다. 상세 출력을 사용하여 시스템이 더 이상 LDAP 클라이언트가 아닌지 확인합니다.


    # ldapclient -v uninit
    

    자세한 내용은 ldapclient(1M) 매뉴얼 페이지를 참조하십시오.