開啓tomcat的https服務

首先須要生成一系列私鑰文件以及證書
java

#建立根證書私鑰文件custom_ca.key
openssl genrsa -out custom_ca.key 2048

#建立根證書  -subj 指定頒發者名稱 
openssl req -x509 -new -key custom_ca.key -out custom_ca.cer -days 730 -subj /CN="Stonesea's CA"

#建立ssl證書的私鑰文件
openssl genrsa -out server.key 2048

#建立CSR  -subj指定 證書的使用者
openssl req -new -out server.req -key server.key -subj /CN=127.0.0.1/CN=192.168.159.128/CN=localhost

#用CSR建立ssl證書 有效期爲100年
openssl x509 -req -in server.req -out server.cer -CAkey custom_ca.key -CA custom_ca.cer -days 36500 -CAcreateserial -CAserial server.serial

#導出.p12證書,導出過程當中會要求輸入多出密碼(實驗中輸入密碼爲:stonesea)
openssl pkcs12 -export -in server.cer -inkey server.key -out server.p12 -name "server"

#.p12 文件導入到 java keystore 中 
# -srcstorepass的值爲上一步中輸入的導出密碼 (stonesea)
# -deststorepass 導出出的keystore 密碼 (將在tomcat的server.xml文件中使用)
keytool -importkeystore -v -srckeystore  server.p12 -srcstoretype pkcs12 -srcstorepass stonesea -destkeystore server.keystore -deststoretype jks -deststorepass justfortest

將生成的server.keystore文件複製到 tomcat的  /conf 目錄,配置 server.xml文件
shell

<Connector port="8443"
           protocol="org.apache.coyote.http11.Http11Protocol"
           SSLEnabled="true"
           maxThreads="150"
           scheme="https"
           secure="true"
           keystoreFile="conf/server.keystore"
           keystorePass="justfortest"
           clientAuth="false" 
           sslProtocol="TLS" />
相關文章
相關標籤/搜索