- 配置Tomcat目录 %TOMCAT_HOME%/conf下面的server.
xml文件,在文件中加入如下xml内容:
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true" clientAuth="true" sslProtocol="TLS" keystoreFile="/conf/server.
keystore" keystorePass="changeit" truststoreFile="/conf/server. truststore" truststorePass="changeit"
/>
部分属性语句解释如下:
I.clientAuth="true"表示是否需要验证客户端
身份(即客户端在访问服务的时候需要提供密钥库文件xxx. keystore),true表示需要,false表示不需要, 若选择false,则需去掉语句: truststoreFile="/conf/server. truststore" truststorePass="changeit"
ii.keystoreFile="/conf/
%TOMCAT_HOME%/conf目录下面的文件serve
r.keystore,用来提供给客户端验证服务器端身份key storePass="changeit"则表示该密钥库文件的 密码为changeit
iii. truststoreFile="/conf/server.
truststore"表示服务器端的信任库文件为 %TOMCAT_HOME%/conf目录下面的文件serve r.truststore, 用来表示服务器端所信任的客户端,truststorePass ="changeit"表示该信任库的密码为changeit
若添加的内容中属性选择为clientAuth="false"
,则配置完成后在浏览器输入https:// localhost:8443/axis 则浏览器将提示证书未被信任,点击继续则可查看部署在axis上 的服务
若添加的内容中属性选择为clientAuth="true",
则无法通过直接访问https://localhost: 8443/axis查看部署的服务(因为浏览器未提供密钥库文件 )
2.编写客户端程序访问部署的服务时应注意在运行时以参数的形式
提供给客户端程序密钥库文件和信任库文件, 假如编写的客户端程序为
SSLClient.java访问部署在aixs 上的
SSLClient.java时应以如下形式运行
Java -Djavax.net.ssl.keyStore=
somepath/client.keystore
-Djavax.net.ssl.
keyStorePassword=youpassword
-Djavax.net.ssl.trustStore= somepath/client.trustStore
SSLClient
3.关于如何使用JDK自带工具keytool(位于%JAVA
_HOME%/jdk/bin目录下) 生成上述密钥库和信任库文件
(1)打开命令行转到keytool所在目录,输入命令:
keytool –genkey –alias tomcat –keystore server.keystore –keyalg RSA
按照提示输入相应个人信息,命令执行完成后,
将在当前目录下获得名为server.keystore的密钥库 。
(2)生成客户端的信任库,首先输出RSA证书:
keytool –export –alias tomcat –file test_axis.cer –storepass changeit –keystore server.keystore
然后把RSA证书输入到一个新的信任库文件中,
这个信任库被客户端使用,被用来验证服务器端的身份
keytool–import–file test_axis.cer –storepass changeit –keystore client.truststore –alias serverkey –noprompt
(3)创建客户端密钥库,重复步骤(1)
使用如下命令生成客户端的信任库:
keytool –export –file test_axis.cer –storepass changeit –keystore client.keystore
使用如下命令生成服务器端的信任库:
keytool –import –file test_axis.cer –storepass changeit –keystore server.truststore –alias clientkey –noprompt
说明:该配置方法在jdk1.6+ apache-tomcat-6.0.16上配置成功。
在修改server.xml时,
若直接将该文档中所示内容copy到
server.xml文件则需注意每行末的换行符以及空格符。