今天花了一个下午的时间,终于完成的cas配置的一次完整的运行。cas前世今生我就不介绍了,有兴趣的朋友谷歌或是百度一下就可以有很详细的了解了,重点记录一下今天的配置过程和遇到的问题及解决方法。
环境:浏览器(ie6.0,windows xp)
cas server 在一台Linux服务器,cas client在另外一台linux服务器
应用服务器为tomcat5.5.26
初步的配置实用过程参考了http://www.blogjava.net/yida/archive/2007/04/03/55466.html的描述,各位亦可以访问阿木的blog。整理如下:
1.请下载到cas的官方网站下载cas-server(我用的是3.2)和cas-client(2.0.11),tomcat5.5.26
cas的官方网站:http://www.ja-sig.org/products/cas/
2.安装cas-server,我们假定安装cas-server的服务器为server1
(1)请在server1服务器上安装好jdk1.5或以上版本的jdk,tomcat5.5.26,并配置环境变量JAVA_HOME
(2)将cas-server-3.2-release.zip解压,将moudels目录下cas-server-webapp-3.2.war拷贝到tomcat的webapps目录下,修 改名称为cas.war.
(3)生成server1的安全证书:
keytool -genkey -alias my-alias-name -keyalg RSA -keystore keystore-file
(4)在server1配置https
在$CATALINA_HOME/conf/server.xml里修改为一下配置
<Connector port="8443" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="/path/keystore-file" keystorePass="your-password"
/>
(5)导出server1的证书,用来给所有需要用到的客户端导入
keytool -export -file myserver.cert -alias my-alias-name -keystore keystore-file
(6)将导出的证书上传的client1服务器上。
(7)启动server1上的tomcat,检验cas配置是否成功,访问http://ip:8443/cas/login,如果能看到cas的登录页面则表示配 置成功。
3.配置 cas-client,我们以tomcat下自带的servlet-example为例子进行说明
(1)请在client1服务器上安装好jdk1.5或以上版本的jdk,tomcat5.5.26,并配置环境变量JAVA_HOME
(2)将cas-client-2.0.11.zip解压,把java/lib/casclient.jar拷贝到client1服务器上的
webapps/servlets-examples/WEB-INF/lib目录下(如果没有就建一个)
(3)在要使用CAS的客户端client1里设置(以servlets-examples这个APP为例),我们使用ServletFilter(CAS client里提供 的)来实现SSO的检查,修改servlets-examples/WEB-INF/web.xml,添加以下内容:
<filter>
<filter-name>CASFilter</filter-name>
<filter-class>edu.yale.its.tp.cas.client.filter.CASFilter</filter-class>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.loginUrl</param-name>
<param-value>https://your.cas.server.name(eg:server1):port/cas/login</param-value>
</init-param>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name>
<param-value>https://your.cas.server.name(eg:server1):port/cas/proxyValidate</param-value>
</init-param>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.serverName</param-name>
<param-value>your.client.server.name(eg:client1):port</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CASFilter</filter-name>
<url-pattern>/servlet/*</url-pattern>
</filter-mapping>
(4)在客户端的JVM里导入信任的SERVER的证书(根据情况有可能需要管理员权限)
keytool -import -keystore $JAVA_HOME/jre/lib/security/cacerts -file myserver.cert -alias my-alias-name
此时需要输入密码,默认密码为changeit
通过以上配置,基本完成cas-server和cas-client的配置,但是还有以下问题需要注意和解决
由于cas的证书需要域名才能正确的进行认证信息的交互,不支持ip,如果server和client在同一台机器上,可以使用localhost,如果像我们上面描述的三台服务器这样的环境,使用localhost或者ip是不能正常运行的。如果使用ip,运行时会抛出 HTTPS hostname wrong 的错误,解决的方法如下:
假设server1的ip为:192.168.10.1,client1的ip为192.168.10.2,开发机器(xp)的ip为:192.168.10.3
在server1和client1上设置本机的域名映射:
vi /etc/hosts 添加以下行
192.168.10.1 cas.server
在开发机器(xp)下,在C:\WINDOWS\system32\drivers\etc目录下,编辑hosts文件,添加以下行
192.168.10.1 cas.server
重新生成cas-sever的服务器端的证书,在开始问“你的名字”或“DName”的时候,必须填写你服务器所在域名(cas.server)
然后重新到处服务器器端的证书,并将其导入到client1服务器的jvm
最后修改修改servlets-examples/WEB-INF/web.xml中关于cas过滤器的配置:请将your.cas.server.name(eg:server1)修改为cas.server即可。重新启动server1和client1的服务器上的tomcat就可正常运行。
ttp://client1:8080/servlets-examples/servlet/HelloWorldExample
系统会自动跳转到一个验证页面,随便输入一个相同的账号,密码,严正通过之后就会访问
到真正的HelloWorldExample这个servlet了
分享到:
相关推荐
Windows Server 2012 CA 证书服务器安装和配置 Windows Server 2012 CA 证书服务器安装和配置是 windows 服务器中的一项重要功能,用于管理和颁发数字证书,以确保网络通信的安全性和身份验证。下面是 Windows ...
图文版 Window CA 服务器配置教程 本资源摘要信息将详细介绍 Windows CA 证书服务器配置的过程,包括安装证书服务、配置 IIS、申请 CA 证书和颁发的全过程。 安装证书服务 首先,我们需要在 Windows Server 2003 ...
Windows CA 证书服务器配置—— Microsoft 证书服务安装 Windows CA 证书服务器配置是 Microsoft 证书服务的一部分,主要用于在 Windows Server 2003 系统上安装和配置证书服务器。以下是 Windows CA 证书服务器...
Windows CA 证书服务器配置 在 Windows Server 2003 上配置微软 CA 的图文教程中,我们可以学习到以下知识点: 1. 安装准备:在安装微软 CA 之前,需要安装 IIS 组件,并添加证书服务组件。 2. 证书服务组件的...
### U8_CA 安装配置手册(BJCA) #### 一、BJCA证书应用环境服务端安装帮助 **1.1 主要功能** BJCA证书应用环境服务端安装程序主要用于安装和配置BJCA服务器端的证书应用环境,包括必要的证书及密码算法库、证书...
本文将详细讲解"RG200O-CA配置工具",这是一款专门用于上海贝尔设备的管理工具,其核心功能在于帮助用户获取设备的超级密码,以便进行更高级别的管理和配置。 RG200O-CA,全称可能为“Router Gateway 2000 Series -...
【CA(证书颁发机构)服务器配置原理】 CA(证书颁发机构)是公钥基础设施(PKI)中的核心组件,它的主要任务是确保网络通信的安全,尤其是对于数据的加密、身份验证以及签名。CA通过发放、管理和撤销数字证书来实现...
RG200o CA 光猫硬破《解路由配置文件!
- 按照提示选择CA类型(例如独立根CA),并配置相关的证书信息,包括名称、有效期、存储位置等。 #### 2. 配置SSL网站 配置SSL网站主要涉及以下步骤: - **创建请求证书文件**:通过IIS管理器为特定网站创建证书...
"Windows Server 2008 CA 配置 HTTPS 绑定" 本文将详细讲述如何为 Windows Server 2008 CA 配置 HTTPS 绑定,以便与 Operations Manager 2007 一起使用。HTTPS 绑定是确保数据传输安全的重要步骤,本文将分步骤指导...
- 安装与初始化:按照官方文档步骤,安装吉大正元CA服务器软件,设置根CA和子CA,配置必要的安全策略。 - 身份验证策略:定义身份验证规则,如证书有效期、密码复杂度等。 - 签名算法选择:根据安全需求选择合适...
OpenSSL是一个强大的安全套接层(SSL)和传输层安全(TLS)协议实现工具包,它广泛应用于服务器和客户端的加密通信,同时也支持证书管理,包括CARoot的配置和管理。 在OpenSSL环境中配置CARoot,我们需要了解以下几个...
"网络准入加CA证书认证配置" 在本文中,我们将详细介绍如何配置网络准入加CA证书认证,以实现安全的网络访问控制。该配置示例将dot1X、GUEST VLAN、DHCP、IAS、AD、CA证书认证等技术结合起来,提供了一个完整的网络...
【CA服务器配置原理与图解过程】 在网络安全领域,证书颁发机构(Certification Authority,简称CA)扮演着至关重要的角色。CA服务器配置是构建公共密钥基础设施(Public Key Infrastructure,PKI)的基础,用于...
《HP EVA CA数据复制配置手册》是针对HP企业级存储解决方案中的一种关键功能——持续可用性(CA, Continuous Availability)的数据复制配置进行详细指导的手册。这份文档由HP公司于2011年4月发布,适用于研究和实施HP ...
CA:Certificate Authority,证书权威机构,也称为证书颁发机构或认证中心)是PKI中受信任的第三方实体.负责证书颁发、吊销、更新和续订等证书管理任务和CRL发布和事件日志记录等几项重要的任务。首先,主体发出证书申请...
WEB-FTP(服务器群集)CA证书配置详解,WEB-FTP(服务器群集)CA证书配置详解,WEB-FTP(服务器群集)CA证书配置详解
Windows 2003 CA服务器配置及客户端证书申请和安装 一.CA服务器安装 1.安装证书服务之前要先安装IIS服务并且保证"WEB服务扩展"中的"Active Server Pages"为允许状态; 2.在"控制面板"中运行"添加或删除程序",...
RG2010-CA配置文件
《Windows Server 2003 CA配置详解》 Windows Server 2003中的CA(Certificate Authority),即证书权威机构,是公钥基础设施(PKI)的重要组成部分,它扮演着信任第三方的角色,负责证书的颁发、撤销、更新和续订...