设为首页 收藏本站
查看: 960|回复: 0

[经验分享] 安装部署jasig cas server及相关实践

[复制链接]

尚未签到

发表于 2018-10-20 08:43:16 | 显示全部楼层 |阅读模式
  jasig cas server是一个开源的单点登录认证服务器。部署很简单,下载后将war包放入tomcat后启动。需要理解并解决的问题有:
  一、使tomcat支持https
  https协议通过ssl和数字证书来保证c/s间的数据传输安全。一般说来非对称加密算法性能要低于对称加密算法,所以ssl协议是用对称加密算法进行信息加密的。而在双方确立信任关系的时候需要用数字证书(非对称加密)来相互认证和商定密钥。那么要使tomcat支持https,部署密钥库/证书这一步是少不了的。证书可以花钱买,即全球可信证书是被浏览器默认支持的(不出现警告提示)。舍不得花钱就用私人证书,当然把私人证书导入到可信任列表里也可以除去警告提示(见后)
  二、生成私人证书
  jdk工具keytool提供了多种和密钥库/证书相关的功能和使用方法,详见帮助。介绍几个常见的操作。关于密钥库也可参考我另一篇博客:http://6738767.blog.51cto.com/6728767/1352239
  查看默认密钥库里的条目:keytool -list -keystore C:\Users\xxxx\.keystore (这里通常是自己生成的密钥对,查看密码也是自己设的,忘了就看不了了)
  查看jre里的默认密钥库条目:keytool -list -keystore C:\Java\jre1.8\lib\security\cacerts,默认密码是changeit。可以看到默认包含了100多个条目,当我们用java开发自己客户端访问https站点时,就需要在这个密钥库中包含对方的证书,否则会报错。导入方法也简单,见后。先说生成密钥对操作:
  keytool -genkeypair -alias tomcat -keyalg RSA,第一个参数要输入tomcat启动绑定的域名(如cas.xx.com),也即客户端访问的域名。
  当然为了不和其他密钥对混在一起,也可以单独生成一个tomcat专用文件:keytool -genkeypair -alias tomcat -keyalg RSA -keystore https.keystore
  得到了这个https.keystore文件,把它放到某个目录下(假定为e:\keys),修改tomcat\conf\server.xml文件:

  注释掉这一行:  取消注释并修改这一行:
  重新启动tomcat,访问cas.xx.com:8443(本机),既可看到cas server部署好了。
  三、修改cas server配置文件:deployerConfigContext.xml配置数据源、查询语句、提供的用户属性等设定。
  四、cas server通常需要为多个应用服务的。如前所述,当这些应用使用java开发时,需要将证书导入到jre中,否则不能访问。要导入就需要先导出:
  keytool -exportcert -alias tomcat -file cas.crt -storepass 123456,这样就得到一个证书文件cas.crt,里面包含了服务器的公钥。导入到jre的密钥库中:keytool -importcert -alias tomcat -file cas.crt -keystore "%JAVA_HOME%\jre\lib\security\cacerts" -storepass changeit
  五、消除浏览器访问此https站点的警告
  将这个证书导入到本机信任列表里。方法:运行mmc ,添加/删除管理单元(M)... ,证书, 我的用户账户,受信任的根证书颁发机构。当然从浏览器导入也可以,但记得位置要放对(个人-受信任的根证书颁发机构)
  题外:对于没有证书的别人https的站点,可用这个软件portecle导出证书,再导入到受信任列表里,也可以消除浏览器警告。


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-623872-1-1.html 上篇帖子: mysql5.6.20数据库sql_mode模式设置 下篇帖子: C# SQL封装(一)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表