cas系列-cas server demo搭建(二)
一 部署简述
cas server官方推荐采用overlay方式进行部署,通过替换自定义文件,减少项目文件改动,以简化开发和部署,这个有点类似于项目上直接替换java的class文件,由于和git的搭配使用,降低了版本不一致的问题;
二 部署
- clone项目:
git clone --depth=1 --single-branch --branch=5.3 https://github.com/liulei3/cas-overlay-template.git
--depth:clone深度,1代表只clone最近一次提交;
--single-branch:只获取单个分支,分支由--branch或主分支远程的HEAD指定;
--branch:指定clone分支;
由于不同版本存在差异,这里选取5.3版本演示;
- 项目要求:
JDK 1.8+;
配置ssl证书;
配置ssl证书如果采用官方启动方式是必须的,因为默认开发端口是8443;
- 项目目录

etc.cas.config 定义cas服务器默认配置文件和日志信息
maven maven统一版本包,因为不同版本的maven存在差异,为了避免脚本执行环境错误,这里引入了统一的maven版本,感觉可以删除,有意者可以自行尝试
build.* 项目构建脚本,sh是linux环境运行;cmd是windows环境运行;
mvnw.* maven执行脚本,没有后缀是linux环境运行;bat是windows环境运行;
tip:
pom.xml文件中定义了外部依赖库,它会覆盖本地的maven依赖库设置,你下载可以直接注释;
cas server是一个web项目,它依赖一个外部服务器,这个服务器可以是jetty,undertow,tomcat或者自定义web服务器,这里选取tomcat,它依赖cas-server-webapp-tomcat-5.3.4.war,
这个包有115M,推荐你单独下载,然后直接放入你maven本地仓库即可(位置:maven仓库地址\org\apereo\cas\cas-server-webapp-tomcat\5.3.4\);
- 配置ssl证书
1 生成keystore
keytool -genkey -alias cas -keyalg RSA -validity 999 -keystore D:\cas\thekeystore.keystore
-alias:指定别名
-keyalg指定RSA算法
-validity指定有效天数;
-keystore指定文件路径及名称;
另外提示输入您的名字与姓氏:是CAS服务器使用的域名(不能是IP,也不能是localhost) 2 导出证书
keytool -export -alias cas -file D:\cas\cas.crt -keystore D:\cas\thekeystore.keystore
-alias指定别名;
-file指定导出证书的文件名;
-keystore指定之前生成的密钥文件的文件名。 3 替换jdk证书
keytool -import -alias cas -file D:\cas\cas.crt -keystore $JAVA_HOME\jre\lib\security\cacerts
-file:指定导入证书的文件名
-keystore:jdk证书位置 4 查看证书:
keytool -list -v -alias cas -keystore D:\cas\thekeystore.keystore
需要你自己替换文件目录
- 项目启动
1 脚本启动
window
运行war包方式
./build.cmd run
spring boot方式
./build.cmd bootrun
linux:命令一样,但是执行脚本为build.sh
2 tomcat启动(这种方式不用配置ssl证书)
打包获取cas.war
mvn clean package
将cas.war放入tomcat的webapps目录,启动tomcat的startup.bat运行
spring boot方式启动如果你修改了目录结构或者脚本,需要你指定启动主类
- 访问
http://cas.server.name:8080/cas
https://cas.server.name:8443/cas
未配置ssl证书登录页:

配置ssl证书登录页:

- 登录:
输入默认用户名密码:casuser::Mellon 跳转登录成功页:

