BigAdmin System Administration Portal
Feature Article
Print-friendly VersionPrint-friendly Version

번역 책임의 한계:
본 기사는 어느 정도의 인간의 간섭과 사후 편집을 포함하여 컴퓨터 소프트웨어 프로그램으로 번역되었습니다. 번역은 독자의 편리함을 위해 “있는 그대로” 제공되며, Sun은 번역된 문장 또는 페이지 전체로서의 정확성 또는 완전성에 대한 아무런 대표성이 없으며 어떠한 책임도 지지 않습니다. 사이트와 툴의 사용에 관한 추가 고지 사항에 대해서는 본 사이트의 이용 약관을 참조하십시오.

 
 

LDAP 이름 지정 서비스인 Sun Java System Directory Server 6.0: 2부 -- Solaris OS의 클라이언트 구성

Sun Microsystems의 Jonathan Gershater와 Mascon Global Limited(MGL)의 Vineeth Katarki, 2007년 10월(2008년 1월 업데이트)

페이지 내용

이 페이지는 다음 4개 부로 나뉩니다.

주: 이 페이지의 절차에 표시된 명령을 실행할 때 COMPANY를 현재 환경에 적합한 값으로 바꾸십시 오.


2부 -- Solaris OS의 클라이언트 구성

2부에서는 Solaris 8, 9 또는 10 운영 체제를 실행하는 UNIX 자체 LDAP 클라이언트 구성 지침을 제공하므로 Sun Java System Directory Server 6.0("Directory Server"라고 함)을 이름 지정 서비스로 배포할 수 있습니다.

각 클라이언트에서 실행되는 OS 버전에 따라 각 Solaris 클라이언트에서 적합한 절차를 사용하십시오.

이러한 절차는 CA 서명 인증서를 사용하는 SSL을 통한 인증인 TLS:SIMPLE 인증을 위해 각 클라이언트를 LDAP 클라이언트로 구성합니다. 루트 CA 서명 인증서는 클라이언트가 인증 도중 Directory Server에서 제공한 서버 인증서를 신뢰하도록 개별 자체 LDAP 클라이언트에 있어야 합니다.

: 자세한 내용은 4부의 Solaris 클라이언트 설치 중 익명 액세스를 위한 ACI 설정을 참조하십시오.

2부 내용


Solaris 클라이언트용 패치 적용

저자의 블로그 http://blogs.sun.com/jo/entry/solaris_patches_required_to_enable에 있는 표를 참조하십시오. 이 표에는 자체 LDAP 클라이언트로 마이그레이션하기 위해 SPARC 플랫폼용 Solaris OS를 실행하는 서버와 워크스테이션을 활성화하는 데 필요한 패치가 나열되어 있습니다.

표에 있는 패치 열에는 설치할 패치를 나타내는 숫자가 포함되어 있습니다. 이 숫자는 패치를 다운로드할 수 있도록 http://sunsolve.sun.com에 연결되어 있습니다. 링크는 2008년 1월 8일 현재입니다.

주의: Solaris 패치는 수정되고 새 패치로 대체되었습니다. 패치 열에 있는 링크가 사용 가능한 최신 패치로 연결되지 않을 수도 있습니다. 패치 메모를 주의깊게 읽고 오래된 패치를 구분하여 최신 패치를 다운로드하십시오.

주: 패치는 지정된 순서로 설치해야 합니다.


Solaris 8 OS를 실행하는 클라이언트 구성

1. 아래의 Solaris 8 자체 LDAP 단계 패키지가 클라이언트 시스템에 설치되는지 확인하십시오.

  • SUNWnisu
  • SUNWcsr
  • SUNWcsu
  • SUNWcsl

: 다음 단계에서는 Directory Server("디렉토리 서버"라고 함)가 설치되는 Solaris 8 서버 및 클라이언트 간 통신을 위해 SSL을 구성합니다. 이러한 단계에서는 1부의 SSL 섹션 구성에 따라 SSL에 대해 디렉토리 서버가 구성되었다고 가정합니다.

