tomcat/nginx安装https证书过程

该操作手册生成的证书为免费证书,不能作为正式官网使用。操作步骤为:生成证书、配置nginx、测试证书。

一、生成自签名证书

1.使用jdk生成自签名的证书
找到java安装路径,在bin目录中找到keytool.exe文件。

在这里插入图片描述
2.在该目录打开命令窗口或使用cd/d 进入到该目录
在这里插入图片描述

3.生成证书
输入命令:

Keytool -genkey -v -alias tomcat  -keyalg RSA -keystore d:\local.keystore -validity 36500
Keytool -genkey -v -alias tomcat -keyalg RSA -keystore d:\local.keystore1 -dname "CN=zhou, OU=zhou, O=zhou, L=SH, ST=SH, C=CN" -keypass 123456 -storepass 123456 -validity 36500

参数说明:
-alias指定别名为casserver;
-keyalg指定RSA算法;
-keypass指定私钥密码;
-keystore指定密钥文件名称为local.keystore;
-validity指定有效期为365天。
密码根据自己需求填写

注意:
1、服务器上如果有多个JDK,请确认环境变量中的JDK路径为tomcat所使用的JDK;
2、如果不在环境变量中,也可切换到指定JDK的bin目录下执行命令;
3、提示的输入keystore密码应与-keypass必须与指定的相同,否则后面tomcat启动会报IO异常(Cannot recover key)。

二、配置tomcat自签名证书

1.生成服务端证书
根据local.keystore文件生成local.cer,执行命令:

keytool -export -alias tomcat -storepass 123456 -file d:\local.cer -keystore d:\local.keystore

参数说明:
-alias指定别名为tomcat ;(注:要和上面生成密钥文件(local.keystore) 一致)
-storepass指定私钥为123456;
-file指定导出证书的文件名为local.cer;
-keystore指定之前生成的密钥文件的文件名。
注意:-alias和-storepass必须为生成local.keystore密钥文件时所指定的别名和密码,否则证书导出失败
eg:

在这里插入图片描述

2.导入证书文件
生成的服务器的证书local.cer导入到cacerts密钥库文件中,执行命令

keytool -import -trustcacerts -alias tomcat -storepass 123456 -file d:\local.cer --keystore d:\local.keystore

3.服务端Tomcat配置
打开conf/server.xml

<Connector protocol="HTTP/1.1" SSLEnabled="true"
         maxThreads="150" scheme="https" secure="true"
         clientAuth="false"
         sslProtocol="TLS"
         keystoreFile="D:\server\tomcat-7.0.55\casserver.keystore"  
         keystorePass="123456"   
         port="443"   />

keystoreFile为tomcat目录下的密钥文件;
keystorePass为私钥密码
truststoreFile为生成的信任文件,如果此处不指定则默认为 JAVA_HOME/jre/lib/security/cacerts文件

三、配置nginx自签名证书

1.转换证书
tomcat使用JKS格式,nginx使用PEM格式。由于生成的证书是jks格式,nginx不能直接用,需要要转成PEM格式,这要用到jks2pfx工具进行转换
下载jks2pfx工具解压后,在解压目录打开cmd,然后输入:
JKS2PFX D:\local.keystore dfsw_123 dfsw exportfile D:
说明:
别名为tomcat、密码是123456的SSL证书导出,运行后将在jks2pfx的解压目录下产生3个文件 exportfile.key、exportfile.crt、exportfile.pfx。
查看PFX文件内容:
openssl pkcs12 -info -in exportfile.pfx
2.配置nginx
修改nginx.conf
server {
ssl on;
listen 443 ssl;
server_name localhost;
ssl_certificate /pro/nginx/cer/exportfile.crt;
ssl_certificate_key /pro/nginx/cer/exportfile.key;
}
server {
listen 80;
server_name localhost;
}
3.重启nginx生效
以上https安装配置完成

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Uniq_zhou

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值