参考资料:
cas-overlay-template: https://github.com/liulei3/cas-overlay-template/tree/5.3
cas build process: https://apereo.github.io/cas/developer/Build-Process-5X.html
cas系列-cas server demo搭建(二)的更多相关文章
- cas系列-cas登出(四)
跟登陆一样,登出操作也很重要.由于是多应用间操作,状态保持也是一个要点,根据登出的影响范围,可以将登出操作分为两类: 单应用登出 单点登出(多应用登出) 顾名思义,单应用登出即登出只影响被操作的应用会 ...
- cas系列-cas REST协议(三)
cas的rest协议 cas还支持rest协议方式进行访问,格式和参数如下: 1. 获取TGT 请求方式,路径,http协议及请求参数: POST /cas/v1/tickets HTTP/1.0 u ...
- CAS 5.1.x 的搭建和使用(二)—— 通过Overlay搭建服务端-其它配置说明
CAS单点登录系列: CAS 5.1.x 的搭建和使用(一)—— 通过Overlay搭建服务端 CAS5.1.x 的搭建和使用(二)—— 通过Overlay搭建服务端-其它配置说明 CAS5.1.x ...
- cas单点登录-CAS5.1.3 overlay服务器搭建(二)
前言 本节主要讲解怎么搭建cas服务端,并且在浏览器中使用https访问cas服务端 1.通过cas代码生成工具(https://casinitializr.herokuapp.com/),生成 ...
- CAS 5.1.x 的搭建和使用(一)—— 通过Overlay搭建服务端
CAS单点登录系列: CAS 5.1.x 的搭建和使用(一)—— 通过Overlay搭建服务端 CAS5.1.x 的搭建和使用(二)—— 通过Overlay搭建服务端-其它配置说明 CAS5.1.x ...
- cas协议,以及tomcat搭建cas服务器
1. CAS 简介 1.1. What is CAS ? CAS ( Central Authentication Service ) 是 Yale 大学发起的一个企业级的.开源的项目,旨 ...
- CAS 5.1.x 的搭建和使用(四)—— 配置使用HTTP协议访问的服务端
CAS单点登录系列: CAS 5.1.x 的搭建和使用(一)—— 通过Overlay搭建服务端 CAS5.1.x 的搭建和使用(二)—— 通过Overlay搭建服务端-其它配置说明 CAS5.1.x ...
- CAS 5.1.x 的搭建和使用(三)—— 通过官方示例来熟悉客户端搭建
CAS单点登录系列: CAS 5.1.x 的搭建和使用(一)—— 通过Overlay搭建服务端 CAS5.1.x 的搭建和使用(二)—— 通过Overlay搭建服务端-其它配置说明 CAS5.1.x ...
- cas 单点登录(SSO)实验之二: cas-client
cas 单点登录(SSO)实验之二: cas-client 参考文章: http://my.oschina.net/indestiny/blog/200768#comments http://wenk ...
随机推荐
- 动手实现CNN卷积神经网络
数据集采用的是手写数据集(http://yann.lecun.com/exdb/mnist/): 本文构建的CNN网络图如下: 像素点:28*28 = 784,55000张手写数字图片. # -*- ...
- Lua 可变参数 ... 的一点测试
function test( ... ) if (...) then dibug("has ...") else dibug("no ...") end for ...
- Eureka服务注册于发现之Client搭建
Eureka在Server端的搭建已经有很多介绍的文章,同时也是学习Eureka的第一步. 搭建好注册中心后怎么进行服务注册和服务调用,是我们要讲的主要内容. 开发环境:IDEA2018.3+Spri ...
- shell for 循环简单用法
for循环:固定有限次数循环,工作中for使用最多. 语法1: for 变量名 in 变量取值列表 do 指令… done 学习方法:记住下面的内容 for 男人 in 世界 do if [ 有房 ] ...
- 阿里P7浅谈SpringMVC
一.前言 既然是浅谈 SpringMVC,那么我们就先从基础说起,本章节主要讲解以下内容: 1.三层结构介绍 2.MVC 设计模式介绍 3.SpringMVC 介绍 4.入门程序的实现 注:介绍方面的 ...
- 详解分布式系统里session同步
1.什么是session?什么又是cookie?他俩有啥联系和区别? 2.为什么要在多台服务器间进行session的共享同步? 3.以及有哪些方法来实现这个同步? 大家快搬板凳,老王开始扯淡咯~ 1. ...
- 早上好,我是 Istio 1.1
1性能增强 虽然Istio1.0的目标是生产可用,但从去年7月份发布以来,在性能和稳定性上并不能让用户满意.社区的Performance and Scalability工作组在Istio v1.1中做 ...
- mongodb索引 单键索引
单键索引是最普通的索引,比如一条记录,形式为{x:1,y:2,z:3},我们在x上建立索引,之后就可以以x为条件进行查询,与_id索引不同,单键索引不会自动创建 创建索引 > db.test2. ...
- CF802C Heidi and Library (hard) 最小费用流
你有一个容量为k的空书架,现在共有n个请求,每个请求给定一本书ai,如果你的书架里没有这本书,你就必须以ci的价格购买这本书放入书架. 当然,你可以在任何时候丢掉书架里的某本书.请求出完成这n个请求所 ...
- Why Go? – Key advantages you may have overlooked
Why Go? – Key advantages you may have overlooked yourbasic.org/golang Go makes it easier (than Java ...