【问题标题】:how to generate new SSL certificate in websphere application server liberty v. 8.5.5.0如何在 websphere application server liberty v. 8.5.5.0 中生成新的 SSL 证书
【发布时间】:2014-12-11 17:31:57
【问题描述】:

我只是在寻找一些信息。 我想启用 ssl 和 https 重定向(一些基本的安全性,以便我可以公开 appCenter 和应用程序进行测试):

Websphere application server liberty v. 8.5.5.0 
windows server 2008 R2
Java version 1.7.0_71 64bit

我做了什么: 安装了eclipse + mobilefirst studio 然后是 websphere application server liberty v. 8.5.5.0 然后是 MobileFirst 平台服务器

我阅读了指南here 和安全实用程序guide

这些指南非常有限,而且我对 WebSphere 还很陌生,我对如何删除现有证书并成功生成新的自签名证书有疑问

我只是想看一个更完整的例子,这里有一些相关的posts是指配置web.xml,但文档中没有。

谁能给我一个更完整的例子来说明如何设置启用 ssl 和 https 重定向? 我的最终目标是访问 appCenter 使用 ssl 和 https 重定向。

谢谢

【问题讨论】:

    标签: ssl https websphere websphere-liberty


    【解决方案1】:

    我将尝试分部分回答你的问题,因为它相当广泛。

    启用 SSL

    要在 Liberty 配置文件中启用 ssl,最简单的方法是在 Eclipse 中使用 WDT(WebSphere Developer Tools)。在Servers 视图中右键单击服务器并选择Utilities > Create SSL Certificate。它将:

    • 生成 Selfsign 证书 - 您可以自定义有效期和主题名称
    • 存储在${server.output.dir}/resources/security/key.jks
    • Console 视图中,它将输出您需要添加到server.xml 的代码:
    <featureManager>
       <feature>ssl-1.0</feature>
    </featureManager>
    <keyStore id="defaultKeyStore" password="{xor}encodedPassword=" />
    

    您可以从命令行从wlp\bin 调用securityUtility 命令执行相同操作:

    securityUtility createSSLCertificate --server=myserver --password=mypassword --validity=365
                                         --subject=CN=mycompany,O=myOrg,C=myCountry
    

    修改 server.xml 后,您的 Liberty 已在 9443 上启用 SSL:

    https://localhost:9443/

    自定义 SSL 证书

    不幸的是,Liberty 本身并没有太多的东西。所以这里是你的选择:

    • 如上使用securityUtility - 允许覆盖周期和SN
    • 使用JDK自带的keytool,可以进行更多的自定义(名称、密钥长度和算法),例如:
    C:\Java\jdk1.7.0_67\bin>keytool -genkeypair -alias myCert -keystore keystore.jks
    Enter keystore password:
    Re-enter new password:
    What is your first and last name?
      [Unknown]:  liberty
    What is the name of your organizational unit?
      [Unknown]:  test
    What is the name of your organization?
      [Unknown]:  gas
    What is the name of your City or Locality?
      [Unknown]:
    What is the name of your State or Province?
      [Unknown]:
    What is the two-letter country code for this unit?
      [Unknown]:
    Is CN=liberty, OU=test, O=gas, L=Unknown, ST=Unknown, C=Unknown correct?
      [no]:  yes
    
    Enter key password for <mykey>
            (RETURN if same as keystore password):
    Re-enter new password:
    
    • 第三方工具,例如,如果您有完整的 WAS,您可以使用 ikeyman 使用向导生成证书。

    无论您将使用什么方法来创建新的密钥库和自唱证书,请更新 server.xml 中的 keyStore 定义

    重定向到 SSL

    默认情况下,任何未配置的应用程序都可以通过 http 和 https 访问。
    如果您想强制应用程序使用 SSL,您需要为该应用程序创建/修改web.xml 文件。将以下内容添加到您的web.xml

    <security-constraint>
        <display-name>allApp</display-name>
        <web-resource-collection>
            <web-resource-name>allresources</web-resource-name>
            <url-pattern>/*</url-pattern>
        </web-resource-collection>
        <user-data-constraint>
            <transport-guarantee>CONFIDENTIAL</transport-guarantee>
        </user-data-constraint>
    </security-constraint>
    

    您必须启用应用程序安全性,将以下内容添加到server.xml

    <featureManager>
        <feature>appSecurity-2.0</feature>
    </featureManager>
    

    你已经完成了。您已为您的服务器启用 SSL 并为给定的应用程序启用重定向。

    【讨论】:

    • 非常感谢 Gas 这为我澄清了很多事情,我会试试这个,很抱歉这可能在文档中的某个地方但是 web.xml 文件在哪里而不是哪个?我将您的回复标记为答案,因为我希望它应该工作我做对了。再次感谢
    • @AnthonyK web.xml 是您的 Web 应用程序的部署描述符。如果你有你的应用程序为.war 文件,它会在WEB-INF 文件夹的war 中,你需要修改它。如果您的应用程序是.ear,那么您必须在其中查找.war。因此,您必须检查 Liberty 服务器中的 dropins 文件夹或应用程序。
    • 您好,所以设法让 appcenter 监听 9443,我可以登录,但是当我这样做时,我收到此错误,似乎证书已过期,但我只是使用安全实用程序创建了证书它是怎么来的已经过期了? com.ibm.ws.channel.ssl.internal.SSLHandshakeErrorTracker E CWWKO0801E: 无法初始化 SSL 连接。未经授权的访问被拒绝或安全设置已过期。异常是 javax.net.ssl.SSLException:收到致命警报:certificate_unknown
    • @AnthonyK 如果您可以通过 9443 访问,请在浏览器中检查证书。 SSLHandshakeErrorTracker 表明与其他服务器建立 SSL 连接存在问题。我不知道 MobileFirst 平台。如果您的 Liberty 服务器通过 SSL 连接到其他服务器,则它需要该服务器证书作为密钥库中的受信任证书。您需要提供有关您的设置的更多信息。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-19
    • 2017-07-31
    • 1970-01-01
    • 2013-07-01
    • 2021-02-23
    • 2020-01-26
    相关资源
    最近更新 更多