2. 서버 인증서의 cn 속성에서 서버 이름이 클라이언트가 연결된 디렉토리 서버의 이름과 일치하는지 확인합니다. 일치하지 않을 경우 서버 인증서의 cn 속성과 일치하도록 defaultServerList 또는 preferredServerList 속성을 변경합니다.

: Solaris 8 자체 LDAP 클라이언트는 Solaris 8 인증서 데이터베이스가 cert7.db 데이터베이스에 있다고 가정합니다. /usr/sfw/bin에 있는 Solaris 9 OS와 함께 제공된 certutil 유틸리티는 cert8.db 데이베이스를 만듭니다. cert7.db 데이베이스를 만들려면 다음과 같이 수행하십시오.

3. 예를 들어, certutil 유틸리티를 클라이언트 시스템에서 사용할 수 있는 경우 /usr/local/bin에서 유틸리티가 cert8.db 데이터베이스가 아니라 cert7.db 데이터베이스를 만들 수 있는지 확인합니다.

4. certutil을 사용할 수 없거나 cert8.db 데이터베이스만 만드는 경우 다음 하위 단계를 수행합니다.

a. 번들된 certutil 유틸리티가 있는 Directory Server Resource Kit 5.2.1을 다운로드합니다.

b. 루트로, 다음 명령을 실행하여 클라이언트 시스템에 Directory Server Resource Kit 5.2.1을 설치합니다.

# mkdir /tmp/sunone
# unzip dsrk52-SunOS5.8_OPT.zip
# java DSRK

: 원하는 디렉토리에 키트를 설치할 수 있습니다. 다음 단계에서는 /opt/dsrk 디렉토리에 이 키트가 설치되어 있다고 가정합니다.

5. LD_LIBRARY_PATH/opt/dsrk/lib를 추가합니다.

6. 인증서 데이터베이스를 만들고 다음 명령을 실행하여 인증서를 추가합니다.

# cd /opt/dsrk/lib/nss/bin
# ./certutil -N -d /var/ldap
# chmod 644 /var/ldap/*.db

7. 루트 CA 인증서 및 해당 CA 서명 인증서를(해당하는 경우) 인증서 데이터베이스로 가져옵니다.

: 다음 명령은 인증서 파일이 ASCII 형식이라고 가정합니다. 이 파일이 이진 형식인 경우 명령에서 -a 옵션을 제거하십시오.

# ./certutil -A -a -i <path to root CA cert> -n "RootCA"
  -t "CT" -d /var/ldap
# ./certutil -A -a -i <path to sub CA cert> -n "SubCA"
  -t "CT" -d /var/ldap

8. ldapclient 유틸리티를 사용하여 클라이언트를 구성합니다.

a. /etc/pam.conf/etc/nsswitch.conf 파일을 백업합니다.

# ldapclient -P COMPANYprofile -d "COMPANY.com" -D
  "cn=proxyagent,ou=profile,dc=COMPANY,dc=com"
  -w "<proxy_password>"  <primary directory server IP address>

: ldapclient가 실패하는 경우 Directory Server ACI를 확인하십시오. ldapclient 명령이 성공하려면 ACI에서 익명 액세스를 허용해야 합니다. ACI 설정에 대한 자세한 내용은 4부의 Directory Server 액세스 제어 권장 사항을 참조하십시오.

b. 클라이언트에서 구성을 확인합니다.

# ldapclient -l

c. ldapclient 초기화는 LDAP를 가리키도록 /etc/nsswitch.conf 호스트 행을 수정합니다. 계속하려면 호스트 행을 다음과 같이 변경하십시오.

hosts:  files dns

9. 다음과 같이 /etc/pam.conf를 구성합니다.

# Not complete. All services have not been defined. Only changes are
# documented.
login   auth requisite      pam_authtok_get.so.1
login   auth required       pam_dhkeys.so.1
login   auth required       pam_dial_auth.so.1
login   auth binding        pam_unix_auth.so.1 server_policy
login   auth required       pam_ldap.so.1 use_first_pass

other   auth requisite      pam_authtok_get.so.1
other   auth required       pam_dhkeys.so.1
other   auth binding        pam_unix_auth.so.1 server_policy
other   auth required       pam_ldap.so.1 use_first_pass

