• 如何在您的 Weblogic 应用程序上配置 HTTPS SSL?


    WebLogic上使用您的应用程序之前,我始终建议在托管您的应用程序的Weblogic服务器上激活 SSL 。

    使用HTTPS 协议访问您的应用程序将确保您的用户数据不被拦截

    为此,您应该首先获得一个有效的证书:

    • 如果您在公司配置Weblogic,则应在内部要求获取有效证书。
    • 如果您负责获取有效证书,我始终建议您从let's encrypt 组织获取一份。它是免费的,并且受到最重要的组织的信任。(Facebook、谷歌、思科、Github 等)
    • 如果您只想测试配置,您可以按照下面 (1) 中的说明生成自签名证书。

    1) (可选——不要用于生产)使用 java keytool 生成您的自签名证书

    注意:使用自签名证书仅用于测试目的。使用时,浏览器会强烈警告用户您的证书不受信任。

    先决条件:在您的计算机上安装了 Java

    • 导航到java 安装的 bin 文件夹(通常是 C:\Program File(x86)\Java\jreXXXX\bin)
    • 在此文件夹中打开命令提示符(将文件资源管理器顶部的路径替换为“cmd”并按 Enter)
    • 运行以下命令以生成您的身份存储、自签名证书和信任存储
    # Open a command terminal in the bin folded of your java installation (e.g: C:\Program File(x86)\Java\jreXXXX\bin)
    # In the commands below :
    # - selfsigned is the name of the certificate
    # - storPass is the password of the keystore and truststore
    # - keyPass is the password of the certificate
    # You can change those values for yours
    #Generate the keystore.jks
    keytool -genkeypair -alias selfsigned -keyalg RSA -keysize 2048 -validity 365 -keypass keyPass -storepass storPass -keystore keystore.jks
    #Enter your informations when prompt
    #Be aware those information will be visible in your browser
    #Export the selfsigned.cer from the keystore.jks
    keytool -exportcert -alias selfsigned -file root.cer -keystore keystore.jks -storepass storPass
    #Generate the truststore.jks
    keytool -importcert -alias selfsigned -file root.cer -keystore truststore.jks -storepass storPass
    #The jks files are available in the folder

    2) 使用 FTP/SSH 将证书添加到域服务器

    #Connect to the Weblogic Host through FTP and upload your keystore.jks and truststore.jks to your user home
    #Connect to the Weblogic Host through SSH with your user
    #Copy the trustStore and keyStore to a tmp folder available from your {YourWeblogicUser}
    [{YourSSHUser}@{YourWeblogicHost} ~]$ cp truststore.jks /tmp/
    [{YourSSHUser}@{YourWeblogicHost} ~]$ cp keystore.jks /tmp/
    #Sudo to {YourWeblogicUser}
    [{YourSSHUser}@{YourWeblogicHost} ~]$ sudo su - {YourWeblogicUser}
    #Copy files to {YourWeblogicDomainPath}/{YourWeblogicDomainName}/certificates
    [{YourWeblogicUser}@{YourWeblogicHost} ~]$ mkdir {YourWeblogicDomainPath}/{YourWeblogicDomainName}/certificates
    [{YourWeblogicUser}@{YourWeblogicHost} ~]$ cp /tmp/truststore.jks {YourWeblogicDomainPath}/{YourWeblogicDomainName}/certificates
    [{YourWeblogicUser}@{YourWeblogicHost} ~]$ cp /tmp/keystore.jks {YourWeblogicDomainPath}/{YourWeblogicDomainName}/certificates

    3)在Weblogic中配置SSL

    注意:在选择 SSL 端口之前,请确保它没有在其他地方使用

    • 以管理员角色连接Weblogic控制台(http://{YourHostName}:{YourAdminPort}/console)
    • 在左上角,进入锁定和编辑模式
    • 环境 > 服务器 > {TheServerHostingTheAppNeedingSSL} > 常规
      • 启用 SSL 侦听端口:  
      • SSL 监听端口:{YourAvailableSslPort 通常为 7002}
    • 环境 > 服务器 > {TheServerHostingTheAppNeedingSSL} > 密钥库
      • 密钥库:更改:自定义身份和自定义信任
      • 自定义身份密钥库:{YourWeblogicDomainPath}/{YourWeblogicDomainName}/certificates/keystore.jks
      • 自定义身份密钥库类型:JKS
      • 自定义身份密钥库密码:{YourKeystorePassword in this example (1) example 'storPass'}
      • 确认自定义身份密钥库密码:{YourKeystorePassword in this example (1) example 'storPass'}
      • 自定义信任密钥库:{YourWeblogicDomainPath}/{YourWeblogicDomainName}/certificates/truststore.jks
      • 自定义信任密钥库类型:JKS
      • 自定义信任密钥库密码:{YourKeystorePassword in this example (1) example 'storPass'}
      • 确认自定义信任密钥库密码:{YourKeystorePassword in this example (1) example 'storPass'}
    • 环境 > 服务器 > {TheServerHostingTheAppNeedingSSL} > SSL
      • 私钥别名:{YourCertificateName in this example 'selfsigned'}
      • 私钥密码:{YourCertificatePassword in this example 'keyPass'}
      • 确认私钥密码:{YourCertificatePassword in this example 'keyPass'}
      • 高级 > 主机名验证:
      • 高级 > 使用 JSSE SSL:
    • 在左上角,激活更改
    • 重启 Weblogic

    就是这样,您可以连接到 SSL 中的托管应用程序 (https://{YourHostName}:{YourSSLPort}/{YourAppName})

    注意:如果您遇到错误BEA-090716: Alert: Failed to retrieve identity key/certificate from keystore ksFile under alias alias on serverName确保 {YourCertificatePassword in this example 'keyPass'} 和 {YourKeystorePassword in this example (1)示例 'storPass'} 不同

  • 相关阅读:
    网络安全(黑客技术)——如何高效自学
    Js逆向教程-10常见代码混淆
    常见的js手写题【总结】
    【ManageEngine】如何利用好OpManager的报表功能
    使用 OpenTelemetry 构建 .NET 应用可观测性(2):OpenTelemetry 项目简介
    如何优雅编写测试用例
    Unity中Shader立方体纹理Cubemap
    操作系统课设
    Lambda表达式,Stream流
    ubuntu18.04 编译edk2项目下的intel架构bios
  • 原文地址:https://blog.csdn.net/allway2/article/details/126067904