400 028 6601

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

利用memcached实现CAS单点登录集群部署

前言:利用memcached实现CAS单点登录集群部署
参考信息:https://github.com/magro/memcached-session-manager/wiki/SetupAndConfiguration https://code.google.com/archive/p/memcached-session-manager/wikis/SetupAndConfiguration.wiki

专注于为中小企业提供成都网站设计、网站制作服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业崂山免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上千企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

应用名称端口版本主机IP
Nginx 8088 1.0.1 192.168.7.2
CAS-TomcatA 8089 7.0.35 192.168.7.3
n1:libevent 2.1.8 192.168.7.3
n1:memcached 22322 1.5.12 192.168.7.3
n1:magent 12000 1.5.12 192.168.7.3
CAS-TomcatB 8089 7.0.35 192.168.7.4
n2:libevent 2.1.8 192.168.7.4
n2:memcached 22322 1.5.12 192.168.7.4
n2:magent 12000 1.5.12 192.168.7.4

步骤

    主要只有三个步骤:
        1.安装memcached并配置magent代理
        2.session共享的配置
        3.TicketRegistry内存数据剥离的配置

一:安装memcached并配置magent代理

    192.168.7.3和192.168.7.4两个节点下都要安装memcached和magent,安装步骤只用192.168.7.3举例。

二:session共享的配置

    session共享完全由tomcat来实现,不必修改web应用。本文忽略Nginx实现负载的相关配置。

利用memcached实现CAS单点登录集群部署
利用memcached实现CAS单点登录集群部署

三:将TicketRegistry内存数据写入memcached

1.在cas的tomcat容器中添加一下jar包
    tomcat的路径:/webapps/cas_sso/WEB-INF/lib/
        asm-5.0.3.jar
        cas-server-integration-memcached-3.5.1.jar
        kryo-3.0.3.jar
        minlog-1.3.0.jar
        reflectasm-1.10.1.jar
        spymemcached-2.12.0.jar
2.修改ticketRegistry.xml文件
    文件在Tomact中的路径:/webapps/cas_sso/WEB-INF/spring-configuration/ticketRegistry.xml
    备份ticketRegistry.xml,并创建新的ticketRegistry.xml文件,内容如下:
            
            
            
            
                    
                        
                            
                                
                            
                        
                    
                    
                    
                

                
            
参数说明:
    :memcached的地址,多个用逗号隔开。
    :TGT超时时间(秒)
    :ST超时时间(秒)

3.重启应用测试
使用Nginx做负载,代理两个CAS服务端。
1.通过浏览器访问Nginx单点登录登陆后,通过日志查看访问到哪个CAS节点,将该节点stop。
2.再次通过浏览器访问Nginx,查看是否需要登录,正常情况是不需要登录的。成功后标识session共享成功。
3.通过浏览器进行cas客户端访问,如果没有跳转单点,则TGT数据保存到memcached共享成功。

后续:memcached的安全

使用memcached应用时,只需要能连接上主机端口就能用,如果放到互联网上,这是很不安全的操作。使用memcached时,不要使用默认端口,换个1024以上的端口。针对于这个安全一般有三个解决方案,但每一种都有各自的局限性,可以根据自己的业务来做选择。
1.双网卡:应用服务选择外网的网卡,memcached使用内网的网卡。
2.设置防火墙:使用主机的iptables进行白名单放行,阻止非信任的访问请求。
3.memcached开启SASL认证。1.4.3版本后支持此功能。

附件信息
链接: https://pan.baidu.com/s/1aihl_abcNguh9QVNSAWwNA 提取码: 7r1r


分享题目:利用memcached实现CAS单点登录集群部署
本文链接:http://www.bluegullmedia.com/article/jsoocs.html

其他资讯

让你的专属顾问为你服务

0.0438s