Tomcat配置SSL,使用openssl制作证书

制作证书以及Tomcat配置

  1. 搭建openssl环境,下载openssl并设置环境变量方便命令行的使用;

  2. 修改openssl配置文件,设置dir目录,如设置dir=/home/usr/openssl_ca,然后根据配置文件分别建立子目录:certs、crl、newcerts、private分别用来存放签发的证书、吊销的证书、证书申请、私钥;

cd /home/usr/openssl_ca
mkdir certs
mkdir crl
mkdir newcerts
mkdir private

3. 根据配置文件,需要建立索引文件、序列号文件、随机数文件:

cd /home/usr/openssl_ca
echo 0 > index.txt
echo 01 > serial
openssl rand -out private/.rand 1000

4. 构建根证书密钥

openssl genrsa -des3 -out private/ca.key.pem 2048

   密码是:123456

5. 构建根证书申请

openssl req -new -key private/ca.key.pem -out newcerts/ca.csr -subj "/C=CN/ST=GD/L=SZ/O=oseye/OU=oseye/CN=127.0.0.1"    ##这里的ip可以换成域名,或者自己的ip

6. 签发根证书

openssl x509 -req -days 100000 -sha1 -signkey private/ca.key.pem -in newcerts/ca.csr -out certs/ca.cer

7. 构建服务器密钥

openssl genrsa -des3 -out private/mobile.key.pem 2048

 密码是:123456

8.构建服务器证书申请

openssl req -new -key private/mobile.key.pem -out newcerts/mobile.csr -subj "/C=CN/ST=GD/L=SZ/O=oseye/OU=oseye15b/CN=127.0.0.1"  ## 这里的ip和上面的配置一样

9. 签发服务器证书

openssl x509 -req -days 100000 -sha1 -CA certs/ca.cer -CAkey private/ca.key.pem -CAserial ca.srl -CAcreateserial -in newcerts/mobile.csr -out certs/mobile.cer

此处为了安全可言采用sha512来签名,更多签名算法参见这里。

openssl x509 -req -days 100000 -sha512 -CA certs/ca.cer -CAkey private/ca.key.pem -CAserial ca.srl -CAcreateserial -in newcerts/mobile.csr -out certs/mobile.cer

10. 转换成java可用的格式

openssl pkcs12 -export -clcerts -inkey private/mobile.key.pem -in certs/mobile.cer -out certs/mobile.p12

Export密码:123456

11. 使用keytool查看

keytool -list -keystore certs/mobile.p12 -storetype pkcs12 -v -storepass 123456

12. 修改tomcat的配置文件server.xml

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
              maxThreads="150" scheme="https" secure="true"
              clientAuth="false" sslProtocol="TLS" keystoreFile="/home/usr/openssl_ca/certs/mobile.p12" keystorePass="oseye15bp12" keystoreType="PKCS12" />

13.通过./catalina.sh configtest来检测配置结果。

参考链接: http://www.oseye.net/user/kevin/blog/375


你可能感兴趣的:(tomcat,https,ubuntu,OpenSSL)