SymasLDAP 维护任务

日志文件位置

SymasLDAP 日志文件包含在 /opt/apigee/var/log 目录中。可以定期归档和移除这些文件,以确保它们不会占用过多的磁盘空间。如需了解如何维护、归档和移除 SymasLDAP 日志,请参阅 SymasLDAP 手册中的第 19.2 节,网址为 https://kb.symas.com/configuration/logging-configuration

手动设置用户密码

用户可以在 Edge 界面中申请新的 Edge 密码。然后,用户会收到一封电子邮件,其中包含有关设置密码的信息。不过,如果您的 SMTP 服务器出现故障,或者用户因任何原因无法接收电子邮件,您可以使用 SymasLDAP 命令手动设置用户的密码。

如需设置用户密码,请执行以下操作:

  1. 使用 ldapsearch 下载用户信息:
    /opt/symas/bin/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 设置用户密码:
    /opt/symas/bin/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"

    系统会提示您输入 SymasLDAP 管理员密码。

用户现在可以使用 newPassWord 登录。

手动设置 SymasLDAP 系统密码

重置 Edge 密码介绍了如何更改 SymasLDAP 系统密码,但要求您知道现有密码。如果您忘记了该密码,可以按照以下步骤重置密码。

  1. 使用 slappasswd 为新密码创建 SSHA 加密密码:
    /opt/symas/sbin/slappasswd -h {SSHA} -s newPassWord

    此命令会返回一个字符串,格式如下:

    {SSHA}+DOup9d6l+czfWzkIvajwYPArjPurhS6
  2. 在编辑器中打开 /opt/apigee/data/apigee-symasldap/slapd.d/cn=config/olcDatabase={2}mdb.ldif 文件:
    vi /opt/apigee/data/apigee-symasldap/slapd.d/cn=config/olcDatabase={2}mdb.ldif
  3. 找到以下格式的行:
    olcRootPW:: OldPasswordString
  4. OldPasswordString 替换为从 slappasswd 返回的字符串。 如果 olcRootPw 后面有 2 个英文冒号,请移除一个,并确保英文冒号后面有一个空格:
    olcRootPW: {SSHA}RGon+bLCe+Sk+HyHholFBj8ONQfabrhw
  5. 重启 SymasLDAP:
    /opt/apigee/apigee-service/bin/apigee-service apigee-symasldap restart
  6. 使用 ldapsearch 检查新密码是否有效:
    /opt/symas/bin/ldapsearch -W -D "cn=manager,dc=apigee,dc=com" -b "dc=apigee,dc=com" -LLL -h LDAP_IP -p 10389

    系统会提示您输入 SymasLDAP 管理员密码。

  7. 在用于复制的任何其他 SymasLDAP 服务器上重复上述步骤。
  8. 更新管理服务器以使用新密码:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server store_ldap_credentials -p newPassWord

手动设置 Edge 管理员密码

重置 Edge 密码介绍了如何更改 Edge 系统密码,但要求您知道现有密码。如果您丢失了 Edge 系统密码,可以使用以下流程重置密码。

  1. 在界面节点上,停止 Edge 界面:
    /opt/apigee/apigee-service/bin/apigee-service edge-ui stop
  2. 使用 ldappasswd 设置 Edge 系统管理员密码:
    /opt/symas/bin/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"

    系统会提示您输入 SymasLDAP 管理员密码。

  3. 使用新的 Edge 系统密码更新用于安装 Edge 界面的配置文件:
    APIGEE_ADMINPW=newPassWord
  4. 配置并重启 Edge 界面:
    /opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile
  5. (仅当 TLS 在界面上处于启用状态时)按照为管理界面配置 TLS 中的说明,在 Edge 界面上重新启用 TLS。

删除 SLAPD 锁定文件

如果您在尝试启动 SymasLDAP 时收到错误消息,指出 slapd.pid 锁定文件存在,则可以删除该文件。

该文件位于 /opt/apigee/apigee-symasldap/var/run/slapd.pid 中。删除该文件,然后尝试重启 SymasLDAP:

/opt/apigee/apigee-service/bin/apigee-service apigee-symasldap restart

如果 SymasLDAP 未启动,请尝试在调试模式下启动它并检查是否存在错误:

/opt/symas/lib/slapd -h ldap://:10389/ -u apigee -d 255 -F /opt/apigee/data/apigee-symasldap/slapd.d

错误可能指向资源问题、内存或 CPU 利用率问题。

修改 SymasLDAP 复制

本部分介绍如何修改 SymasLDAP 复制。

在 SymasLDAP 复制器节点上执行以下过程中的步骤,该节点将其数据复制到另一个 SymasLDAP 节点。例如,如果您要设置从 node1 到 node2 的复制,请在 node1 上运行命令。

  1. 检查当前状态:
          /opt/symas/bin/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}mdb,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}:您计划复制到的新 SymasLDAP 主机。
    • {PORT}:SymasLDAP 端口。默认端口为 10389
    • {PASSWORD}:SymasLDAP 密码。
  3. 运行 ldapmodify 命令:
          /opt/symas/bin/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}mdb,cn=config"
  4. 验证复制:
          /opt/symas/bin/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 值,确保它们一致,从而验证复制是否正常运行。

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

排查 SymasLDAP 复制问题

如果您的安装使用多个 SymasLDAP 服务器,您可以检查复制设置,以确保这些服务器正常运行。

  1. 确保 ldapsearch 从每个 SymasLDAP 服务器返回数据:
    /opt/symas/bin/ldapsearch -W -D "cn=manager,dc=apigee,dc=com" -b "dc=apigee,dc=com" -LLL -h LDAP_IP -p 10389

    系统会提示您输入 SymasLDAP 管理员密码。

  2. 通过检查 /opt/apigee/conf/symasldap/slapd.d/cn=config/olcDatabase={2}mdb.ldif 文件来检查复制配置。
  3. 确保每个 OpenLDAP 服务器上的系统密码相同。
  4. 检查 iptables 和 tcp wrapper 设置。