公司今天一个登陆的地方要修改,需要加一个SSL安全登陆,于是查些资料并总结如下,希望对有用的着的朋友有帮助
文件打包地址:http://www.blogjava.net/Files/lifenote/tomcat配置ssl.rar
一下为帮助说明:

1.1. 安全登录 SSL
1.1.1  WebLogic下面SSL配置:
1.生成 keystoreFile:
 * keystoreFile 文件的生成:
%Java_Home%\bin\keytool -genkey -alias localhost-weblogic -keyalg RSA -validity 365 -keystore ./testKey.jks

 * csr 文件的生成:
%Java_Home%\bin\keytool -certreq -alias localhost-weblogic -sigalg MD5withRSA -file ./testServer.csr -keystore ./testKey.jks

 * 注意: http 的默认端口是80,https 的默认端口是433,ftp 的默认端口是21。
2.部署keystore 文件
在 <http://hostname:7001/console>  中配置刚才生成的 testKey.jks 文件。

1.1.2 Tomcat 下面SSL配置


1.生成 keystoreFile:
 * keystoreFile 文件的生成:
%Java_Home%\bin\keytool -genkey -alias localhost-weblogic -keyalg RSA -validity 365 -keystore ./testKey.jks

Example for inner test:
[root@localhost ~]#
/home/tomcat/jdk1.5.0_12/bin/keytool -genkey -alias localhost-tomcat -keyalg RSA -validity 365 -keystore /home/tomcat/apache-tomcat-5.5.23/conf/VCMarketKey.jks
Enter keystore password:  someday2007
What is your first and last name?
  [Unknown]:  lifenote
What is the name of your organizational unit?
  [Unknown]:  Java
What is the name of your organization?
  [Unknown]:  Sunxc
What is the name of your City or Locality?
  [Unknown]:  Beijing
What is the name of your State or Province?
  [Unknown]:  Beijing
What is the two-letter country code for this unit?
  [Unknown]:  ZH
Is CN=lifenote, OU=Java, O=Sunxc, L=Beijing, ST=Beijing, C=ZH correct?
  [no]:  y

Enter key password for <localhost-tomcat>
        (RETURN if same as keystore password):  someday2007
[root@localhost ~]#

 

 * csr 文件的生成:
%Java_Home%\bin\keytool -certreq -alias localhost-weblogic -sigalg MD5withRSA -file ./testServer.csr -keystore ./testKey.jks

 * 注意: http 的默认端口是80,https 的默认端口是433,ftp 的默认端口是21。


2.部署keystore 文件
  打开 server.xml 文件,修改内容如下:
 
 * 只需去掉 server.xml 中对SSL定义的注释,在加上 keystoreFile、keystorePass 这两个属性即可。
  <Service
      name="Catalina">
    <Connector
        port="8080"
  ...
    </Connector>
   
 <!-- Define a SSL HTTP/1.1 Connector on port 8443 --------------------- 要加入的内容在这里 -->
    <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="e:/temp_E/ssl/testKey.jks"
      keystorePass="aaaaaa"/>

    <Connector
        port="8009"
  ...
    </Connector>
 ...
Example for inner test:
    <Connector port="443" maxHttpHeaderSize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" disableUploadTimeout="true"
               acceptCount="100" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS"
      keystoreFile="/home/tomcat/apache-tomcat-5.5.23/conf/VCMarketKey.jks"
      keystorePass="password"/>


 注意需默认要使用 443 而不是 8443,要使用8443要在apache中配置,保证从apache请求tomcat 采用 <https://ip:8443/>... 的格式。


1.1.3 使用http访问WebService s的客户端配置
Servlet服务器配置好SSL之后,客户端可以使用https访问了。
对于用户使用浏览器访问https的方式,浏览器会弹出安装证书的对话框,确认之后可以正常使用https访问。
 对于WebService 通过https方式访问,按照一下步骤:
1. WebService客户端要先取得keyStore文件;
2. 虚拟机系统使用 System.setProperties(…) 设置keyStore信息;
3. 使用 url=<https://ip:port/...> 访问WebService服务

 

 

posted on 2008-01-15 12:32 LifeNote 阅读(3223) 评论(2)  编辑  收藏 所属分类: JavaHibernateSpringTapestryJavascriptMysqlOracleOthersstrutstomcat
Comments
  • # re: Tomcat,Weblogic 等服务器 SSL 安全登陆的例子---附证书文件生成器
    Jet Mah
    Posted @ 2008-01-15 17:53
    弹对话框吧?  回复  更多评论   
  • # re: Tomcat,Weblogic 等服务器 SSL 安全登陆的例子---附证书文件生成器
    LifeNote
    Posted @ 2008-01-15 17:57
    是弹出来一个安全证书的提示  回复  更多评论   

只有注册用户登录后才能发表评论。


网站导航: