Kir*_*ohn 7 ssl tomcat certificate-authority apache-2.2
我需要从我自己在 Apache/Tomcat 上运行的 Web 服务器中执行 Web 服务调用。在 Linux 上运行的 Apache/Tomcat 需要通过 HTTPS 调用运行 IIS 的 Microsoft 服务器,该服务器使用 SSL 的内部证书颁发机构 (CA)。
如何让 Apache/Tomcat 信任来自该 CA 的正确根证书?
另外,我如何测试这种信任是否有效?我假设来自托管 Apache/Tomcat 的服务器的浏览器请求是不够的。
uni*_*pse 12
我假设您已经将 CA 证书导出到一个文件中,例如“internal-ca.pem”。另外,我假设是 Tomcat 发起了到 IIS 服务器的 SSL 连接。
您可以必须使用Java keytool将证书导入到正在使用你的Tomcat引擎的Java密钥。CA 证书的密钥库是 $JAVA_HOME/jre/lib/security/cacerts。因此,要将新的 internal-ca.pem 证书导入此密钥库,您可以使用:
$JAVA_HOME/bin/keytool -importcert \
-keystore $JAVA_HOME/jre/lib/security/cacerts \
-file /path/to/internal-ca.pem \
-trustcacerts -alias internal-ca-1
Run Code Online (Sandbox Code Playgroud)
密钥库的默认密码是:changeit
验证您的证书是否在密钥库中:
$JAVA_HOME/bin/keytool -list \
-keystore $JAVA_HOME/jre/lib/security/cacerts -v | less
Run Code Online (Sandbox Code Playgroud)
测试与服务器的连接:
openssl s_client -CAfile /path/to/internal-ca.pem -connect server:port
Run Code Online (Sandbox Code Playgroud)
这应该给你,接近其输出的结尾:
Verify return code: 0 (ok)
Run Code Online (Sandbox Code Playgroud)
如果您想从 Tomcat 内部测试信任,则必须编写一些测试代码来执行此操作。对不起,我不会任何Java。:-)
归档时间: |
|
查看次数: |
29173 次 |
最近记录: |