Oracle® Solaris 11.2의 이름 지정 및 디렉토리 서비스 작업: LDAP

인쇄 보기 종료

업데이트 날짜: 2014년 7월
 
 

계정 관리를 사용으로 설정하도록 디렉토리 서버 구성

pam_ldap을 사용하는 클라이언트와 pam_unix_* 모듈을 사용하는 클라이언트에 대해 계정 관리를 구현할 수 있습니다.


Caution

주의  -  동일한 LDAP 이름 지정 도메인에 pam_ldappam_unix_* 모듈을 함께 사용하지 마십시오. 모든 클라이언트가 pam_ldap을 사용하거나 모든 클라이언트가 pam_unix_* 모듈을 사용합니다. 이 제한은 전용 LDAP 서버가 필요함을 나타낼 수 있습니다.


pam_ldap 모듈을 사용하는 클라이언트에 대한 계정 관리

pam_ldap이 제대로 작동하려면 서버에서 암호 및 계정 잠금 정책을 올바르게 구성해야 합니다. 디렉토리 서버 콘솔 또는 ldapmodify를 사용하여 LDAP 디렉토리에 대한 계정 관리 정책을 구성할 수 있습니다. 절차 및 자세한 내용은 사용 중인 Oracle Directory Server Enterprise Edition 버전의 관리 설명서에 나오는 "사용자 계정 관리" 장을 참조하십시오.


주 -  이전에는 pam_ldap 계정 관리를 사용할 경우 모든 사용자가 시스템에 로그인할 때마다 인증을 위해 로그인 암호를 제공해야 했습니다. 따라서 ssh 등의 도구를 사용한 비암호 기반 로그인이 실패합니다.

이제 사용자가 로그인할 때 디렉토리 서버에 대해 인증을 수행하지 않은 상태로 계정 관리를 수행하고 사용자의 계정 상태를 검색할 수 있습니다.

디렉토리 서버의 새 컨트롤은 1.3.6.1.4.1.42.2.27.9.5.8입니다. 이 컨트롤은 기본적으로 사용으로 설정됩니다. 기본 컨트롤 구성을 수정하려면 디렉토리 서버에서 ACI(액세스 제어 명령)를 추가하십시오. 예를 들어, 다음과 같습니다.

dn: oid=1.3.6.1.4.1.42.2.27.9.5.8,cn=features,cn=config
objectClass: top
objectClass: directoryServerFeature
oid:1.3.6.1.4.1.42.2.27.9.5.8
cn:Password Policy Account Usable Request Control
aci: (targetattr != "aci")(version 3.0; acl "Account Usable";
allow (read, search, compare, proxy)
(groupdn = "ldap:///cn=Administrators,cn=config");)
creatorsName: cn=server,cn=plugins,cn=config
modifiersName: cn=server,cn=plugins,cn=config

proxy 사용자의 암호는 절대 만료되지 않아야 합니다. 프록시 암호가 만료되면 proxy 자격 증명 레벨을 사용하는 클라이언트는 서버에서 이름 지정 서비스 정보를 검색할 수 없습니다. 프록시 사용자의 암호가 만료되지 않도록 하려면 다음 스크립트를 사용하여 프록시 계정을 수정합니다.

# ldapmodify -h ldapserver -D administrator_DN \
-w administrator-password <<EOF
dn: proxy-user-DN
DNchangetype: modify
replace: passwordexpirationtime
passwordexpirationtime: 20380119031407Z
EOF

주 -  pam_ldap 계정 관리는 Oracle Directory Server Enterprise Edition을 사용하여 암호 에이징 및 계정 만료 정보를 유지 관리하고 사용자에게 제공합니다. 디렉토리 서버는 사용자 계정을 검증하기 위해 섀도우 항목의 해당 데이터를 해석하지 않습니다. 그러나 pam_unix_* 모듈은 섀도우 데이터를 검사하여 계정이 잠겼는지 여부 또는 암호가 에이징되었는지 여부를 확인합니다. LDAP 이름 지정 서비스 또는 디렉토리 서버는 섀도우 데이터를 최신 상태로 유지하지 않으므로 모듈에서 섀도우 데이터를 기반으로 액세스 권한을 부여하지 않아야 합니다. 섀도우 데이터는 proxy ID를 사용하여 검색됩니다. 따라서 proxy 사용자에게 userPassword 속성에 대한 읽기 권한을 부여하지 마십시오. proxy 사용자에게 userPassword에 대한 읽기 권한을 부여하지 않으면 PAM 서비스에서 잘못된 계정 검증을 수행하지 않습니다.

