IT/보안

LDAP 연결 구성

알콩달콩아빠 2023. 5. 11. 17:56
728x90
반응형

제품 클러스터에 대해 LDAP(Lightweight Directory Access Protocol) 연결을 구성하십시오.

LDAP 디렉토리를 제품 디렉토리와 연결해야 합니다. 그런 다음 LDAP 디렉토리의 사용자를 클러스터에 추가할 수 있습니다.

다음과 같은 LDAP 유형이 지원됩니다.

  • IBM Tivoli Directory Server
  • IBM Lotus Domino
  • IBM SecureWay Directory Server
  • Novell eDirectory
  • Sun Java™ System Directory Server
  • Netscape Directory Server
  • Microsoft Active Directory
  • 사용자 정의

참고: LDAP 서버를 설정할 때 계정 잠금 정책을 구성할 수 있습니다. 계정 잠금 정책은 로그인 시도가 여러 번 실패하는 경우 계정에 대한 액세스를 제한하여 강화된 보안을 제공합니다.

중요: 플랫폼 UI(ibm-zen-operator) 서비스가 설치된 경우에는 LDAP 사용자 및 사용자 그룹 역할, 권한 관리에 사용자 관리 기능을 사용할 수 있습니다. LDAP 또는 OpenShift 사용자를 클러스터에 추가할 수 있습니다. 사용자를 추가할 때 Username 필드에서 사용자의 OpenShift 또는 LDAP 로그인 ID를 지정해야합니다.

필수 사용자 유형 또는 액세스 레벨: 클러스터 관리자 또는 Cloud Pak 관리자

LDAP 디렉토리에 연결

다음 단계에 따라 LDAP 연결을 설정하십시오.

