keytool生成密钥与证书并在nginx配置https
Posted 张文琪2022
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了keytool生成密钥与证书并在nginx配置https相关的知识,希望对你有一定的参考价值。
前提
安装好JDK环境
生成密钥
keytool -genkey -alias uat -keypass password -keyalg RSA -keysize 1024 -validity 365 -keystore E:/keystore/uat.keystore -storepass password
E:/keystore/uat.keystore为生成文件的位置,密码为 password
导出证书
keytool -export -alias uat -keystore E:/keystore/uat.keystore -storepass password -rfc -file E:/keystore/uat.cer
E:/keystore/uat.cer 为生成文件的位置
解析出密钥
使用Java代码辅助
try
BASE64Encoder encoder = new BASE64Encoder();
//读取文件内容
FileInputStream is = new FileInputStream("E:/JXD/keystore/uat.keystore");
KeyStore ks = KeyStore.getInstance("JKS");
ks.load(is, "password".toCharArray());
PrivateKey key = (PrivateKey) ks.getKey("uat", "password".toCharArray());
String encoded = encoder.encode(key.getEncoded());
System.out.println(encoded);
is.close();
catch (Exception e)
将输出的内容保存到自己新建的key文件,可以新建一个文本文档然后改一下后缀
修改nginx配置
位置:nginx—conf—nginx.conf
listen 443;
server_name localhost;
ssl on; #开启SSL
ssl_certificate E:/keystore/uat.cer; #SSL证书
ssl_certificate_key E:/keystore/uat.key; #SSL密钥
以上是关于keytool生成密钥与证书并在nginx配置https的主要内容,如果未能解决你的问题,请参考以下文章