Solaris 10 11/06 및 Solaris 10 8/07 릴리스용 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 RayTM 클라이언트에 대한 서버로 사용하지 않는 경우 이 서버에 레이블이 있는 영역을 설치할 필요가 없습니다.


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 웹 사이트에서 구할 수 있습니다.

  1. 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 아래에서 사용자의 플랫폼에 맞는 최신 소프트웨어를 다운로드합니다.

  2. /etc/hosts 파일에서 시스템의 호스트 이름 항목에 FQDN을 추가합니다.

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


    192.168.5.5 myhost myhost.example-domain.com
  3. Directory Server 패키지를 설치합니다.

    LDAP용 Directory Server에 대한 정보 수집의 정보를 사용하여 질문에 답합니다.

  4. 부트할 때마다 Directory Server가 시작되는지 확인합니다.

    1. init.d 스크립트를 추가합니다.

      다음 예에서는 SERVER_ROOTSERVER_INSTANCE 변수를 사용자의 설치에 맞게 변경합니다.


      /etc/init.d/ldap.directory-myhost
      ---------------------------------------
      #!/sbin/sh
      
      SERVER_ROOT=/var/Sun/mps
      SERVER_INSTANCE=myhost
      
      case "$1" in
      start)
      ${SERVER_ROOT}/slapd-${SERVER_INSTANCE}/start-slapd
      ;;
      stop)
      
      ${SERVER_ROOT}/slapd-${SERVER_INSTANCE}/stop-slapd
      ;;
      *)
      
      echo "Usage: $0 { start | stop }"
      exit 1
      esac
      exit 0
    2. init.d 스크립트를 rc2.d 디렉토리에 연결합니다.


      /usr/bin/ln \
      /etc/init.d/ldap.directory-myhost \
      /etc/rc2.d/S70ldap.directory-myhost
  5. 설치를 확인합니다.

    1. 설치 디렉토리를 검사합니다.

      이름이 slapd-server-hostname인 하위 디렉토리가 있어야 합니다.

    2. Directory Server를 시작할 수 있어야 합니다.


      # installation-directory/slapd-server-hostname/restart-slapd
    3. slapd 프로세스가 있는지 확인합니다.


      # ps -ef | grep slapd
      ./ns-slapd -D installation-directory/slapd-server-instance -i
      installation-directory/slapd-server-instance/
일반 오류

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

ProcedureSun Java System Directory Server의 액세스 로그 보호

이 절차를 통해 작성되는 LDIF 스크립트는 액세스 로그에 대해 다음 규칙을 설정합니다.

  1. 스크립트를 만들어 액세스 로그를 관리합니다.

    다음 내용이 있는 /var/tmp/logs-access.ldif 파일을 만듭니다.


    dn: cn=config
    changetype: modify
    replace: nsslapd-accesslog-logging-enabled
    nsslapd-accesslog-logging-enabled: on
    -
    replace: nsslapd-accesslog-level
    nsslapd-accesslog-level: 256
    -
    replace: nsslapd-accesslog-logbuffering
    nsslapd-accesslog-logbuffering: on
    -
    replace: nsslapd-accesslog-logrotationtime
    nsslapd-accesslog-logrotationtime: 1
    -
    replace: nsslapd-accesslog-logrotationtimeunit
    nsslapd-accesslog-logrotationtimeunit: day
    -
    replace: nsslapd-accesslog-maxlogsize
    nsslapd-accesslog-maxlogsize: 500
    -
    replace: nsslapd-accesslog-maxlogsperdir
    nsslapd-accesslog-maxlogsperdir: 100
    -
    replace: nsslapd-accesslog-logexpirationtime
    nsslapd-accesslog-logexpirationtime: 3
    -
    replace: nsslapd-accesslog-logexpirationtimeunit
    nsslapd-accesslog-logexpirationtimeunit: month
    -
    replace: nsslapd-accesslog-logmaxdiskspace
    nsslapd-accesslog-logmaxdiskspace: 20000
    -
    replace: nsslapd-accesslog-logminfreediskspace
    nsslapd-accesslog-logminfreediskspace: 500
  2. 스크립트를 실행합니다.


    # ldapmodify -h localhost -D 'cn=directory manager' \
    -f /var/tmp/logs-access.ldif
    
  3. 비밀번호를 입력합니다.


    Enter bind password: Type the appropriate password
    modifying entry cn=config

ProcedureSun Java System Directory Server의 오류 로그 보호

이 절차로 작성되는 LDIF 스크립트는 오류 로그에 대해 다음 규칙을 설정합니다.

  1. 스크립트를 만들어 오류 로그를 관리합니다.

    다음 내용이 있는 /var/tmp/logs-error.ldif 파일을 만듭니다.


    dn: cn=config
    changetype: modify
    replace: nsslapd-errorlog-logging-enabled
    nsslapd-errorlog-logging-enabled: on
    -
    replace: nsslapd-errorlog-logexpirationtime
    nsslapd-errorlog-logexpirationtime: 3
    -
    replace: nsslapd-errorlog-logexpirationtimeunit
    nsslapd-errorlog-logexpirationtimeunit: month
    -
    replace: nsslapd-errorlog-logrotationtime
    nsslapd-errorlog-logrotationtime: 1
    -
    replace: nsslapd-errorlog-logrotationtimeunit
    nsslapd-errorlog-logrotationtimeunit: week
    -
    replace: nsslapd-errorlog-maxlogsize
    nsslapd-errorlog-maxlogsize: 500
    -
    replace: nsslapd-errorlog-maxlogsperdir
    nsslapd-errorlog-maxlogsperdir: 30
    -
    replace: nsslapd-errorlog-logmaxdiskspace
    nsslapd-errorlog-logmaxdiskspace: 20000
    -
    replace: nsslapd-errorlog-logminfreediskspace
    nsslapd-errorlog-logminfreediskspace: 500
  2. 스크립트를 실행합니다.


    # ldapmodify -h localhost -D 'cn=directory manager' -f
    /var/tmp/logs-error.ldif
    
  3. 프롬프트에 대답합니다.


    Enter bind password: Type the appropriate password
    modifying entry cn=config

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 정보를 채웁니다.

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


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


    # cd /etc
    # cp aliases group hosts 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 명령을 사용하여 스테이징 영역의 모든 파일을 채웁니다.


    # /usr/sbin/ldapaddent -D "cn=directory manager" \
    -w dirmgr123 -a simple -f /setup/files/hosts hosts