전제조건: 클러스터를 설치하십시오. 클러스터가 설치되면 관리 사용자 이름, 비밀번호 및 URL이 표시된다.

  1. URL을 사용하여 콘솔에 로그온한 후 사용자 이름과 패스워드를 입력한다.
  2. 주: 콘솔은 플랫폼 UI 또는 공통 UI일 수 있습니다. 자세한 정보는 콘솔을 사용하여 클러스터 액세스를 참조하십시오.
  3. 탐색 메뉴에서 ID 및 액세스 > ID 제공자를 클릭하십시오.
  4. 연결 작성을 클릭하십시오. "LDAP 연결" 페이지가 표시됩니다.
  5. LDAP 연결을 설정하려면 다음 세부사항을 입력하십시오.
    주: 다중 LDAP 연결 인스턴스를 동일한 LDAP 서버로 구성할 수 있습니다. 그러나 다음 요구사항을 충족하는지 확인하십시오.
    • Base DN 및 연결 Name 모두 고유해야 합니다.
    • User ID map 에서 지정한 LDAP 속성의 사용자 이름은 LDAP 인스턴스에서 고유해야 합니다. 이 요구사항은 WebSphere Liberty 가 기본적으로 다중 LDAP에 연합 레지스트리를 사용하기 때문입니다. 자세한 정보는 Liberty에서 LDAP 사용자 레지스트리 구성을 참조하십시오.
    • IBM Cloud Pak 기본 서비스는 기본 admin 사용자 ID를 제공합니다. LDAP 레지스트리에 admin 사용자 ID가 있는 경우 기본 서비스가 제공하는 기본 admin 사용자 ID의 이름을 바꿔야 합니다. 기본 이름을 변경하는 방법에 대한 자세한 정보는 기본 관리 사용자 이름 변경 또는 클러스터 관리자 사용자 이름 변경을 참조하십시오.
    LDAP 연결
    • 연결 이름: LDAP 연결의 고유 이름. 형식: 1 - 50개의 영숫자 문자. 허용되는 특수 문자: - _
    • 서버 유형: 연결할 수 있는 디렉토리 서버 유형의 목록입니다. 목록에서 하나를 선택하십시오.
    LDAP 인증
    • 기본 DN: 검색 기반의 식별 이름. 예: dc=abc,dc=com. 형식: 1-255자의 영숫자 문자, 허용되는 특수 문자:
    • =
    • .
    • ,
    • -
    • 바인드 DN: 기본 DN을 검색할 수 있는 사용자. 예: cn=admin,dc=abc,dc=com. 이 매개변수는 선택사항입니다. Bind DN 매개변수에 사용자가 지정되지 않은 경우 인증 없이 LDAP 연결이 설정됩니다. 형식: 0-255자의 영숫자 문자, 공백이 허용됩니다. 허용되는 특수 문자:
    • =
    • .
    • ,
    • -
    • :
    • @
    • (
    • )
    • _
    • \
    • 바인드 DN 비밀번호: Bind DN에서 언급되는 사용자의 비밀번호. 바인드 DN에 사용자를 지정하지 않으면 이 매개변수는 필요하지 않습니다. 최대 255자가 허용됩니다.
      Base DN : DC=mycompany,DC=com
      Bind DN : CN=Administrator,CN=Users,DC=mycompany,DC=com
      
      Base DN의 경우, 다음 값이 올바르지 않습니다.
      • dc=mycompany,dc=com에서는 DC가 소문자 알파벳이기 때문입니다.
      • DC=mycompany, DC=com에서는 매개변수 사이에 공백이 있기 때문입니다.
      Bind DN의 경우, 다음 값이 올바르지 않습니다.
      • cn=Administrator,cn=Users,dc=mycompany,dc=com에서는 CN  DC가 소문자 알파벳이기 때문입니다.
      • CN=Administrator,DC=mycompany,DC=com에서는 CN=Users 매개변수가 누락되었기 때문입니다.
      • CN=Administrator,CN=Users, DC=mycompany,DC=com에서는 매개변수 사이에 공백이 있기 때문입니다.
      • CN=administrator,CN=Users,DC=mycompany,DC=com에서는 administrator 매개변수값이 소문자 알파벳으로 시작하기 때문입니다.
      참고: Microsoft Active Directory 서버는 연결을 설정할 때 Base DN  Bind DN 값을 엄격하게 확인합니다.
    • 참고: 기본 DN  바인드 DN 값의 구성이 대소문자를 구분하도록 설정되어야 하며 전체 식별 이름(DN) 경로여야 합니다. 공백, 쉼표 및 기타 문자를 포함하는 DN 경로가 LDAP 서버에서 구성된 것과 동일해야 합니다. 다음 예를 참조하십시오.
    연결 테스트를 클릭하여 LDAP 연결 세부사항이 올바른지 확인할 수 있습니다.연결에 대한 서버 URL을 입력하십시오.
    • URL: LDAP 디렉토리 도메인 이름 또는 IP 주소 및 LDAP 포트 번호. 도메인 이름은 ldap(s)://로 시작되어야 합니다. URL 예제: ldap(s)://corpldap.abc.com:389 또는 ldap://10.10.10.1:389
    LDAPS(LDAP over SSL)의 경우에는 도메인 이름을 사용해야 하며 URL은 ldaps://로 시작해야 합니다. 예제 URL: ldaps://corpldap.abc.com:636LDAP 필터
    • LDAP 서버가 LDAP 버전 3을 준수하는 경우 필터는 알파벳 문자 또는 공백으로 구분되지 않는다.
    • 기본 서비스 버전 3.19 이상에서 Group filter  Group member ID map 필터는 하나 이상의 값을 지원합니다.
    검색 필터에 대한 정보를 입력하십시오. LDAP 유형별 기본 LDAP 필터의 경우 LDAP 유형별 기본 LDAP 필터를 참조하십시오.
    • 그룹 필터: 그룹 검색을 위한 필터링 절. Format: 1 - 255 alphanumeric characters; From foundational services version 3.23 and later, IAM supports all the special characters but following are the validated and tested special characters: white space, = ; . , & % () {} <> | !
    • 그룹 ID 맵핑: 그룹 이름을 LDAP 항목에 맵핑하는 필터. 형식: 1 - 255자의 영숫자, 허용되는 특수 문자: 공백, * : = ; . , & % () {}
    • 그룹 멤버 ID 맵핑: 사용자를 그룹에 맵핑하는 필터. 형식: 1 - 255자의 영숫자, 허용되는 특수 문자: 공백, * : = ; . , & % () {}
    • 사용자 필터: 사용자 검색을 위한 필터링 절. Format: 1 - 255 alphanumeric characters; From foundational services version 3.23 and later, IAM supports all the special characters but following are the validated and tested special characters: white space, = ; . , & % () {} <> | !
    • 사용자 ID 맵: LDAP 항목에 사용자 이름을 맵핑하는 필터. 형식: 1 - 255자의 영숫자, 허용되는 특수 문자: 공백, * : = ; . , & % () {}
  6. 참고:
  7. 참고: 호스트 이름을 사용하여 LDAPS 서버에 연결할 수 없는 경우, LDAPS 서버의 IP 주소와 호스트 이름을 로컬 DNS에 추가하십시오. LDAPS 서버 호스트 이름은 마스터 노드에서 해석 가능해야 합니다.
  8. LDAP 서버
  9. 인증 정보를 입력하십시오.
  10. 연결 정보를 입력하십시오.
  11. 작성을 클릭하십시오.