pam_unix_* 모듈을 사용하는 클라이언트에 대한 계정 관리

LDAP 클라이언트가 계정 관리에 pam_unix_* 모듈을 사용할 수 있게 하려면 섀도우 데이터를 업데이트할 수 있도록 서버를 설정해야 합니다. pam_ldap 계정 관리와 달리 pam_unix_* 모듈은 추가 구성 단계가 필요 없습니다. idsconfig 유틸리티를 실행하여 모든 구성을 수행할 수 있습니다.

다음 예에서는 두 idsconfig 실행의 출력을 보여 줍니다.

첫번째 idsconfig 실행은 기존 클라이언트 프로파일을 사용합니다.

# /usr/lib/ldap/idsconfig

It is strongly recommended that you BACKUP the directory server
before running idsconfig.

Hit Ctrl-C at any time before the final confirmation to exit.

Do you wish to continue with server setup (y/n/h)? [n] y
Enter the JES Directory Server's  hostname to setup: myserver
Enter the port number for DSEE (h=help): [389]
Enter the directory manager DN: [cn=Directory Manager]
Enter passwd for cn=Directory Manager :
Enter the domainname to be served (h=help): [west.example.com]
Enter LDAP Base DN (h=help): [dc=west,dc=example,dc=com]
Checking LDAP Base DN ...
Validating LDAP Base DN and Suffix ...
sasl/GSSAPI is not supported by this LDAP server

Enter the profile name (h=help): [default] WestUserProfile

Profile 'WestUserProfile' already exists, it is possible to enable
shadow update now. idsconfig will exit after shadow update
is enabled. You can also continue to overwrite the profile
or create a new one and be given the chance to enable
shadow update later.
Just enable shadow update (y/n/h)? [n] y
Add the administrator identity (y/n/h)? [y]
Enter DN for the administrator: [cn=admin,ou=profile,dc=west,dc=example,dc=com]
Enter passwd for the administrator:
Re-enter passwd:
ADDED: Administrator identity cn=admin,ou=profile,dc=west,dc=example,dc=com.
Proxy ACI LDAP_Naming_Services_proxy_password_read does not
exist for dc=west,dc=example,dc=com.
ACI SET: Give cn=admin,ou=profile,dc=west,dc=example,dc=com read/write access
to shadow data.
ACI SET: Non-Admin access to shadow data denied.

Shadow update has been enabled.

두번째 idsconfig 실행은 나중에 사용하기 위해 새 프로파일을 만듭니다. 부분 출력만 표시됩니다.

# /usr/lib/ldap/idsconfig

It is strongly recommended that you BACKUP the directory server
before running idsconfig.

Hit Ctrl-C at any time before the final confirmation to exit.

Do you wish to continue with server setup (y/n/h)? [n] y
Enter the JES Directory Server's  hostname to setup: myserver
Enter the port number for DSEE (h=help): [389]
Enter the directory manager DN: [cn=Directory Manager]
Enter passwd for cn=Directory Manager :
Enter the domainname to be served (h=help): [west.example.com]
Enter LDAP Base DN (h=help): [dc=west,dc=example,dc=com]
Checking LDAP Base DN ...
Validating LDAP Base DN and Suffix ...
sasl/GSSAPI is not supported by this LDAP server

Enter the profile name (h=help): [default] WestUserProfile-new
Default server list (h=help): [192.168.0.1]
.
.
.
Do you want to enable shadow update (y/n/h)? [n] y
              Summary of Configuration

1  Domain to serve               : west.example.com
2  Base DN to setup              : dc=west,dc=example,dc=com
Suffix to create          : dc=west,dc=example,dc=com
3  Profile name to create        : WestUserProfile-new
.
.
.
19  Enable shadow update          : TRUE
.
.
.
Enter DN for the administrator: [cn=admin,ou=profile,dc=west,dc=example,dc=com]
Enter passwd for the administrator:
Re-enter passwd:


WARNING: About to start committing changes. (y=continue, n=EXIT) y

1. Changed timelimit to -1 in cn=config.
2. Changed sizelimit to -1 in cn=config.
.
.
.
11. ACI for dc=test1,dc=mpklab,dc=sfbay,dc=sun,dc=com modified to
disable self modify.
.
.
.
15. Give cn=admin,ou=profile,dc=west,dc=example,dc=com write permission for shadow.
...