i.使用命令提示符进入到Tomcat安装目录C:/Program Files/Apache Software Foundation/Tomcat 5.x
ii.生成服务端密钥,执行以下命令
keytool -genkey -alias 别名keyalg RSA -keypass changeit -storepass changeit -keystore server.keystore
例:keytool -genkey -alias casserver -keyalg RSA -keypass changeit -storepass changeit -keystore server.keystore
运行后出现提示信息:
输入keystore密码:changeit 这里也填入主机名
您的名字与姓氏是什么?
[Unknown]: localhost 这里一定要填写正确的主机名
您的组织单位名称是什么?
[Unknown]: composite
您的组织名称是什么?
[Unknown]: composite
您所在的城市或区域名称是什么?
[Unknown]: Beijing
您所在的州或省份名称是什么?
[Unknown]: Beijing
该单位的两字母国家代码是什么
[Unknown]: cn
CN=localhost, OU=composite, O=composite, L=Beijing, ST=Beijing, C=cn 正确吗?
[否]: y
完成后会在Tomcat目录生成一个名为casserver的文件
iii. 生成服务端证书,执行以下命令
keytool -export -alias casserver -storepass changeit -file server.cer -keystore server.keystore
命令执行后生成一个server.cer的证书文件
-----------------------------------------------------------------------------------------------
如果不是双向认证,既clientAuth="false",不用生成客户端密钥,可忽略这一部分
iv.生成客户端密钥,执行以下命令
keytool -genkey -alias casclient -keyalg RSA -keypass changeit -storepass changeit -keystore client.keystore
v.生成客户端证书,执行以下命令
keytool -export -alias casclient -storepass changeit -file client.cer -keystore client.keystore
命令执行后生成一个client.cer的证书文件
vi.导入证书文件到cacerts 文件中,执行以下命令
keytool -import -trustcacerts -alias client -file client.cer -keystore cacerts -storepass changeit
-------------------------------------------------------------------------------------------------
keytool -import -trustcacerts -alias server -file server.cer -keystore cacerts -storepass changeit
把cacerts文件,拷贝到<JAVA_HOME>/jre/lib/security目录下
vii.拷贝cas-server-3.0.6.zip包内的target目录下的cas.war文件到Tomcat目录下的webapps目录下,另外,可以在地址栏键入https://localhost:8443/cas/login,淙隩omcat用户名和密码,看到绿色登陆成功,祝贺你,服务端配置完成了。
viii.修改Tomcat的配置文件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" />
加入红字部份后的内容如下:
<Connector port="8443" maxHttpHeaderSize="8192" keystorePass="changeit" keystoreFile="/server.keystore" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" disableUploadTimeout="true" acceptCount="100" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" />
注意
b)配置客户端应用
i.使用Tomcat的例子servlet-examples来做客户端
ii.打开servlet-examples下的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://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>/servlet/*</url-pattern> </filter-mapping>
拷贝cas-client-java-2.1.1.zip包中的casclient.jar到项目(这里项目名是cas)的lib目录下或Tomcat的common下,现在可以启动Tomcat来,在地址栏输入进入https://localhost:8443/servlets-examples, 点击HelloWorld,就会被自动转发到CAS的登陆页面,输入Tomcat的管理员密码后,登陆,看到HelloWorld就表示单点登陆配置成功。