클러스터가 이제 LDAP 디렉토리와 연결됩니다.

주: 다른 호스트를 차단하려면 알려지지 않은 호스트로 DNS 루프를 방지하기 위해 출구 방화벽 추가 를 참조하십시오.

참고: LDAPS 연결을 사용하는 경우에는 LDAPS 연결에 필요한 SSL(Secure Sockets Layer) 인증서가 디렉토리에 연결할 때 자동으로 구성됩니다. 그러나 auth-idp 팟(Pod)은 수동으로 다시 시작해야 합니다. 마스터 노드에서 다음 단계를 완료하십시오.

  1. Kubernetes CLI(kubectl) 도구를 설치하십시오.
  2. auth-idp 팟(Pod)을 가져오십시오.
  3. kubectl -n ibm-common-services get pods | grep auth-idp
    
  4. auth-idp 팟(Pod)을 삭제하십시오.
  5. kubectl -n ibm-common-services delete pods <pod_name>
    
  6. 팟(Pod)이 다시 시작될 때까지 대기하십시오.
  7. LDAPS 연결이 실패한 경우에는 연결을 수동으로 설정할 수도 있습니다. 자세한 정보는 SSL을 통한 LDAP 구성을 참조하십시오.

다음으로 LDAP 사용자 및 사용자 그룹을 클러스터에 추가할 수 있습니다.

참고: 클러스터 관리자 또는 Cloud Pak 관리자가 관리자에게 LDAP 디렉토리에 대한 보기 액세스 권한을 제공해야 합니다. 그러면 관리자가 콘솔을 사용하여 팀에 사용자 또는 그룹을 추가할 수 있습니다.

LDAP 유형별 기본 LDAP 필터

주: 자유에 대한 제한사항이 있습니다. 즉, LDAP userFilter  groupFilter 필드에는 =%v 값이 있는 속성이 있어야 합니다. 예를 들어, 데이터 로그인 플로우가 작동하려면 (cn=%v) for Cloud Pak과 Cloud Pak의 경우입니다.

다음 표는 필터의 이름, 해당 데이터 유형 및 기본값을 나타냅니다. groupFilter  groupMemberIdMap 는 기본 서비스 버전 3.19 이상에서 하나 이상의 기본값을 가질 수 있습니다.

예:

  • groupFilter = (S = %v) ((objectclass=groupOfNames) (objectclass=groupOfUniqueNames)))
  • groupMemberIdMap = groupOfNames:member;groupOfUniqueNames:uniqueMember
