`
shuai1234
  • 浏览: 972299 次
  • 性别: Icon_minigender_1
  • 来自: 山西
社区版块
存档分类
最新评论

windows下weblogic单双向ssl设置

    博客分类:
  • java
 
阅读更多

1. ssl原理个人理解

网上关于ssl原理讲的很详细,由于我仅仅需要配置weblogic的ssl,所以对ssl没有做深入的理解,以下仅是我个人对ssl的一些理解,不保证正确性。 
ssl协议是保证客户端和服务器能够实现安全传输的一个协议,客户端向服务器发送请求后服务器会返回一个证书,里面包含必要信息密钥来验证身份,证明你的确是老大,而验证身份就需要有一个公证员,那么CA机构就是这个公证员。因此,必须要有的东西是CA的证书和服务器的证书。有的情况下,服务器也需要验证访问它的客户端的身份和信息,正如有的老大要确认你就是我的小弟,这时就需要客户端证书了。 
总之,如果仅需要CA证书和服务器证书,那就是单向ssl。如果还需要客户端证书,那就是双向ssl

2. 必备软件

openssl工具用来制作密钥、CA根证书。网上直接搜索openssl下载即可。

3. 单向ssl配置

安装openssl,然后cmd进入安装目录的bin目录下面。新建文件夹ca。

建立CA证书

1.创建私钥

D:\OpenSSL\bin>openssl genrsa -out ca/ca-key.pem 1024
Loading 'screen' into random state - done
Generating RSA private key, 1024 bit long modulus
.....++++++
........................................++++++
e is 65537 (0x10001)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

2.创建证书请求

D:\OpenSSL\bin>openssl req -new -out ca/ca-req.csr -key ca/ca-key.pem -config openssl.cnf
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:CN
State or Province Name (full name) [Some-State]:BJ
Locality Name (eg, city) []:HD
Organization Name (eg, company) [Internet Widgits Pty Ltd]:CAROOT
Organizational Unit Name (eg, section) []:CA
Common Name (eg, YOUR name) []:Trigl
Email Address []://直接回车,不配置

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []://直接回车,不配置
An optional company name []://直接回车,不配置
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

3.生成CA自签名证书

D:\OpenSSL\bin>openssl x509 -req -in ca/ca-req.csr -out ca/ca-cert.pem -signkey
ca/ca-key.pem -days 3650
Loading 'screen' into random state - done
Signature ok
subject=/C=CN/ST=BJ/L=HD/O=CAROOT/OU=CA/CN=Trigl
Getting Private key
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

制作服务器证书

4.用keytool工具生成密钥

D:\OpenSSL\bin>keytool -genkey -alias sso -validity 365 -keyalg RSA -keysize 1024 -keypass 123456 -storepass 123456 -keystore sso.jks
您的名字与姓氏是什么?
  [Unknown]:  Trigl
您的组织单位名称是什么?
  [Unknown]:  CAROOT
您的组织名称是什么?
  [Unknown]:  CA
您所在的城市或区域名称是什么?
  [Unknown]:  HD
您所在的州或省份名称是什么?
  [Unknown]:  BJ
该单位的两字母国家代码是什么
  [Unknown]:  CN
CN=Trigl, OU=CAROOT, O=CA, L=HD, ST=BJ, C=CN 正确吗?
  []:  y
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

5.用keytool工具生成证书请求

D:\OpenSSL\bin>keytool -certreq -alias sso -sigalg MD5withRSA -file sso.csr -keypass 123456 -keystore sso.jks -storepass 123456 
  • 1

6.根据证书请求,生成服务器证书

D:\OpenSSL\bin>openssl x509 -req -in sso.csr -out sso.pem -CA ca/ca-cert.pem -CAkey ca/ca-key.pem -days 3650 -set_serial 1 
Loading 'screen' into random state - done
Signature ok
subject=/C=CN/ST=BJ/L=HD/O=CA/OU=CAROOT/CN=Trigl
Getting CA Private Key
  • 1
  • 2
  • 3
  • 4
  • 5

向keystore密钥库中导入证书

7.导入CA证书

D:\OpenSSL\bin>keytool -import -v -trustcacerts -keypass 123456 -storepass 123456 -alias root -file ca/ca-cert.pem -keystore sso.jks
所有者:CN=Trigl, OU=CA, O=CAROOT, L=HD, ST=BJ, C=CN
签发人:CN=Trigl, OU=CA, O=CAROOT, L=HD, ST=BJ, C=CN
序列号:9b6ef80677f56488
有效期: Tue Nov 03 16:27:12 CST 2015 至Fri Oct 31 16:27:12 CST 2025
证书指纹:
         MD5:33:83:B9:67:2C:B9:C7:5A:1A:0B:2D:CB:87:03:06:0B
         SHA1:3C:47:DE:9F:5A:A3:93:93:AD:7A:F0:93:99:25:B0:5F:D2:EC:3A:A9
         签名算法名称:MD5withRSA
         版本: 1
信任这个认证? []:  y
认证已添加至keystore中
[正在存储 sso.jks]
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

8.导入服务器证书

D:\OpenSSL\bin>keytool -import -v -trustcacerts -storepass 123456 -alias sso -file sso.pem -keystore sso.jks
认证已添加至keystore中
[正在存储 sso.jks]
  • 1
  • 2
  • 3

9.导入CA验签信息

D:\OpenSSL\bin>keytool -import -alias sso-ca -trustcacerts -file ca/ca-cert.pem -keystore ssotrust.jks
输入keystore密码:
再次输入新密码:
所有者:CN=Trigl, OU=CA, O=CAROOT, L=HD, ST=BJ, C=CN
签发人:CN=Trigl, OU=CA, O=CAROOT, L=HD, ST=BJ, C=CN
序列号:9b6ef80677f56488
有效期: Tue Nov 03 16:27:12 CST 2015Fri Oct 31 16:27:12 CST 2025
证书指纹:
         MD5:33:83:B9:67:2C:B9:C7:5A:1A:0B:2D:CB:87:03:06:0B
         SHA1:3C:47:DE:9F:5A:A3:93:93:AD:7A:F0:93:99:25:B0:5F:D2:EC:3A:A9
         签名算法名称:MD5withRSA
         版本: 1
信任这个认证? [否]:  y
认证已添加至keystore中
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

10.以上步骤会产生两个密钥库文件:sso.jks和ssotrust.jks,在weblogic中ssl的配置中用到。首先将这两个文件复制到weblogci域的根目录下面,即: 
D:\Weblogic\Middleware\user_projects\domains\base_domain下面

启动weblogic的ssl监听端口

11.登陆weblogic页面,首先进入如下页面启动ssl监听端口 
ssl配置

配置weblogi的密钥库

12.启动weblogic并登录控制台,进入如下页面 
密钥库配置

点击更改,选择定制标识和定制信任 
密钥库配置

然后填写相应的标识密钥库和信任密钥库,这里填入的密钥库文件就是前面产生的sso.jks和ssotrust.jks两个文件,密码是之前设置的123456,填写完成后记得保存 
密钥库配置

配置weblogic的ssl

13.进入ssl配置页面,如下图所示,密钥别名就是前面定义好的名字,这里是sso,密码还是123456 
ssl配置

浏览器验证

14.到这里,单向 ssl配置就完成了,在浏览器中输入https://localhost:7002/console访问控制台进行测试,但是一般浏览器默认的安全等级是比较高的,所有可能无法访问,我们需要手动降低浏览器安全等级,以ie为例: 
选择Internet选项 
浏览器配置

选择安全,将安全等级设置为最低 
安全性

选择隐私,同样设置为最低 
隐私

这时候就可以输入https://localhost:7002/console进行验证了,如下图: 
验证

继续浏览此网站,验证成功 
验证

4. 双向ssl配置

制作客户端证书

1.产生客户端对应的私钥

D:\OpenSSL\bin>openssl genrsa -out user-key.pem 1024
Loading 'screen' into random state - done
Generating RSA private key, 1024 bit long modulus
...............++++++
........................................++++++
e is 65537 (0x10001)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

2.根据私钥产生证书请求csr文件

D:\OpenSSL\bin>openssl req -new -out user-req.csr -key user-key.pem
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:CN
State or Province Name (full name) [Some-State]:BJ
Locality Name (eg, city) []:HD
Organization Name (eg, company) [Internet Widgits Pty Ltd]:CAROOT
Organizational Unit Name (eg, section) []:CA
Common Name (eg, YOUR name) []:admin//登陆帐户名
Email Address []:

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

3.使用openssl之前制作的ca根证书对证书请求文件进行签证

D:\OpenSSL\bin>openssl x509 -req -in user-req.csr -out user-cert.pem -signkey us
er-key.pem -CA ca/ca-cert.pem -CAkey ca/ca-key.pem -CAcreateserial -days 3650
Loading 'screen' into random state - done
Signature ok
subject=/C=CN/ST=BJ/L=HD/O=CAROOT/OU=CA/CN=admin
Getting Private key
Getting CA Private Key
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

4.将签证之后的证书文件user-cert.pem导出为p12格式文件(p12格式可以被浏览器识别并安装到证书库中)

D:\OpenSSL\bin>openssl pkcs12 -export -clcerts -in user-cert.pem -inkey user-key
.pem -out user.p12
Loading 'screen' into random state - done
Enter Export Password://不输入
Verifying - Enter Export Password://不输入
  • 1
  • 2
  • 3
  • 4
  • 5

5.将签证之后的证书文件user-cert.pem导入至信任秘钥库中(这里由于没有去ca认证中心购买个人证书,所以只有导入信任库才可进行双向ssl交互)

D:\OpenSSL\bin>keytool -import -alias user -trustcacerts -file user-cert.pem -ke
ystore ssotrust.jks
输入keystore密码:
认证已添加至keystore中
  • 1
  • 2
  • 3
  • 4

6.需要把最后增加证书的信任秘钥库exampletrust.jks重新复制到domain目录下。

weblogic控制台双向ssl配置

7.进入weblogic控制台如下页面,进入ssl配置页面,点击高级 
双向ssl

选择双向客户机证书行为中的请求客户机证书并强制使用,这样就强制客户端浏览器提供证书,修改完成记得保存 
双向ssl

8.接下来,双击刚才生成的p12文件,即在目录D:\OpenSSL\bin里面的user.p12,将用户证书安装到浏览器的证书库中,一直点击下一步即可 
这里写图片描述

9.以上就完成了双向ssl的相关配置,可以在具体java代码中调用相关文件

分享到:
评论

相关推荐

    Weblogic服务器双向ssl配置

    WebLogic服务器双向SSL配置是指在Web应用程序中设置安全通信的过程,这种配置要求服务器和客户端之间进行身份验证,确保数据传输的机密性和完整性。以下是详细步骤: 1. **创建密钥对**:首先,使用Java自带的`...

    Weblogic配置SSL双向认证

    Weblogic 配置 SSL 双向认证 Weblogic 配置 SSL 双向认证是为了确保 Web 应用程序的安全性和加密性。SSL(Secure Sockets Layer)是用于加密 Internet 通信的安全协议。双向认证是指客户端和服务端都需要验证对方的...

    WebLogic 集群中SSL 配置说明

    - 对于Windows环境下的`startWebLogic.cmd`或Linux环境下的`startWebLogic.sh`,在`JAVA_OPTIONS`变量后添加`-Dweblogic.security.SSL.enforceConstraints=off`。 - 对于管理服务器的启动脚本`startManagedWebLogic....

    WebLogic SSL 安全服务器设置

    以下是关于WebLogic SSL安全服务器设置的详细说明。 ### 1. 预备知识 #### 1.1 SSL简介 SSL(Server Socket Layer)是网络安全协议,最初由Netscape公司开发,用于在互联网上提供安全的通信环境。SSL后来演变为TLS...

    WebLogic11g-单双向SSL配置(以Springside3为例)

    本教程将详细讲解如何在WebLogic 11g中配置单向和双向SSL,以SpringSide 3项目为例。 一、SSL基础 SSL是一种网络安全协议,用于在互联网上提供保密通信。它通过加密传输数据,防止中间人攻击和数据篡改。SSL主要...

    Weblogic server10 SSL配置文档(详细解说)

    Weblogic 服务器 10 SSL 配置文档详解 本文档旨在详细介绍 Weblogic 服务器 10 的 SSL 配置过程,包括生成证书请求、生成 keystore 文件、生成证书签发请求文件、配置 Weblogic 服务器 SSL 信息等步骤。 生成证书...

    WebLogic 配置SSL详解

    WebLogic 配置 SSL 详解 WebLogic 配置 SSL 是指在 WebLogic Server 中配置 SSL(Server Socket Layer)协议,以确保在开放网络(Internet)上安全地传输信息。SSL 协议使用不对称加密技术实现会话双方之间信息的...

    windows下weblogic配置

    Windows 下 WebLogic 配置详解 在 Windows 平台下配置 WebLogic 服务器,以便实现对 Microsoft SQL Server 2000 的连接和数据源配置。本文将详细介绍配置过程,包括安装 SQL Server 2000,配置 WebLogic 服务器,...

    WebLogic SSL 配置手册

    本手册将指导用户如何在 Windows 和 Unix/Linux 平台上安装和配置 WebLogic 服务器,并且介绍了如何使用 SSL 配置 WebLogic 服务器。下面是相关的知识点: 安装 WebLogic 服务器 在 Windows 平台上安装 WebLogic ...

    weblogic_tls及ssl类漏洞修复方案

    配置文件通常位于WebLogic安装目录下,例如config.xml,它定义了服务器的安全设置,包括SSL连接使用的加密套件。 #### 4. 安全加密套件配置 在config.xml中加入安全加密套件的名称,限定了WebLogic服务器在TLS握手...

    weblogic配置ssl[参照].pdf

    WebLogic Server 是一款由甲骨文公司提供的企业级Java应用服务器,它支持多种服务和功能,包括SSL(Secure Sockets Layer)配置,用于提供安全的网络通信。SSL是一种网络安全协议,用于加密网络上的数据传输,确保...

    WebLogic Server实现双向SSL.doc

    学习weblogic配置ssl的好东西,希望对您有所帮助。

    windows下weblogic 9.2 安装部署 配置域 发布工程 详细图解文档

    总的来说,Windows下的WebLogic 9.2安装部署、配置域和发布工程是一个涉及多方面知识的过程,需要对Java EE、WebLogic Server的架构以及相关的管理工具有深入理解。通过本文的介绍,希望能为你提供一个清晰的实践...

    在weblogic下的SSL配置

    本教程将详细介绍如何在WebLogic Server环境下进行SSL配置。 一、理解SSL SSL是一种网络安全协议,其主要功能是为网络通信提供加密处理,确保数据传输的安全性。SSL通过在客户端和服务器之间建立一个安全的通道,...

    Weblogic_8.1_SSL_配置详细图解.rar

    WebLogic Server 8.1 是一款由甲骨文公司(Oracle)提供的企业级Java应用服务器,它支持多种功能,包括安全套接层(SSL)来确保网络通信的安全性。SSL配置是WebLogic Server中至关重要的一步,特别是在处理敏感数据...

    WebLogic配置SSL.doc

    总结,WebLogic Server的SSL配置是一项重要的安全设置,它确保了通过WebLogic Server传输的敏感信息得到保护。无论是使用默认的Demo证书还是自定义证书,都需要按照正确的步骤进行配置,以确保服务器与客户端之间的...

    SSL在weblogic下配置安装

    web端网页加密技术,本文档是项目开发中用到。很方便

Global site tag (gtag.js) - Google Analytics