概要說明html
CAS要求,必須使用HTTPS的服務,不然就只等實現登陸,沒法實現單點登陸。
科普下HTTPS,網站有HTTP和HTTPS兩種協議。HTTP是瀏覽器到網站之間是明文傳輸,好比你輸入賬號名和密碼點擊登陸,那賬號名和密碼在中間傳輸過程當中有泄漏的風險。HTTPS是瀏覽器和網站之間加密傳輸,使用的非對稱加密方式,因此很是安全。目前各大網站的登陸基本都是用了HTTPS服務。apache
在上一篇文章《輕鬆搭建CAS 5.x系列(1)-使用cas overlay搭建SSO SERVER 服務端》中,咱們搭建了HTTP的CAS SERVER,在登陸畫面中有2個錯誤提示,其中一個就是使用了非加密協議的錯誤。本文就是來解決這個問題的。瀏覽器
操做步驟tomcat
1. 設置域名
SSL證書是基於域名的,若是您有本身的域名,請將域名指向到您的測試服務器。若是您沒有本身的域名,那本身模擬個域名吧,暫且使用 cas.example.org 。在測試的電腦上,設置hosts將該域名指向到當前服務器。具體設置方式以下:安全
打開文件C:\Windows\System32\drivers\etc\hosts添加以下行服務器
127.0.0.1 cas.example.org
2. 生成SSL證書
若是是正式對外的話,須要購買正式的SSL證書,阿里雲和騰訊雲都有。本文只是用於測試,只須要本地生成個SSL證書便可。購買的證書和本身生成證書的差異麼,其一沒那麼的安全,其二瀏覽器不識別,訪問時會有安全警告。測試
生成證書的步驟是網站
d:\ cd D:\casoverlay keytool -genkey -alias cas -keyalg RSA -keysize 2048 -keypass changeit -storepass changeit -keystore casexample.keystore -dname "CN=http://cas.example.org/,OU=casexample.com,O=casexample,L=casexample,ST=casexample,C=CN" -deststoretype pkcs12
3. Tomcat開啓HTTPS服務,導入證書
Tomcat默認狀況下是打開HTTP服務的,HTTPS的服務是須要手動開發的,具體打開步驟以下:阿里雲
打開文件D:\casoverlay\apache-tomcat-8.5.31\conf\server.xml,增長以下配置加密
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="150" SSLEnabled="true"> <SSLHostConfig> <Certificate certificateKeystoreFile="D:/casoverlay/casexample.keystore" certificateKeystorePassword="changeit" type="RSA" /> </SSLHostConfig> </Connector>
4. 啓動Tomcat
執行D:\casoverlay\apache-tomcat-8.5.31\bin\startup.bat
5. 訪問CAS服務並登陸
https://cas.example.org:8443/cas
能夠看到安全的錯誤提示已經沒有了
輸入賬號名和密碼:casuser/Mellon
恭喜您,HTTPS的CAS服務器已經搭建好了
最後,你們想更多CAS瞭解的話,能夠來[CAS中文文檔站點](http://www.cassso-china.cn)(http://www.cassso-china.cn)來瞅瞅。