OpenLDAP 유지보수 태스크

로그 파일 위치

OpenLDAP 로그 파일은 /opt/apigee/var/log 디렉터리에 포함되어 있습니다. 디스크 공간을 과도하게 차지하지 않도록 주기적으로 보관처리 및 삭제할 수 있습니다. OpenLDAP 로그의 유지, 보관처리, 삭제에 대한 정보는 http://www.openldap.org/doc/admin24/maintenance.html에서 OpenLDAP 매뉴얼의 섹션 19.2에서 확인할 수 있습니다.

사용자 비밀번호 수동 설정

사용자는 Edge UI에서 새 Edge 비밀번호를 요청할 수 있습니다. 그러면 비밀번호 설정에 대한 정보가 포함된 이메일이 사용자에게 전송됩니다. 하지만 SMTP 서버가 다운되거나 어떤 이유로든 사용자가 이메일을 받을 수 없는 경우 OpenLDAP 명령어를 사용하여 사용자의 비밀번호를 수동으로 설정할 수 있습니다.

사용자 비밀번호를 설정하려면 다음 단계를 따르세요.

  1. ldapsearch를 사용하여 사용자 정보를 다운로드합니다.
    ldapsearch -w ldapAdminPWord -D "cn=manager,dc=apigee,dc=com" -b "dc=apigee,dc=com" -LLL -h LDAP_IP -p 10389 > ldap.txt
  2. ldap.txt 파일에서 사용자의 이메일 주소를 찾습니다.
    dn: uid=29383a67-9279-4aa8-a75b-cfbf901578fc,ou=users,ou=global,dc=apigee,dc=com
    mail: foo@bar.com
    userPassword:: e1NTSEF9a01UUDdSd01BYXRuUURXdXN5OWNPRzBEWWlYZFBRTm14MHlNVWc9PQ==
    uid: 29383a67-9279-4aa8-a75b-cfbf901578fc
    형식으로 블록이 표시됩니다.
  3. ldappasswd를 사용하여 사용자의 uid에 따라 사용자의 비밀번호를 설정합니다.
    ldappasswd -h LDAP_IP -p 10389 -D "cn=manager,dc=apigee,dc=com" -W -s newPassWord \
      "uid=29383a67-9279-4aa8-a75b-cfbf901578fc,ou=users,ou=global,dc=apigee,dc=com"

    OpenLDAP 관리자 비밀번호를 입력하라는 메시지가 표시됩니다.

이제 사용자는 newPassWord를 사용하여 로그인할 수 있습니다.

OpenLDAP 시스템 비밀번호 수동 설정

Edge 비밀번호 재설정에서는 OpenLDAP 시스템 비밀번호를 변경하는 방법을 설명하지만 기존 비밀번호를 알고 있어야 합니다. 비밀번호를 분실한 경우 다음 절차에 따라 비밀번호를 재설정할 수 있습니다.

  1. slappasswd를 사용하여 새 비밀번호의 SSHA 암호화 비밀번호를 만듭니다.
    slappasswd -h {SSHA} -s newPassWord

    이 명령어는

    {SSHA}+DOup9d6l+czfWzkIvajwYPArjPurhS6
    형식의 문자열을 반환합니다.

  2. 편집기에서 /opt/apigee/data/apigee-openldap/slapd.d/cn=config/olcDatabase={2}bdb.ldif 파일을 엽니다.
    vi /opt/apigee/data/apigee-openldap/slapd.d/cn=config/olcDatabase={2}bdb.ldif
  3. olcRootPW:: OldPasswordString
    형식의 줄을 찾습니다.
  4. OldPasswordStringslappasswd에서 반환된 문자열로 바꿉니다. olcRootPw 뒤에 콜론이 2개 있으면 하나를 삭제하고 콜론 뒤에 공백이 있는지 확인합니다.
    olcRootPW: {SSHA}RGon+bLCe+Sk+HyHholFBj8ONQfabrhw
  5. OpenLDAP를 다시 시작합니다.
    /opt/apigee/apigee-service/bin/apigee-service apigee-openldap restart
  6. 새 비밀번호가 작동하는지 확인하려면 ldapsearch을(를) 사용하여 확인합니다.
    ldapsearch -W -D "cn=manager,dc=apigee,dc=com" -b "dc=apigee,dc=com" -LLL -h LDAP_IP -p 10389

    OpenLDAP 관리자 비밀번호를 입력하라는 메시지가 표시됩니다.

  7. 복제에 사용되는 다른 모든 OpenLDAP 서버에서 이 단계를 반복합니다.
  8. 새 비밀번호를 사용하도록 관리 서버를 업데이트합니다.
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server store_ldap_credentials -p newPassWord

Edge 관리자 비밀번호 수동 설정

Edge 비밀번호 재설정은 Edge 시스템 비밀번호를 변경하는 방법을 설명하지만 기존 비밀번호를 알고 있어야 합니다. Edge 시스템 비밀번호를 분실한 경우 다음 절차에 따라 비밀번호를 재설정할 수 있습니다.

  1. UI 노드에서 Edge UI를 중지합니다.
    /opt/apigee/apigee-service/bin/apigee-service edge-ui stop
  2. ldappasswd을 사용하여 Edge 시스템 관리자 비밀번호를 설정합니다.
    ldappasswd -h localhost -p 10389 -D "cn=manager,dc=apigee,dc=com" -W -s newPassWord \
      "uid=admin,ou=users,ou=global,dc=apigee,dc=com"

    OpenLDAP 관리자 비밀번호를 입력하라는 메시지가 표시됩니다.

  3. Edge UI를 설치하는 데 사용한 구성 파일을 새 Edge 시스템 비밀번호(
    APIGEE_ADMINPW=newPassWord
    )로 업데이트합니다.
  4. Edge UI를 구성하고 다시 시작합니다.
    /opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile
  5. (UI에 TLS가 사용 설정된 경우에만) 관리 UI의 TLS 구성에 설명된 대로 Edge UI에서 TLS를 다시 사용 설정합니다.

