制作证书以及Tomcat配置
搭建openssl环境,下载openssl并设置环境变量方便命令行的使用;
修改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