【Shiro-cas之路】——在windows上搭建CAS服務端
剛剛接觸shiro-cas,小白一個。謹以此類部落格,紀念曾經走過的路……
工具:Tomcat7、 cas-server-4.0.0、cas-client-4.0.0(可以去官網下載)
一、配置服務端數字證書
我們用windows做服務端需要配置,使https可以訪問。
(使用cmd執行以下命令)
1.生成一個名為 castest的證書
<span style="font-family:KaiTi_GB2312;font-size:18px;"><strong>keytool -genkey -alias castest -keyalg RSA -keystore F:/keys/castest</strong></span>
功能:建立一個名為castest的證書,並且把該證書放在名為castest.keystore的祕鑰庫中,若不存在,則建立。
--genkeypair:生成一對非對稱金鑰;
--alias:別名
--keyalg:指定加密演算法,本例中採用的RSA加密
--keystore:金鑰庫的路徑或名稱,不指定則預設在計算機的使用者目錄生成一個“.keystore”檔案
需要說明的是:
1.密碼至少6位字元
2.“您的名字與姓氏”:輸入的應該是跳轉域名,而不是我們的姓名。
3.“您的名字與姓氏”必填,其餘選填。
執行後,在指定路徑(不指定則為使用者目錄)下生成了一個“castest.keystore”檔案。
我們可以使用“keytool -list -keystore castest.keystore”檢視該檔案中的所有證書
2.匯出證書
<span style="font-family:KaiTi_GB2312;font-size:18px;"><strong>keytool -export -file F:/keys/castest.crt -alias castest -keystore F:/keys/castest</strong></span>
功能:將制定路徑下的證書目錄匯出一個名為castest.crt的證書中
執行結束,制定路徑下會出現castest.crt檔案
3、將證書匯入Java jre的可信區內。
首先,我們要找到java的jre的可信區。我的java是預設安裝所以路徑為:C:\Program Files\Java\jdk1.8.0_60\jre\lib\security。我們也可以使用相對路徑:%java_home%/jre/lib/security
如果security中已經存在cacerts,需要先將其刪除。
keytool -import -keystore "C:\Program Files\Java\jdk1.8.0_60\jre\lib\security\cacerts" -file F:/keys/castest.crt -alias castest
出現以上介面,則表示新增成功。
二、修改配置檔案
1、我們把cas-server4.0解壓,在modules目錄下找到cas-server-webapp-4.0.0.war,將其複製到%TOMCAT_HOME%\webapps下並重命名為cas.war。啟動Tomcat後,webapps下會自動解壓cas.war檔案
2、修改%TOMCAT_HOME%\conf\server.xml檔案,新增https的Connector
新增如下程式碼:
<Connector SSLEnabled="true" clientAuth="false" keystoreFile="F:/keys/castest"
keystorePass="199312"
maxThreads="150" port="8443" protocol="org.apache.coyote.http11.Http11Protocol" scheme="https" secure="true" sslProtocol="TLS"/>
keystoreFile:為生成證書時的路徑
keystorePass:為證書密碼
port:為埠號
至此。配置結束。。
三、測試配置
訪問:https://localhost:8443/
出現如下介面:
點高階--新增例外
即可訪問https。訪問https://localhost:8443/cas/login,出現如下介面
則證明,cas服務端部署成功。