前提: 安装java, 参考《java源码安装》
一、 使用tomcat+cas.war包形式安装(弃用)
解压tomcat
tar zxf apache-tomcat-9.0.56.tar.gz
#解压CAS War包到 tomcat 部署目录下
unzip -q cas-server-webapp-tomcat-5.3.16.war -d apache-tomcat-9.0.56/webapps/cas
#启动tomcat
cd apache-tomcat-9.0.56/bin
./startup.sh
查看日志
cd …
tail -f logs/catalina.out
出现Ready后,Ctrl+C停止日志输出控制台,访问服务器IP:8080,查看tomcat是否启动成功
访问 Cas Server,服务器IP:8080/cas
casuser是用户名,Mellon是密码
此时网页提示http访问不安全,可以设置允许http访问或者直接将服务器设置为https访问
3.1. 修改允许http访问
vim /opt/apache-tomcat-9.0.56/webapps/cas/WEB-INF/classes/services/HTTPSandIMAPS-10000001.json
将serviceID选项中增加http
再vim /opt/apache-tomcat-9.0.56/webapps/cas/WEB-INF/classes/application.properties文件
最后添加如下两行:
cas.tgc.secure=false #取消票根对应的Cookie的Secure配置,否则非https无法完成单点登录(但是能达到每个应用都需要登录的目的)
cas.serviceRegistry.initFromJson=true #使用services目录下的json配置初始化serviceRegistry
3.2 设置为https访问模式
(1) 生成证书
keytool -genkey -alias caskeystore -keypass 123456 -keyalg RSA -keystore thekeystore
输入密钥库口令:123456
您的名字与姓氏时什么:sso.anumbrella.net
之后出来国家时cn外,其他都是anumbrella
结果生成了thekeystore
(2) 导出数字证书
keytool -export -alias caskeystore -keystore thekeystore -rfc -file cas.crt
输入密钥库口令:123456
结果生成cas.crt
(3) 将数字证书导入jdk下的jre里
sudo keytool -import -alias caskeystore -keystore $JAVA_HOME/jre/lib/security/cacerts -file cas.crt -trustcacerts -storepass changeit
(4) 修改server.xml
编辑Tomcat目录Conf下的server.xml文件,
将8443的端口配置文件打开,配置如下(添加前面刚刚生成的keystore的地址和密匙):
最终访问地址:
https://192.168.1.177:8443/cas/login
https://sso.anumbrella.net:8443/cas/login
二、使用template包形式(当前采用此方案)
参考链接:https://blog.csdn.net/Anumbrella/article/details/81045885
安装maven
解压缩
unzip cas-overlay-template-5.3.zip
cd cas-overlay-template-5.3
在pom.xml中的标签内添加阿里源
maven-ali
http://maven.aliyun.com/nexus/content/groups/public//
true
true
always
fail
执行mvn clean package,生成target目录
生成src目录,复制配置文件
cd cas-overlay-template-5.3
mkdir -p src/main/resources/services
cp target/cas/WEB-INF/classes/application.properties src/main/resources/
cp target/cas/WEB-INF/classes/services/* src/main/resources/services/
配置application.properties文件,来支持http方式启动
vim src/main/resources/application.properties
以下三行注释:
#server.ssl.key-store=file:/etc/cas/thekeystore
#server.ssl.key-store-password=changeit
#server.ssl.key-password=changeit
末尾增加
cas.tgc.secure=false
cas.serviceRegistry.initFromJson=true
cas.ticket.st.numberOfUses=10
cas.ticket.st.timeToKillInSeconds=60
配置HTTPSandIMAPS-10000001.json文件,来支持http方式启动
vim src/main/resources/services/HTTPSandIMAPS-10000001.json
将"serviceId" : “^(https|imaps)/.“,一行中增加http,改为"serviceId” : "^(https|imaps|http)/.”,
修改pom.xml文件,为了支持rest认证方式
在Additional dependencies may be placed here注释下增加
org.apereo.cas
cas-server-support-rest
${cas.version}
三、服务验证: