服务器证书安装配置指南(Weblogic)
之前在网上找了好多资料,按照步奏执行,但是最后都不行,都缺了一点,最后终于整合起来了,从自己制作CA证书到weblogic配置和客户端IE设置,全部OK
一、环境准备
1. 安装JDK(可选)
Weblogic安装后自带JDK安装。如果您直接在服务器上生成证书请求,请进入Weblogic安装目录下JDK所在路径的bin目录,运行keytool命令。
如果您需要在其他环境下生成证书请求文件,则您可以选择安装JDK,并稍后上传生成的密钥库文件keystore.jks到服务器上进行配置。
Java SE Development Kit (JDK) 下载。下载地址:
http://www.oracle.com/technetwork/java/javase/downloads/index.html
2、准备openssl
先决条件:从openssl官网下载www.openssl.org
安装openssl[windows和linux安装不同]
如果没有配置环境变量,则需要进入openssl的bin目录下执行命令,如:C:/OpenSSL/bin,这个不对了,我下载的是最新的openssl-0.9.8zc,没有bin,目录,测试了下,可以在win7下直接用C:\openssl-0.9.8zc这个目录执行,
若只配置了环境变量,则在任意位置都可以执行
在执行命令前,新建两个目录ca和server,这个要注意哦,在openssl-0.9.8zc这个里面创建
一、 使用openssl制作CA证书和服务器证书
目前不使用第三方权威机构的CA来认证,因为需要收费,所以我们自己使用openssl来制作CA证书和服务器证书,自己充当CA的角色。
一:生成CA证书
1. 创建私钥 :
openssl genrsa -out ca/ca-key.pem 1024
2.创建证书请求 :
openssl req -new -out ca/ca-req.csr -key ca/ca-key.pem
这句执行出错啦,结果出现了这个错误:Unable to load config info from /usr/local/ssl/openssl.cnf
百度了一下,按照后面蓝色这一段执行就OK
原来是直接使用了别人生成好的密钥,可惜他是在Unix上用的,不适合Win32!没有办法,从新开始整openSSO,但是呢,在使用openSSO的时候,出现了 [Unable to load config info from /usr/local/ssl/openssl.cnf ] 异常.然原来这是Unix的默认设置,没有办法,只好建文件[c:/usr/local/ssl],从网上下载openssl.conf,然后改为openssl.cnf,置于c:/usr/local/ssl目录下,好了,终于搞定密钥了,Apache也可以启动了,庆祝一下。
访问https://localhost/login,是白屏,是没有启动Apache的SSL,在CMD下运行apache -D SSL,OK,一切都搞定了。
一些优化的方法,就是在ssl.conf文件中,注释掉<IfDefine SSL>,就可以直接启动SSL了。
在配置中,还有一些问题,比如,[ Invalid SSLMutex argument file:logs/dd (Valid SSLMutex mechanisms are: `none',
default' )],这是Apache的一个Bug,只能使用default或者none.
上面的参数都是随意写的,但是我的多了需要请求的密码,必须是4位,我设置为test
3.自签署证书 :
1>3650 是设置10年的证书有效期,基本够用了
openssl x509 -req -in ca/ca-req.csr -out ca/ca-cert.pem -signkey ca/ca-key.pem -days 3650
2>生成ca-cert.cer证书,用于客户端导入
openssl x509 -req -in ca/ca-req.csr -out ca/ca-cert.cer -signkey ca/ca-key.pem -days 3650
4.将证书导出成浏览器支持的.p12格式 : (不需要可以省略)
openssl pkcs12 -export -clcerts -in ca/ca-cert.pem -inkey ca/ca-key.pem -out ca/ca.p12
密码继续设置为test
制作服务器证书
通过keytool工具产生秘钥、及证书请求文件,然后使用openssl上一步产生的ca根证书对证书请求进行签证,
下面生成的文件都生成到C:\Users\xia\AppData\Local\VirtualStore\Program Files (x86)\Java\jdk1.6.0\bin目录下了
Unix下面生成的文件都生成到:/openssl-0.9.8zc/server/目录下边
下面这两步使用keytool工具
生成密钥对
keytool -genkey -alias example -validity 3650 -keyalg RSA -keysize 1024 -keypass 123456 -storepass 123456 -keystore example.jks
生成证书请求
keytool -certreq -alias example -sigalg MD5withRSA -file example.csr -keypass 123456 -keystore example.jks -storepass 123456
后面的命令使用openssl
根据证书请求,生成服务器证书
openssl x509 -req -in server/example.csr -out server/example.pem -CA ca/ca-cert.pem -CAkey ca/ca-key.pem -days 3650 -set_serial 1
向Keystore中导入证书
切换回keytool工具
导入CA证书
keytool -import -v -trustcacerts -keypass 123456 -storepass 123456 -alias root -file C:\openssl-0.9.8zc\ca\ca-cert.pem -keystore C:\openssl-0.9.8zc\example.jks
AIX中命令如下:
keytool -import -v -trustcacerts -keypass 123456 -storepass 123456 -alias root -file /home/eteller/openssl/openssl-0.9.8zc/ca/ca-cert.pem -keystore /home/eteller/openssl/openssl-0.9.8zc/server/example.jks
导入服务器证书
keytool -import -v -trustcacerts -storepass 123456 -alias example -file C:\openssl-0.9.8zc\example.pem -keystore C:\openssl-0.9.8zc\example.jks
AIX中命令如下:
keytool -import -v -trustcacerts -storepass 123456 -alias example -file /home/eteller/openssl/openssl-0.9.8zc/server/example.pem -keystore /home/eteller/openssl/openssl-0.9.8zc/server/example.jks
查看Keystore文件内容
keytool -list -keystore C:\openssl-0.9.8zc\example.jks -storepass 123456
AIX中命令如下:
keytool -list -keystore /home/eteller/openssl/openssl-0.9.8zc/server/example.jks -storepass 123456
看到有2个证书,一个是根证书,一个是服务器证书,其中根证书是公钥,服务器证书是私钥
秘钥库文件:example.jks在ssl的配置中使用到。先把这个文件复制到如下位置:
C:\bea\user_projects\domains\base_domain即域的根目录下。
AIX中命令如下:
cp example.jks /home/eteller/base_domain/
Weblogic 配置
打开ssl服务
设置keystore
密码4个都是 之前申请生成example.jks的123456
设置SSL
这里面Private Key Alias:是我们服务器的别名,也就是之前设置的example,密码还是123456
需要把这个服务器名验证设置为NONE
屏蔽http访问
设置完成之后,重启Weblogic,可以通过https://localhost:7002/ETellerbb/方式进行访问,但是原有http://localhost:7001/ETellerbb/还是可以访问,需要在web.xml下增加配置
<security-constraint>
<web-resource-collection >
<web-resource-name >SSL</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
这样访问http时会自动跳转到https
客户端操作
导入CA证书
1、打开Internet选项-》选择内容-》点击证书
2、打开受信任的根证书颁发机构-》点击“导入”按钮
浏览器去掉地址不匹配警告
全部修改完毕之后,重启浏览器
相关推荐
### WebLogic制作证书实现HTTPS详解 #### 一、概述 本文档主要介绍如何为WebLogic Server配置HTTPS证书,实现安全的HTTPS通信。本教程适用于WebLogic 10.3.6及以上版本,对于10.3.6以下的版本可能不适用。文中提到...
在IT行业中,安全通信是至关...在WebLogic中实现这一转变涉及到证书管理、监听器配置等多个环节。正确实施后,不仅可以保护用户数据,也有助于通过安全性评审。对于Java开发者和系统管理员来说,熟悉这一过程至关重要。
4. **服务器证书安装配置**:"服务器证书安装配置指南(Weblogic9) - VeriSign的日志 - 网易博客.mht"文件可能包含了关于使用VeriSign或其他证书颁发机构为WebLogic 9安装证书的步骤,虽然版本不同,但基本原理是...
2. **导入服务器证书**:需要将服务器的数字证书导入到WebLogic服务器的密钥库中,可以是自签名证书或由权威CA签发的证书。 3. **配置证书链**:如果证书由中间CA签发,需要导入中间CA证书,以完成证书链。 4. **...
本文详细介绍了 WebLogic 集群的安装步骤以及如何配置 Nginx 实现 HTTPS 反向代理及负载均衡功能。通过这种方式,不仅可以提高系统的可用性,还能有效地分散负载,提升响应速度和服务质量。在实际部署过程中,还需要...
7. 安装安全签章:文档中提到安装中文和英文签章,这可能是指在WebLogic的管理界面或生成的应用中嵌入数字签名的签章,以标识应用的来源和验证内容的完整性。 8. SSL证书的备份与恢复:在证书部署后,对证书进行...
根据提供的文档信息,本文将详细解释如何通过OpenSSL生成安全证书并在WebLogic环境中进行SSL配置与验证的过程。本文档分为几个部分:安装OpenSSL、创建证书、WebLogic环境的SSL配置,以及HTTPS验证。 ### 一、安装...
java实现自定义Weblogic监控java实现自定义Weblogic监控java实现自定义Weblogic监控
Apache 实现 WebLogic 集群配置是一种常见的负载均衡策略,它通过Apache HTTP服务器作为反向代理,将来自客户端的请求分发到多个WebLogic服务器实例上,从而提高应用程序的可用性和性能。以下是对该配置过程的详细...
绕过https认证工具类,通过该工具类,可以绕过htts需要认证的环节,针对weblogic服务器有好的效果,亲测有效,绕过https认证工具类,通过该工具类,可以绕过htts需要认证的环节,针对weblogic服务器有好的效果,亲测...
在“weblogic集群设置完整版”这个主题中,我们将深入探讨WebLogic集群的配置过程及其重要概念。 一、集群基础 WebLogic集群是由多个相互协作的WebLogic Server实例组成的集合,它们共享应用程序和服务,并且能够...
Weblogic应用使用PKI证书认证是一项重要的安全性配置,它确保了服务器与客户端之间的通信是安全可靠的。PKI(Public Key Infrastructure)是一种基于公钥加密技术的基础设施,它使用数字证书来验证网络实体的身份,...
### WebLogic 反序列化漏洞解决方案(Windows 版) #### 背景介绍 WebLogic 是一款广泛应用于企业级环境的应用服务器,它提供了强大的中间件功能和服务。然而,随着技术的发展,安全问题日益凸显,其中一种常见的...
WebLogic Server支持Java事务服务,允许管理和控制跨越多个操作的事务,保证数据的一致性和完整性。 【管理JDBC连接】 JDBC资源的管理包括数据源的配置、连接池设置和JDBC驱动管理,确保数据库连接的高效和可靠。 ...
weblogic客户端制作的JAR包,用于部署在Weblogic环境的项目
Weblogic 使用 YALE CAS 实现 SSO 单点登录的方法 一、Yale CAS 简介 Yale CAS 是耶鲁大学开发的一种开源的单点登录(SSO)解决方案,提供了一个通用的身份验证框架,允许用户使用单个身份验证来访问多个应用程序。...