passwd  auth binding        pam_passwd_auth.so.1 server_policy
passwd  auth required       pam_ldap.so.1 use_first_pass

other   account requisite   pam_roles.so.1
other   account required    pam_projects.so.1
other   account binding     pam_unix_account.so.1 server_policy
other   account required    pam_ldap.so.1

other   password required   pam_dhkeys.so.1
other   password requisite  pam_authtok_get.so.1
other   password requisite  pam_authtok_check.so.1
other   password required   pam_authtok_store.so.1 server_policy

10. 넷 그룹을 사용하여 시스템에 대한 액세스를 제한하는 경우에는 /etc/nsswitch.conf를 다음과 같이 구성합니다.

passwd:     	compat
shadow:      	compat
passwd_compat: 	ldap
shadow_compat:	ldap
group:          files ldap
netgroup:       ldap

11. 넷 그룹을 사용하여 시스템에 대한 액세스를 제한하려면 다음을 수행합니다.

주: 이 단계는 한 개의 서버를 구성하는 방법을 설명합니다. 필요에 따라 다른 서버를 비슷하게 변경하십시오.

a. 1부의 콘솔 섹션을 사용하여 넷 그룹 추가에 설명된 대로 Directory Server에 넷 그룹을 추가합니다.

b. Solaris 클라이언트에서 다음 행을 /etc/password 파일의 끝에 추가합니다.

+@<netgroup>

c. Solaris 클라이언트에서 /etc/shadow 파일의 끝에 다음 행을 추가합니다.

+@<netgroup>

: pam_ldap 모듈에 제한 사항이 있으므로 /etc/password/etc/shadow 파일에 추가하는 행에서 콜론(:)이 뒤쪽에 있는지 확인하십시오.

D. 10단계에 설명된 대로 /etc/nsswitch.conf 파일을 수정합니다.

12. Solaris 8 OS에서 Open SSH를 사용하는 경우 Open SSH가 PAM 지원으로 컴파일되었는지 확인합니다.

a. 다음 행이 /etc/local/etc/sshd_config 구성 파일에 있는지 확인하여 Open SSH에서 PAM을 사용하도록 구성합니다.

UsePAM 	yes

b. ChallengeResponseAuthenticationNo로 설정되지 않았는지 확인합니다.


Solaris 9 OS에서 실행되는 클라이언트 구성

1. 다음 Solaris 9 LDAP 라이브러리가 클라이언트 시스템에 설치되었는지 확인합니다.

  • SUNWnisu
  • SUNWcsr
  • SUNWcsu
  • SUNWcsl

: 다음 단계는 Solaris 9 클라이언트와 디렉토리 서버 간 통신을 위해 SSL을 구성합니다. 이 단계에서는 1부의 SSL 섹션 구성에 따라 SSL에 대해 디렉토리 서버가 구성되었다고 가정합니다.

2. 서버 인증서의 cn 속성에 있는 서버 이름이 클라이언트에서 연결하는 디렉토리 서버의 이름과 일치하는지 확인하십시오. 일치하지 않을 경우, defaultServerList 또는 preferredServerList 속성을 서버 인증서의 cn 속성과 일치하도록 변경합니다.

: Solaris 9 자체 LDAP 클라이언트의 경우 cert7.db 데이터베이스에 인증서 데이터베이스가 있어야 합니다. /usr/sfw/bin에 Solaris 9 OS와 함께 제공된 certutil 유틸리티는 cert8.db 데이터베이스를 만듭니다. cert7.db 데이터베이스를 만들려면 다음과 같이 수행하십시오.

3. 클라이언트 시스템에서 certutil 유틸리티를 사용할 수 있는 경우에는 /usr/local/bin에서, 이 유틸리티를 통해 <cert8.db 데이터베이스가 아니라 cert7.db 데이터베이스를 만들 수 있는지 확인합니다.

4. certutil를 사용할 수 없거나 cert8.db 데이터베이스만 만드는 경우 다음 하위 단계를 수행합니다.

