Tips:如果你是新配置的服务器则需走完整的配置流程;如果你之前使用过SSL服务,只是证书到期了,则只需更新服务器上的证书即可。
相关服务:新加坡服务器
一、生成 Keystore 和 CSR
a、输入下列命令生成Keystore文件
keytool -keysize 2048 -genkey -alias 你的别名 -keyalg RSA -keystore 你的证书名字.keystore
b、接下来输入密码,输入你公司的信息(在这一步的时候会有命令行提示,可以随便输入也可以输入真实的信息),密码不能太简单,并且记录好,在以后的很多步骤和你的项目中都会用到。
c、输入下列命令生成CSR文件
keytool -certreq -keyalg RSA -alias 你的别名 -file csr.csr -keystore 你的证书名字.keystore
d、输入你在b步骤设置的密码,后续多次会用到此密码,我们暂且称之为证书密码。
e、我们把c步骤生成的csr文件打开,拷贝文件里的全部内容,用于向证书提供商请求证书,我这里使用godaddy的SSL,在请求证书之前有购买,后续还有验证的步骤godaddy都提示的非常清晰,按照官方的步骤做就可以了。
二、生成证书
a、从Godaddy下载SSL证书 for Tomcat 格式的zip文件

1号文件的名字是随机生成的
b、将当时生成CSR的时候的私钥“你的证书名字.keystore” 和上述三个文件放到同一个目录中来;
c、将官方生成的证书导入到 “你的证书名字.keystore” 里面
keytool -import -alias root -keystore 你的证书名字.keystore -trustcacerts -file gd_bundle-g2-g1.crt
keytool -import -alias intermed -keystore 你的证书名字.keystore -trustcacerts -file gdig2.crt
keytool -import -alias tomcat -keystore 你的证书名字.keystore -trustcacerts -file 257dbd21f163ed3d.crt
三、将证书配置到Tomcat的server.xml文件里
<Connector port="8443" maxThreads="200" protocol="org.apache.coyote.http11.Http11NioProtocol"
scheme="https" secure="true" SSLEnabled="true"
keystoreFile="/usr/local/tomcat/你的证书名字.keystore" keystorePass="证书密码"
clientAuth="false" sslProtocol="TLS"/>
四、将keystore文件导出为Nginx所需要的文件.crt和.key
a、 将”.keystore”转为”.p12”(PKCS12格式的证书库)
keytool-importkeystore -srckeystore 你的证书名字.keystore -srcalias 你的别名 -destkeystore newkeystore.p12 -deststoretype PKCS12
查看新格式(pkcs12)证书库
keytool-deststoretype PKCS12 -keystore newkeystore.p12 -list
b、提取证书
openssl pkcs12 -in newkeystore.p12 -nokeys -clcerts -out ssl.crt
openssl pkcs12 -in newkeystore.p12 -nokeys -cacerts -out 中级证书.crt
ssl.crt,中级证书.crt,俩个合并到一起才是nginx服务器所需要的证书
合并证书:
cat ssl.crt 中级证书.crt > server-nginx.crt
此时server-nginx.crt 才是一个最终的证书
c、提取私钥
openssl pkcs12-nocerts -nodes -in newkeystore.p12 -out server.key
d、将server.key转化成没有密码的key文件
openssl rsa -in server.key -out server_unsecret.key





![[ 网络通信基础 ]——网络的传输介质(双绞线,光纤,标准,线序)](../download/20260617/2aed2e32838d4defaf3d0595004d364c.png)