现在的位置: 首页 > 综合 > 正文

web service的客户端怎么启用ssl

2012年08月10日 ⁄ 综合 ⁄ 共 3760字 ⁄ 字号 评论关闭
转于:

 

 

我把webservice的服务端以Axis形式发布的,但是我的tomcat配置支持SSL了,如下: 
二、配置步骤 
2.1  建立自己的CA证书(假设openssl安装到了c:/openssl) 
1.在适当的地方建立自己的CA目录,例如:ca 
2. 我的电脑-〉右键-〉属性-〉高级-〉环境变量-〉新建->administrator用户变量-〉变量名:OPENSSL_CONF->变量值:C:/openssl/ssl/openssl.cnf 
2.生成CA密钥 
openssl genrsa -out ca/ca-key.pem 1024 
genrsa [产生密钥命令] –out[密钥文件输出路径] 1024 [密钥位数] 
3.生成待签名的证书 
openssl req -new -out ca/ca-req.csr -key ca/ca-key.pem 
req[产生证书命令]-new[新生成]-out[证书文件输出路径]-key[私钥文件路径] 
4.用CA私钥自签名 
openssl x509 -req -in ca/ca-req.csr -out ca/ca-cert.pem -signkey ca/ca-key.pem -days 365 
x509[签发x509证书命令]-req[输入待签发证书]-in[输入待签发证书文件路径]-out[产生x509证书文件输出路径]-signkey[自签发密钥文件路径]-days[证书有效期]–CA[签发跟证书]-Cakey[根证书密钥文件] –-CAcreateserial[创建序列号] 
2.2  配置Tomcat 4.X 
2.2.1建立服务器证书 
[注] 在本文中用符号"%JDK_HOME%"来表示JDK的安装位置,用符号"%TCAT_HOME%" 表示Tomcat的安装位置。 
1.建立工作目录 
在目录下建立自己的server目录,例如:server 
2.生成server密钥对 
C:/j2sdk1.4.1_01/bin/keytool -genkey -alias tomcat -validity 365 -keyalg RSA -keysize 1024 -keystore server/server_keystore 
   -genkey[产生密钥对]-alias[密钥对别名]-validity[密钥有效期]-keyalg[密钥算法参数]-keysize[密钥位数]-keypass[密钥保护密码]-storepass[存储密码]-dname[别名相关附加信息]-keystore[密钥存储文件路径] 
[注]  -alias后的tomcat是密钥对的名字可替换为自己需要的名字; 
-keypass与-storepass后的密码为保护密码必须6位; 
其中cn是服务器的名字一定要与WEB服务器中设置的一样。 
3.生成待签名证书 
C:/j2sdk1.4.1_01/bin/keytool -certreq -alias tomcat -sigalg MD5withRSA -file server/server.csr -keypass allcom -keystore server/server_keystore -storepass allcom 
-certreq[产生待签名证书]-alias[证书别名]-sigalg[证书算法参数]-file [产生文件输出路径]-keypass[密钥保护密码]-keystore[存储文件路径]-storepass[存储密码] 
4.拷贝C:/openssl/apps/ca-cert.srl文件到ca目录 
5.用CA私钥签名 
openssl x509 -req -in server/server.csr -out server/server-cert.pem -CA ca/ca-cert.pem -CAkey ca/ca-key.pem -days 365 
2.2.2将CA根证书和服务器证书导入Tomcat 
1. 导入CA根证书 
C:/j2sdk1.4.1_01/bin/keytool -import -v -trustcacerts -storepass allcom -alias allcom_ca_root -file ca/ca-cert.pem -keystore server/cacerts 
-import[导入命令] -v–trustcacerts[导入信任证书] –storepass[存储密码]-alias[证书别名]-file[证书文件路径]-keystore[导入文件路径]-alias为CA根证书的别名。 
2.拷贝cacerts文件到C:/j2sdk1.4.1_01/jre/lib/security目录 
3.导入服务器证书 
C:/j2sdk1.4.1_01/bin/keytool -import -v -trustcacerts -storepass allcom -alias tomcat -file server/server-cert.pem -keystore server/server_keystore 
[注] 此时的-storepass为生成证书时输入密码。-alias为服务器证书的别名。 
4.查看证书 
查看CA证书 
C:/j2sdk1.4.1_01/bin/keytool -list -keystore server/cacerts 
查看服务器证书 
C:/j2sdk1.4.1_01/bin/keytool -list -keystore server/server_keystore 
2.2.3修改Tomcat的配置文件 
1.把文件server/ server_keystore复制到目录%TCAT_HOME%/conf下 
2.修改conf目录下server.xml文件找到以下内容去掉其注释并修改。 
<!-- Define an SSL HTTP/1.1 Connector on port 8443 --> 
    <Connector className="org.apache.catalina.connector.http.HttpConnector" 
               port="8443" minProcessors="5" maxProcessors="75" 
               enableLookups="false" 
               acceptCount="10" debug="0" scheme="https" secure="true"> 
      <Factory className="org.apache.catalina.net.SSLServerSocketFactory" 
               clientAuth="true" protocol="TLS" 
keystoreFile="c:/tomcat 4.0.6/conf/server_keystore" keystorePass="allcom"/> 
    </Connector> 
2.3  配置IE客户端 
2.3.1建立Client证书 
1.建立自己的Client目录,例如:client 
2.生成Client密钥对 
openssl genrsa -out client/client-key.pem 1024 
3.生成待签名的证书 
openssl req -new -out client/client-req.csr -key client/client-key.pem 
4.用CA私钥签名 
openssl x509 -req -in client/client-req.csr -out client/client-cert.pem -signkey client/client-key.pem -CA ca/ca-cert.pem -CAkey ca/ca-key.pem -CAcreateserial -days 365 
5.生成Client端可以导入的个人证书 
openssl pkcs12 -export -clcerts -in client/client-cert.pem -inkey client/client-key.pem -out client/client.p12 
pkcs12[生成PKS12格式证书命令]-export[导出文件]-clerts[仅导出client证书]-in[输入的client证书文件路径]-inkey[client证书密钥文件路径]-out[导出PKS12格式文件路径] 
2.3.2将CA证书与client证书导入IE 
1. 导入CA根证书 
将目录ca中的ca-cert.pem改名为ca-cert.cer; 
在client端的IE中使用<工具>,< Internet选项>,<内容>,<证书>,<导入>,把我们生成的CA根证书导入,使其成为用户信任的CA。 
2. 导入client证书 
将client证书(client.p12)导入到client端的IE中作为client证书,导入过程同上 
我想知道webservice的客户端怎么启用ssl与服务端建立连接啊? 
我现在在客户端也用服务端的证书可以建立连接,不知道这样做对吗? 
对于web service和ssl我刚学,请大家给出意见 

抱歉!评论已关闭.