为了方便,专门建立一个生成证书的存在目录;
F:/casfile
一、注意事项:通过几次失败的经过总结
1、jdk安装在有空格的目录中(如:D:/Program Files/java/jdk1.5),经常出现找不到路径的错误。
2、keytool使用java环境变量,是区别大小写的。
二、开始安装并且配置
1. 生成Tomcat的安全证书,
运行:cmd
输入:%java_home%/bin/keytool -genkey -alias tomcat -keyalg RSA
回车
密码:changeit
用户名,localhost
其它随便
到出现……[on]的时候,输入y,回车
再次输入密码;tomcat(安全证书的密码)
默认生成的.keystore 在C:/Documents and Settings/你的windows用户名/下
2. 生成服务器证书
%java_home%/bin/keytool -export -alias tomcat -file server.crt
在F:"casfile下会看到一个server.crt文件;
暂时不管它,继续…
%java_home%/bin/keytool -import -file server.crt -keystore %java_home%/jre/lib/security/cacerts
注意密码为:changeit
3. 产生SERVER的证书
keytool -genkey -alias my-alias-name -keyalg RSA -keystore keystore-file
输入的内容同1
4. 开始配置服务器的用户中心站点:
在server配置tomcat使用HTTPS
Tomcat5/conf/server.xml里添加以下代码
<Connector className="org.apache.coyote.tomcat5.CoyoteConnector"
port="8443" minProcessors="5" maxProcessors="75"
enableLookups="true" disableUploadTimeout="true"
acceptCount="100" debug="0" scheme="https"
secure="true">
<Factory className="org.apache.coyote.tomcat5.CoyoteServerSocketFactory"
keystoreFile="F:/casfile/keystore-file"
keystorePass="changeit" clientAuth="false" protocol="TLS" />
</Connector>
将cas-server-3.1.1-release.zipp解压,并将"modules"cas-server-webapp-3.3.1.war拷贝到tomcat5的webapps下,重新命名为cas.war
5. 开始配置应用站点比如app1
web.xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<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://localhost:8443/cas/login</param-value>
</init-param>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name>
<param-value>https://localhost:8443/cas/proxyValidate</param-value>
</init-param>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.serverName</param-name>
<param-value>localhost:8080</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CASFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>