SLAPD 잠금 파일 삭제

OpenLDAP를 시작하려고 할 때 slapd.pid 잠금 파일이 있다는 오류가 발생하면 파일을 삭제할 수 있습니다.

파일은 /opt/apigee/apigee-openldap/var/run/slapd.pid에 있습니다. 파일을 삭제하고 OpenLDAP를 다시 시작합니다.

/opt/apigee/apigee-service/bin/apigee-service apigee-openldap restart

OpenLDAP가 시작되지 않으면 디버그 모드에서 시작하고 오류가 있는지 확인합니다.

slapd -h ldap://:10389/ -u apigee -d 255 -F /opt/apigee/data/apigee-openldap/slapd.d

오류는 리소스 문제, 메모리 또는 CPU 사용률 문제를 나타낼 수 있습니다.

OpenLDAP 복제 수정

이 섹션에서는 OpenLDAP 복제를 수정하는 방법을 설명합니다.

데이터를 다른 OpenLDAP 노드에 복제하는 OpenLDAP 복제기 노드에서 다음 절차를 수행합니다. 예를 들어 복제를 node1에서 node2로 설정하려면 node1에서 명령어를 실행합니다.

  1. 현재 상태를 확인합니다.
    ldapsearch -H ldap://{HOST}:{PORT} -LLL -x -b "cn=config" -D "cn=admin,cn=config" -w {PASSWORD} -o ldif-wrap=no 'olcSyncRepl' | grep olcSyncrepl

    출력은 다음과 유사해야 합니다.

    olcSyncrepl: {0}rid=001 provider=ldap://{HOST}:{PORT}/ binddn="cn=manager,dc=apigee,dc=com" bindmethod=simple credentials={PASSWORD} searchbase="dc=apigee,dc=com" attrs="*,+" type=refreshAndPersist retry="60 1 300 12 7200 +" timeout=1
  2. repl.lidf 파일을 만들고 다음 명령어를 파일에 붙여넣습니다.
    dn: olcDatabase={2}bdb,cn=config
    changetype: modify
    replace: olcSyncRepl
        olcSyncRepl: rid=001
        provider=ldap://{NEW_HOST}:{PORT}/
        binddn="cn=manager,dc=apigee,dc=com"
        bindmethod=simple
        credentials={PASSWORD}
        searchbase="dc=apigee,dc=com"
        attrs="*,+"
        type=refreshAndPersist
        retry="60 1 300 12 7200 +"
        timeout=1

    다음 자리표시자의 적절한 값을 바꿔야 합니다.

    • {NEW_HOST}: 복제하려는 새 OpenLDAP 호스트입니다.
    • {PORT}: OpenLDAP 포트입니다. 기본 포트는 10389입니다.
    • {PASSWORD}: OpenLDAP 비밀번호입니다.
  3. ldapmodify 명령어를 실행합니다.
    ldapmodify -x -w {PASSWORD} -D "cn=admin,cn=config" -H "ldap://{HOST}:{PORT}/" -f repl.ldif
        

    The output should be similar to the following:

    modifying entry "olcDatabase={2}bdb,cn=config"
  4. 복제를 확인합니다.
    ldapsearch -H ldap://{HOST}:{PORT} -LLL -x -b "cn=config" -D "cn=admin,cn=config" -w {PASSWORD} -o ldif-wrap=no 'olcSyncRepl' | grep olcSyncrepl

    출력은 다음과 유사해야 합니다.

    olcSyncrepl: {0}rid=001 provider=ldap://{NEW_HOST}:{PORT}/ binddn="cn=manager,dc=apigee,dc=com" bindmethod=simple credentials={PASSWORD} searchbase="dc=apigee,dc=com" attrs="*,+" type=refreshAndPersist retry="60 1 300 12 7200 +" timeout=1

    각 서버에서 contextCSN 값을 읽고 비교하여 복제가 올바르게 작동하는지 확인할 수 있습니다.

    ldapsearch -w {PASSWORD} -D "cn=manager,dc=apigee,dc=com" -b "dc=apigee,dc=com" -LLL -h localhost -p 10389 contextCSN | grep contextCSN

OpenLDAP 복제 문제 해결

설치 시 여러 OpenLDAP 서버가 사용되는 경우 복제 설정을 확인하여 서버가 제대로 작동하는지 확인할 수 있습니다.

  1. ldapsearch이 각 OpenLDAP 서버에서 데이터를 반환하는지 확인합니다.
    ldapsearch -W -D "cn=manager,dc=apigee,dc=com" -b "dc=apigee,dc=com" -LLL -h LDAP_IP -p 10389

    OpenLDAP 관리자 비밀번호를 입력하라는 메시지가 표시됩니다.

  2. /opt/apigee/conf/openldap/slapd.d/cn=config/olcDatabase={2}bdb.ldif 파일을 검사하여 복제 구성을 확인합니다.
  3. 시스템 비밀번호가 각 OpenLDAP 서버에서 동일한지 확인합니다.
  4. iptables 및 TCP 래퍼 설정을 확인합니다.