a. 번들된 certutil 유틸리티가 있는 Directory Server Resource Kit 5.2.1을 다운로드합니다.

b. 루트로 다음 명령을 실행하여 클라이언트 시스템에 Directory Server Resource Kit 5.2.1을 설치합니다.

# mkdir /tmp/sunone
# unzip dsrk52-SunOS5.8_OPT.zip
# java DSRK

: 원하는 디렉토리에 키트를 설치할 수 있습니다. 다음 단계에서는 /opt/dsrk 디렉토리에 이 키트가 설치되어 있다고 가정합니다.

5. LD_LIBRARY_PATH/opt/dsrk/lib를 추가합니다.

6. 인증서 데이터베이스를 만들고 다음 명령을 실행하여 인증서를 추가합니다.

# cd /opt/dsrk/lib/nss/bin
# ./certutil -N -d /var/ldap
# chmod 644 /var/ldap/*.db

7. 루트 CA 인증서 및 해당 CA 서명 인증서(해당하는 경우)를 인증서 데이터베이스로 가져옵니다.

: 다음 명령은 인증서 파일이 ASCII 형식이라고 가정합니다. 이 파일이 이진 형식인 경우 명령에서 -a 옵션을 제거하십시오.

# ./certutil -A -a -i <path to root CA cert> -n "RootCA"
  -t "CT" -d /var/ldap
# ./certutil -A -a -i <path to sub CA cert> -n "SubCA"
  -t "CT" -d /var/ldap

8. ldapclient 유틸리티를 사용하여 클라이언트를 구성합니다.

a. /etc/pam.conf/etc/nsswitch.conf 파일을 백업합니다.

# ldapclient init -a profileName=COMPANYprofile -a
    proxyDN=cn=proxyagent,ou=profile,dc=COMPANY,dc=com
    -a domainName=COMPANY.com -a proxyPassword=<password>
    <primary directory server IP address>

: ldapclient가 실패하는 경우 Directory Server ACI를 확인하십시오. ldapclient 명령이 성공하려면 ACI에서 익명 액세스를 허용해야 합니다. ACI 설정에 대한 자세한 내용은 4부의 Directory Server 액세스 제어 권장 사항을 참조하십시오.

b. 클라이언트에서 구성을 확인합니다.

# ldapclient list

c. ldapclient 초기화는 LDAP를 가리키도록 /etc/nsswitch.conf 호스트 행을 수정합니다. 계속하려면 호스트 행을 다음과 같이 변경하십시오.

hosts:  files dns

9. 다음과 같이 /etc/pam.conf를 구성합니다.

# Not complete. All services have not been defined. Only changes are
# documented.
login   auth requisite      pam_authtok_get.so.1
login   auth required       pam_dhkeys.so.1
login   auth required       pam_dial_auth.so.1
login   auth binding        pam_unix_auth.so.1 server_policy
login   auth required       pam_ldap.so.1 use_first_pass

other   auth requisite      pam_authtok_get.so.1
other   auth required       pam_dhkeys.so.1
other   auth binding        pam_unix_auth.so.1 server_policy
other   auth required       pam_ldap.so.1 use_first_pass

passwd  auth binding        pam_passwd_auth.so.1 server_policy
passwd  auth required       pam_ldap.so.1 use_first_pass

other   account requisite   pam_roles.so.1
other   account required    pam_projects.so.1
other   account binding     pam_unix_account.so.1 server_policy
other   account required    pam_ldap.so.1

other   password required   pam_dhkeys.so.1
other   password requisite  pam_authtok_get.so.1
other   password requisite  pam_authtok_check.so.1
other   password required   pam_authtok_store.so.1 server_policy

10. 넷 그룹을 사용하여 시스템에 대한 액세스를 제한하려면 다음을 수행합니다.

주: 이 단계는 한 개의 서버를 구성하는 방법을 설명합니다. 필요에 따라 다른 서버를 비슷하게 변경하십시오.

a. 1부의 콘솔 섹션을 사용하여 넷 그룹 추가에 설명된 대로 Directory Server에 넷 그룹을 추가합니다.

b. Solaris 클라이언트에서 다음 행을 /etc/password 파일의 끝에 추가합니다.