표 1. 기본 IBM Tivoli Directory Server LDAP 필터 목록속성 이름데이터 유형기본값
groupFilter 문자열 (&(cn=%v)(objectclass=groupOfUniqueNames))
groupIdMap 문자열 *:cn
groupMemberIdMap 문자열 groupOfUniqueNames:uniquemember
userFilter 문자열 (&(emailAddress=%v)(objectclass=person))
userIdMap 문자열 *:emailAddress
표 2. 기본 사용자 정의 서버 LDAP 필터 목록속성 이름데이터 유형기본값
groupFilter 문자열 (&(cn=%v)(objectclass=groupOfUniqueNames))
groupIdMap 문자열 *:cn
groupMemberIdMap 문자열 groupOfUniqueNames:uniquemember
userFilter 문자열 (&(uid=%v)(objectclass=ePerson))
userIdMap 문자열 *:uid
표 3. 기본 Microsoft Active Directory LDAP 필터 목록속성 이름데이터 유형기본값
groupFilter 문자열 (&(cn=%v)(objectcategory=group))
groupIdMap 문자열 *:cn
groupMemberIdMap 문자열 memberOf:member
userFilter 문자열 (((sAMAccountName= %v) (objectclass = person))
userIdMap 문자열 user:sAMAccountName
표 4. 기본 IBM Lotus Domino LDAP 필터 목록속성 이름데이터 유형기본값
groupFilter 문자열 (&(cn=%v)(objectclass=dominoGroup))
groupIdMap 문자열 *:cn
groupMemberIdMap 문자열 dominoGroup:member
userFilter 문자열 (&(uid=%v)(objectclass=person))
userIdMap 문자열 person:uid
표 5. 기본 IBM SecureWay Server LDAP 필터의 목록속성 이름데이터 유형기본값
groupFilter 문자열 (&(cn=%v)((objectclass=groupOfNames)(objectclass=groupOfUniqueNames)))
groupIdMap 문자열 *:cn
groupMemberIdMap 문자열 groupOfNames:member;groupOfUniqueNames:uniqueMember
userFilter 문자열 (&(uid=%v)(objectclass=ePerson))
userIdMap 문자열 *:uid
표 6. 기본 Sun Java System Directory Server LDAP 필터 목록속성 이름데이터 유형기본값
groupFilter 문자열 (&(cn=%v)(objectclass=ldapsubentry))
groupIdMap 문자열 *:cn
groupMemberIdMap 문자열 nsRole:nsRole
userFilter 문자열 (&(uid=%v)(objectclass=inetOrgPerson))
userIdMap 문자열 inetOrgPerson:uid
표 7. 기본 Netscape Directory Server LDAP 필터 목록속성 이름데이터 유형기본값
groupFilter 문자열 (&(cn=%v)((objectclass=groupOfNames)(objectclass=groupOfUniqueNames)))
groupIdMap 문자열 *:cn
groupMemberIdMap 문자열 groupOfNames:member;groupOfUniqueNames:uniqueMember
userFilter 문자열 (&(uid=%v)(objectclass=inetOrgPerson))
userIdMap 문자열 inetOrgPerson:uid
표 8. 기본 Novell eDirectory LDAP 필터 목록속성 이름데이터 유형기본값
groupFilter 문자열 (S = %v) (objectclass=groupOf이름))
groupIdMap 문자열 *:cn
groupMemberIdMap 문자열 groupOfNames:member
userFilter 문자열 (&(cn=%v)(objectclass=person))
userIdMap 문자열 person:cn

알 수 없는 호스트로의 DNS 루프를 방지하기 위해 송신 방화벽 추가

다음 명령을 실행하여 송신 네트워크 정책을 검색하십시오.

oc get egressnetworkpolicy ldap-firewall

샘플 출력:

NAME            AGE
ldap-firewall   16m

다음 샘플 YAML 사양에서는 LDAP 방화벽 송신 네트워크 정책을 정의합니다. 다른 호스트를 차단하려면 액세스를 거부하려는 호스트를 지정하도록 사양을 업데이트하십시오. 그런 다음, 업데이트된 정책을 저장 및 적용하십시오.

apiVersion: network.openshift.io/v1
kind: EgressNetworkPolicy
metadata:
  name: ldap-firewall
spec:
  egress:
  - type: Allow
    to:
      dnsName: bluepages.ibm.com
  - type: Allow
    to:
      cidrSelector:  9.30.192.0/24
  - type: Deny
    to:
      cidrSelector: 0.0.0.0/0
  podSelector:
    matchLabels:
      app: auth-idp
  policyType:
  - Egress

출처 : LDAP 연결 구성 - IBM Documentation

728x90
반응형