以下是相關的Tomcat,JDK和Windows環(huán)境:Tomcat版本:tomcat-7.0.55 JDK版本: jdk1.6.0 目錄所在的位置:Serve的目錄:D:\server\tomcat-7.0.55\ JDK的目錄:D:\jdk\jdk1.6.0 1、生成服務器的密匙文件casserver.keystore1)打開CMD切換到Serve的目錄下面D:\Server\tomcat\下2)執(zhí)行:keytool -genkey -alias casserver -keypass cas123 -keyalg RSA -keystore casserver.keystore -validity 365說明: -alias指定別名為casserver; -keyalg指定RSA算法; -keypass指定私鑰密碼; -keystore指定密鑰文件名稱為casserver.keystore; -validity指定有效期為365天。 另外提示輸入密匙庫口令應與-keypass指定的cas123相同;您的名字與姓氏fron.com是CAS服務器使用的域名(不能是IP,也不能是localhost),其它項隨意填。 注意: 服務器上如果有多個JDK,請確認環(huán)境變量中的JDK路徑為tomcat所使用的JDK, 如果不在環(huán)境變量中,也可切換到指定JDK的bin目錄下執(zhí)行命令;提示的輸入keystore密碼應與-keypass必須與指定的相同, 否則后面tomcat啟動會報IO異常(Cannot recover key)。 命令執(zhí)行成功后Server目錄下多出casserver.keystore文件。 3)可以看到Tomcat 下面生成casserver.keystore
2.生成服務端證書casserver.cer1)根據(jù)上面導出的casserver.keystore文件就可以生成casserver.cer文件,只需在原來的Serve的目錄下面D:\Server\tomcat\下執(zhí)行:keytool -export -alias casserver -storepass cas123 -file casserver.cer -keystore casserver.keystore 說明: -alias指定別名為casserver; -storepass指定私鑰為liuqizhi; -file指定導出證書的文件名為casserver.cer; -keystore指定之前生成的密鑰文件的文件名。 注意:-alias和-storepass必須為生成casserver.keystore密鑰文件時所指定的別名和密碼,否則證書導出失敗 2)執(zhí)行上面命令后發(fā)現(xiàn)多了casserver.cer文件3.導入證書文件到cacerts 密鑰庫文件接下來就是把上面生成的服務器的證書casserver.cer導入到cacerts密鑰庫文件中(后面的客戶端會用到這些) keytool -import -trustcacerts -alias casserver -storepass cas123 -file casserver.cer –keystore cacerts
命令執(zhí)行成功后Server目錄下多出cacerts文件。 4.服務端Tomcat配置在制作完成密鑰文件、證書文件、密鑰庫文件后即可進行服務端Tomcat的配置。打開$CATALINA_HOME/conf/server.xml <!--keystoreFile 生成的安全證書的位置--> <!--keystorePass設置安全證書的密碼--> <Connector protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="D:\server\tomcat-7.0.55\casserver.keystore" keystorePass="cas123" port="443" /> 說明: port一般為8443或443,最常用的是443端口(https默認端口), 這樣https方式訪問的時候可以不加端口號(如:https://sso./cas/login); keystoreFile為tomcat目錄下的密鑰文件; keystorePass為私鑰密碼;truststoreFile為生成的信任文件, 如果此處不指定則默認為$JAVA_HOME/jre/lib/security/cacerts文件;其它屬性默認即可。 5.生成客戶端密鑰庫文件單向認證的客戶端配置只需生成客戶端信任文件caserts即可。 首先將服務端生成的證書文件(之前生成的casserver.cer文件)復制到$JAVA_HOME/jre/lib/security下, 然后打開CMD窗口切換到$JAVA_HOME/jre/lib/security下并執(zhí)行命令: keytool -import -trustcacerts -alias casclient -storepass changeit -file casserver.cer -keystore cacerts 命令執(zhí)行成功后JDK目錄/jre/lib/security下多出cacerts文件。 6.客戶端應用配置TOMCAT修改 7.常見配置錯誤1)keytool 生成安全證書不能使用IP地址 一律使用域名
|
|
來自: 三十的狼 > 《https私鑰生成》