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

인쇄 보기 종료

업데이트 날짜: 2014년 7월
 
 

PAM 구성

pam_ldap 모듈은 LDAP이 클라이언트를 인증하고 계정 관리를 수행하기 위해 사용하는 PAM 모듈 옵션입니다. 클라이언트 프로파일의 인증 모드를 simple로, 자격 증명 레벨을 self로 구성한 경우 pam_krb 모듈도 사용으로 설정해야 합니다.

UNIX policy를 사용하도록 PAM 구성

/etc/pam.conf 파일은 PAM이 UNIX policy를 사용하기 위해 사용하는 기본 구성 파일입니다. 일반적으로 이 파일을 변경하지 않아도 됩니다.

그러나 shadow 데이터로 제어되는 암호 에이징 및 암호 정책이 필요한 경우 enableShadowUpdate 스위치를 사용하여 클라이언트를 구성하고 실행해야 합니다. 섀도우 데이터 업데이트를 사용으로 설정하도록 LDAP 클라이언트를 초기화하는 예는 LDAP 클라이언트 초기화를 참조하십시오.

구성 파일에 대한 자세한 내용은 pam.conf(4) 매뉴얼 페이지를 참조하십시오.

LDAP server_policy를 사용하도록 PAM 구성

LDAP server_policy를 사용하도록 PAM을 구성하려면 계정 관리에 pam_ldap 모듈을 사용하는 pam_conf 파일 예을 참조하십시오. 샘플 파일을 사용하여 다음 추가 단계를 수행하십시오.

  • pam_ldap.so.1이 포함된 라인을 클라이언트의 /etc/pam.conf 파일에 추가합니다.

  • 샘플 파일의 PAM 모듈에 binding 플래그와 server_policy 옵션을 지정하는 경우 클라이언트의 /etc/pam.conf 파일에서 해당 모듈에 대해 동일한 플래그와 옵션을 사용합니다.

    binding 제어 플래그를 사용하면 원격(LDAP) 암호의 로컬 암호 대체가 가능합니다. 예를 들어, 로컬 파일과 LDAP 이름 공간 둘 다에 사용자 계정이 있는 경우 로컬 계정과 연관된 암호가 원격 암호보다 우선 적용됩니다. 따라서 로컬 암호가 만료되면 원격 LDAP 암호가 유효해도 인증에 실패합니다.

    server_policy 옵션을 사용하면 pam_unix_auth, pam_unix_accountpam_passwd_auth가 LDAP 이름 공간에서 찾은 사용자를 무시하고 pam_ldap에서 인증 또는 계정 검증을 수행할 수 있도록 허용합니다. pam_authtok_store의 경우 새 암호가 암호화 없이 LDAP 서버로 전달됩니다. 그러면 암호가 서버에 구성된 암호 암호화 체계에 따라 디렉토리에 저장됩니다. 자세한 내용은 pam.conf(4)pam_ldap(5)을 참조하십시오.

  • 서비스 모듈 pam_authtok_store.so.1이 포함된 라인에 server_policy 옵션을 추가합니다.


주 -  이전에는 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