+@<netgroup>

c. Solaris 클라이언트에서 다음 행을 /etc/shadow 파일의 끝에 추가합니다.

+@<netgroup>

: pam_ldap 모듈에 제한 사항이 있으므로 /etc/password/etc/shadow 파일에 추가하는 행에서 콜론(:)이 뒤쪽에 있는지 확인하십시오.

11. /etc/nsswitch.conf를 다음과 같이 수정합니다.

passwd:     	compat
shadow:      	compat
passwd_compat: 	ldap
shadow_compat:	ldap
group:          files ldap
netgroup:       ldap

12. 다음 행이 sshd 구성 파일 /etc/ssh/sshd_config에 있는지 확인합니다.

PAMAuthenticationViaKBDInt	yes

13. Solaris SSH를 사용하는 경우, Sun Alert ID 102451의 다음 하위 단계를 Solaris 9 SSL 버그 해결 방법으로 사용합니다.

: 이 문제는 SPARC 플랫폼의 다음 릴리스에서 해결되었습니다.

  • 패치 114356-08 이상이 설치된 Solaris 9(BugID 6402708)
  • 패치 112908-29 이상이 설치된 Solaris 9(BugID 5020096)
  • 패치 113273-13 이상 또는 114356-09 이상이 설치된 Solaris 9(BugID 6410762)

a. sshd_config(4) (/etc/ssh/sshd_config)에 다음 항목을 추가하여 GSS-API 지원을 비활성화합니다.

GSSAPIAuthentication no
GSSAPIKeyExchange no
GSSAPIStoreDelegatedCredentials no

b. 또한 ssh_config(4) (/etc/ssh/ssh_config)에 다음 항목을 추가합니다.

GSSAPIAuthentication no
GSSAPIKeyExchange no

c. 그런 다음 다음 명령을 루트를 실행하여 SSH 서비스를 다시 시작합니다.

# /etc/init.d/sshd restart

Solaris 10 OS를 실행하는 클라이언트 구성

1. 다음 Solaris 10 자체 LDAP 단계 II 패키지가 클라이언트 시스템에 설치되어 있는지 확인합니다.

  • SUNWnisu
  • SUNWcsr
  • SUNWcsu
  • SUNWcsl

: 다음 단계는 Solaris 10 클라이언트와 디렉토리 서버 간 통신을 위한 SSL을 구성합니다. 이러한 단계에서는 1부의 SSL 섹션 구성에 따라 SSL에 대해 디렉토리 서버가 구성되었다고 가정합니다.

2. 서버 인증서의 cn 속성에 있는 서버 이름이 클라이언트에서 연결하는 디렉토리 서버의 이름과 일치하는지 확인합니다. 일치하지 않을 경우, defaultServerList 또는 preferredServerList 속성을 서버 인증서의 cn 속성과 일치하도록 변경합니다.

: Solaris 10 OS는 /usr/sfw/bin 디렉토리에 있는 번들된 certutil 유틸리티와 함께 제공됩니다. Solaris 10 클라이언트는 Solaris 8 및 9 클라이언트와 달리 cert8.db 데이터베이스가 있어야 합니다.

3. 인증서 데이터베이스를 만들고 인증서를 추가합니다.

a. 다음 명령을 실행합니다.

# /usr/sfw/bin/certutil -N -d /var/ldap
# chmod 644 /var/ldap/*.db

: 다음 명령은 인증서가 PEM 또는 DER 형식이라고 가정합니다. 인증서가 PKCS# 12 파일에 번들된 경우 관리 설명서의 "CA 서명이 있는 서버 인증서를 내보내거나 가져오려면" 절에 있는 가져오기 지침을 참조하십시오.

b. 루트 CA 및 해당 CA 인증서를 모두 인증서 데이터베이스로 가져옵니다.

: 다음 명령은 인증서 파일이 ASCII 형식이라고 가정합니다. 이 파일이 이진 형식인 경우 명령에서 -a 옵션을 제거하십시오.

# /usr/sfw/bin/certutil -A -a -i <path to root CA cert>
  -n "RootCA" -t "CT" -d /var/ldap
