繁体   English   中英

使用ldap配置Rundeck进行AD身份验证

[英]Configuring rundeck with ldap for AD authentication

尝试在此处查看是否有人使用rundeck针对AD制定了LDAP身份验证。 我正在为rundesk使用JRE运行方法。 到目前为止,这是我所做的:

  • 我已经设置了jaas-ldap.conf,如Rundeck身份验证用户页面上所示
  • 我已请求管理员提供ssl证书。 要使用ldaps rundeck,需要ssl cert或将其写在其站点上。 获得证书后,他们提到以下两个步骤:

一旦获得证书。 有两个添加证书的选项。 第一个涉及为JRE更新信任库。 如果这是不可能的或不希望的,则可以使用包含适当证书的任何任意信任库将信任库设置为jvm使用。

这两个选项都需要导入证书。 下面的代码将名为AD.cert的证书导入到/ etc / rundeck / ssl / truststore中。

keytool-导入-alias CompanyAD-文件AD.cert -keystore / etc / rundeck / ssl / truststore -storepass adminadmin

要将证书添加到JRE,请找到文件$ JAVA_HOME / lib / security / cacerts并运行

keytool-导入-alias CompanyAD-文件AD.cert -keystore $ JAVA_HOME / lib / security / cacerts -storepass changeit

要验证是否已添加您的CA,请运行keytool list并在输出中查找CompanyAD。

keytool-列表-keystore $ JAVA_HOME / lib / security / cacerts -storepass changeit

这就是我遇到的问题。 我已将证书导入到$JAVA_HOME/lib/security/cacerts下的java truststore中。 ssl.properties文件还要求提供keystore, keystore.password, key.password参数。 现在,我应该创建一个新的密钥库还是忽略它们,而只使用truststore变量?

我还尝试创建一个新的密钥库(.jks),并将相同的ssl证书导入到其中,以设置密钥密码和存储密码。 这没有帮助。 我收到错误消息说java.io.IOException: Keystore was tampered with, or password was incorrect

我正在使用java -Dloginmodule.conf.name=jaas-ldap.conf -Dloginmodule.name=ldap -Drundeck.ssl.config=ssl.properties -jar rundeck-launcher-2.6.4.jar部署jar java -Dloginmodule.conf.name=jaas-ldap.conf -Dloginmodule.name=ldap -Drundeck.ssl.config=ssl.properties -jar rundeck-launcher-2.6.4.jar

我很乐意为您提供帮助。

无需向管理员询问ssl证书。 如果您的组织使用ldaps并且ldap服务器上安装的证书是密钥库中没有的自签名证书,那么您需要将该证书添加到JVM密钥库中。 现在,要获取该证书,请运行以下查询openssl s_client -connect <ldapserver>:636

这将通过-----BEGIN CERTIFICATE--------------END CERTIFICATE--------给出一些输出。 将这些字符串之间的文本复制到文件ldap.cert

keytool -import -alias CompanyAD -file ldap.cert -keystore $JAVA_HOME/lib/security/cacerts -storepass changeit 如果您的密钥库被篡改,则可能必须在系统中重新安装Java。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM