標籤:http java os io 問題 linux c window
#genkey:在tomcat根目錄下
keytool -genkey -alias tomcat_cas -keyalg RSA -storepass changeit -keystore server.keystore -validity 3600
#list key:
keytool -list -keystore $JAVA_HOME/jre/lib/security/cacerts
#delete
keytool -delete -trustcacerts -alias tomcat_cas -keystore $JAVA_HOME/jre/lib/security/cacerts -storepass changeit
#export:在tomcat根目錄下
keytool -export -trustcacerts -alias tomcat_cas -file server.cer -keystore server.keystore -storepass changeit
#import
keytool -import -trustcacerts -alias tomcat_cas -file server.cer -keystore $JAVA_HOME/jre/lib/security/cacerts -storepass changeit
(註:$JAVA_HOME:是linux下jdk根目錄,如果是在windows下將其替換為:%JAVA_HOME% changeit為預設:storepass後的密碼必須與genkey指令後的確認密碼相同 在本地時網域名稱為:localhost)
常用步驟:
1:genkey
2:export
3:import
4:設定tomcat/conf/server.xml
<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="/home/brin/webserver/apache-tomcat-6.0.32/casserver.keystore"
truststoreFile="/opt/jdk1.6.0_45/jre/lib/security/cacerts"
keystorePass="changeit" />
5:啟動tomcat
6:https://localhost:8443/cas
常見問題補充:
1: java.io.IOException:Cannot recover key
storepass後的密碼與genkey最後的確認密碼不一致,可delete後重新genkey, export, import
2: java.io.IOException: Keystore was tempered with, or password was incorrect
tomcat/conf/server.xml中的keystorePass="xxx"密碼輸入錯誤
3: java.io.FileNotFoundException:/root/.keystore
tomcat/conf/server.xml中keystoreFile中沒有添加或輸入值有誤