# /usr/sfw/bin/certutil -A -a -i <path to sub CA cert>
  -n "SubCA" -t "CT" -d /var/ldap

4. ldapclient 유틸리티를 사용하여 클라이언트를 구성합니다.

a. /etc/pam.conf/etc/nsswitch.conf 파일을 백업합니다.

# ldapclient init -a profileName=COMPANYprofile -a
  domainName="COMPANY.com" -a proxyDN="cn=proxyagent,ou=profile,
  dc=COMPANY,dc=com" -a proxyPassword=<proxy_password>
  <primary directory server IP address>

: ldapclient가 실패하는 경우 Directory Server ACI를 확인하십시오. ldapclient 명령이 성공하려면 ACI에서 익명 액세스를 허용해야 합니다. ACI 설정에 대한 자세한 내용은 4부의 Directory Server 액세스 제어 권장 사항을 참조하십시오.

b. 클라이언트에서 구성을 확인합니다.

# ldapclient list

c. ldapclient 초기화는 LDAP를 가리키도록 /etc/nsswitch.conf 호스트 행을 수정합니다. 계속하려면 호스트 행을 다음과 같이 변경하십시오.

hosts:  files dns

5. 다음과 같이 /etc/pam.conf를 구성합니다.

# Not complete. All services have not been defined. Only changes are
# documented here.
#
login   auth requisite      pam_authtok_get.so.1
login   auth required       pam_dhkeys.so.1
login   auth required       pam_unix_cred.so.1
login   auth required       pam_dial_auth.so.1
login   auth binding        pam_unix_auth.so.1 server_policy
login   auth required       pam_ldap.so.1

other   auth requisite      pam_authtok_get.so.1
other   auth required       pam_dhkeys.so.1
other   auth required       pam_unix_cred.so.1
other   auth binding        pam_unix_auth.so.1 server_policy
other   auth required       pam_ldap.so.1

passwd  auth binding        pam_passwd_auth.so.1 server_policy
passwd  auth required       pam_ldap.so.1

other   account requisite   pam_roles.so.1
other   account required    pam_projects.so.1
other   account binding     pam_unix_account.so.1 server_policy
other   account required    pam_ldap.so.1

other   password required   pam_dhkeys.so.1
other   password requisite  pam_authtok_get.so.1
other   password requisite  pam_authtok_check.so.1
other   password required   pam_authtok_store.so.1 server_policy

6. 넷 그룹을 사용하여 시스템에 대한 액세스를 제한하려면 다음을 수행합니다.

주: 이 단계는 한 개의 서버를 구성하는 방법을 설명합니다. 필요에 따라 다른 서버를 비슷하게 변경하십시오.

a. 1부의 콘솔 섹션을 사용하여 넷 그룹 추가에 설명된 대로 Directory Server에 넷 그룹을 추가합니다.

b. Solaris 클라이언트에서 /etc/shadow 파일의 끝에 다음 행을 추가합니다.

+@<netgroup>

c. Solaris 클라이언트에서 /etc/shadow 파일의 끝에 다음 행을 추가합니다.

+@<netgroup>

: pam_ldap module에 제한 사항이 있으므로 /etc/password/etc/shadow 파일에 추가하는 행에서 콜론(:)이 뒤쪽에 있는지 확인하십시오.

D. 10단계에 설명된 대로 /etc/nsswitch.conf 파일을 수정합니다.

7. 넷 그룹을 사용하여 시스템에 대한 액세스를 제한하는 경우에는 /etc/nsswitch.conf를 다음과 같이 구성합니다.

passwd:     	compat
shadow:      	compat
passwd_compat: 	ldap
shadow_compat:	ldap
group:          files ldap
netgroup:       ldap

8. 다음 행이 sshd 구성 파일 /etc/ssh/sshd_config에 있는지 확인합니다.

PAMAuthenticationViaKBDInt	yes

Comments (latest comments first)

Discuss and comment on this resource in the BigAdmin Wiki

Unless otherwise licensed, code in all technical manuals herein (including articles, FAQs, samples) is provided under this License.


BigAdmin