Redhat enterprise linux 5
apache-tomcat 6用JAVA自带的keytool申请成功了证书,访问的时候,跳出一个框,显示,认证颁发机构不认可的意思,于是就用生成好的.csr文件去SSL公司申请认证,成功后,发回来4个.crt的文件我现在把这四个文件全部 import 到原来申请的证书文件里,重启tomcat后发现,还是跳出原来的证书,怎么设置都是跳出原来的证书。现在郁闷的不行,在另一台测试的机器上,要把以前申请的证书,用命令全部delete后,才不能访问SSL网页。

解决方案 »

  1.   


    如果是测试的,我可以随便的删除重来,本来这个我也打算重来的,但看到证书里有MD5加密什么的,我想想是不是重做之后和原来的就不一样了,我都认证过的证书就通不过了,我把我的全过程贴上来,这文章是转来的
    --------------------------------------------------------------------------------
      1)生成证书:
      控制台cd到%JAVA_HOME%/jre/lib/security目录下,按以下步骤操作:
      D:\PROGRA~1\Java\jdk1.5.0\jre\lib\security>keytool -genkey -alias tomcat -keyalg RSA
    输入keystore密码:  changeit
    keytool错误: java.lang.Exception: 没有创建键值对,别名 <tomcat> 已经存在D:\PROGRA~1\Java\jdk1.5.0\jre\lib\security>keytool -delete -alias tomcat -keyalg RSA
    输入keystore密码:  changeitD:\PROGRA~1\Java\jdk1.5.0\jre\lib\security>keytool -genkey -alias tomcat -keyalg RSA
    输入keystore密码:  changeit
    您的名字与姓氏是什么?
      [Unknown]:  localhost
    您的组织单位名称是什么?
      [Unknown]:  mycom
    您的组织名称是什么?
      [Unknown]:  mycom
    您所在的城市或区域名称是什么?
      [Unknown]:  zhuzhou
    您所在的州或省份名称是什么?
      [Unknown]:  hunan
    该单位的两字母国家代码是什么
      [Unknown]:  cn
    CN=localhost, OU=mycom, O=mycom, L=zhuzhou, ST=hunan, C=cn 正确吗?
      [否]:  y输入<tomcat>的主密码
            (如果和 keystore 密码相同,按回车):D:\PROGRA~1\Java\jdk1.5.0\jre\lib\security>keytool -export -alias tomcat -keypass changeit  -file casserver.crt
    输入keystore密码:  changeit
    保存在文件中的认证 <casserver.crt>D:\PROGRA~1\Java\jdk1.5.0\jre\lib\security>keytool -import -file casserver.crt -keypass changeit -keystore %JAVA_HOME%/jre/lib/security/cacerts
    输入keystore密码:  changeit
    keytool错误: java.lang.Exception: 认证未输入,别名 <mykey> 已经存在D:\PROGRA~1\Java\jdk1.5.0\jre\lib\security>keytool -delete -alias mykey -keystore %JAVA_HOME%/jre/lib/security/cacerts
    输入keystore密码:  changeitD:\PROGRA~1\Java\jdk1.5.0\jre\lib\security>keytool -import -file casserver.crt -keypass changeit -keystore %JAVA_HOME%/jre/lib/security/cacerts
    输入keystore密码:  changeit
    Owner: CN=localhost, OU=mycom, O=mycom, L=zhuzhou, ST=hunan, C=cn
    发照者: CN=localhost, OU=mycom, O=mycom, L=zhuzhou, ST=hunan, C=cn
    序号: 44f67974
    有效期间: Thu Aug 31 13:53:56 CST 2006 至: Wed Nov 29 13:53:56 CST 2006
    认证指纹:
             MD5:  D2:A8:3A:37:96:36:97:88:42:9E:F8:9A:5B:FB:F5:5E
             SHA1: 91:0E:63:82:25:E8:04:72:5F:8B:0D:6B:39:55:C2:1E:C8:77:F3:CB
    信任这个认证? [否]:  y
    认证已添加至keystore中D:\PROGRA~1\Java\jdk1.5.0\jre\lib\security>keytool -import -file server.crt -keystore /usr/java/jre1.6.0_11/lib/security/cacerts
    输入keystore密码:  changeit
    keytool错误: java.io.FileNotFoundException: server.crt (系统找不到指定的文件。)
    D:\PROGRA~1\Java\jdk1.5.0\jre\lib\security>keytool -import -file casserver.crt -keystore /usr/java/jre1.6.0_11/lib/security/cacerts
    输入keystore密码:  changeit
    keytool错误: java.lang.Exception: 认证未输入,别名 <mykey> 已经存在D:\PROGRA~1\Java\jdk1.5.0\jre\lib\security>生成证书的名称必须为localhost (您的名字与姓氏是什么?)
      2)tomcat中解除ssl的注释,server.xml中找到 Connector port="8443" ... 的语句,解除其原来的注释。
      
    2.安装cas3的server端。将cas.war解压到webapps目录下,拷贝文件acegi-security-1.0.1.jar和acegi-security-cas-1.0.1.jar到目录/cas/WEB-INF/lib下,
    并修改其中的/cas/WEB-INF/deployerConfigContext.xml,将其中的全部内容修改为以下:
    ----------------------------------------------------------------------------------------------
    Tomcat安装CA证书(详细过程篇)  回复:0 阅读:287  2008-02-16 15:46:51  
     
      
    Tomcat安装CA证书(详细过程篇)作者:yellowtop Email: [email protected] 日期:2004-11-26以Verisign 测试证书为例1.创建一个本地证书:C:\j2sdk1.4.2_05\bin>;keytool -genkey -alias tomcat -keyalg RSA -keystore keystore
    输入keystore密码:  12345678
    您的名字与姓氏是什么?
      [Unknown]:  www.test.com
    您的组织单位名称是什么?
      [Unknown]:  system
    您的组织名称是什么?
      [Unknown]:  test
    您所在的城市或区域名称是什么?
      [Unknown]:  beijing
    您所在的州或省份名称是什么?
      [Unknown]:  beijing
    该单位的两字母国家代码是什么
      [Unknown]:  cn
    CN=liujx, OU=system, O=test, L=beijing, ST=beijing, C=cn 正确吗?
      [否]:  y输入<tomcat>;的主密码
            (如果和 keystore 密码相同,按回车):查看证书
    C:\j2sdk1.4.2_05\bin>;keytool -list -keystore keystore
    输入keystore密码:  12345678Keystore 类型: jks
    Keystore 提供者: SUN您的 keystore 包含 1 输入tomcat, 2004-11-26, keyEntry,
    认证指纹 (MD5): B8:44:A1:A2:C7:9A:09:EE:A0:CF:5B:AAC:F7:0F:80
    2.然后创建CSR:C:\j2sdk1.4.2_05\bin>;keytool -certreq -keyalg RSA -alias tomcat -file certreq.csr -keystore keystore输入keystore密码:  12345678--________________________________________________________________________________________-
    ____________________________________________________________________________________________
    经过上面的步骤,我就用认证给我的命令做了下,命令一下Root:
    "keytool -import -alias root -keystore tomcat.keystore -trustcacerts -file valicert_class2_root.crt."
    First intermediate (gd_cross_intermediate.crt):
    "keytool -import -alias cross -keystore tomcat.keystore -trustcacerts -file gd_cross_intermediate.crt"
    Second intermediate (gd_intermediate.crt):
    "keytool -import -alias intermed -keystore tomcat.keystore -trustcacerts -file gd_intermediate.crt"
    Installing SSL Certificate
    i. Use the following command to import the issued certificate into your keystore.
    ii. keytool -import -alias tomcat -keystore tomcat.keystore -trustcacerts -file <name of your certificate>--------------------------------------------------------------------------------------------
    全部做完后,发现失败的
      

  2.   

    怎么把认证过的证书替换旧的(这步我貌似做好了)
    失败的地方可能是 怎么让tomcat 认到这新的,不要去认旧的(我把旧的文件删了都不行)
      

  3.   

    湖南株洲?老乡啊。把jdk重装吧。哈!
      

  4.   

    我用的是linux,没注册表我觉得也是没删干净,我在测试机器上,用删除命令把文件等信息全部情况后,才不能访问的就是不知道怎么替换,不知道那些文件在哪
      

  5.   

    我用 keytool -genkey -alias tomcat -keyalg RSA -keystore keystore 这命令后,产生的keystore拷贝到tomcat所需要的目录,连最基本的框都不跳出来了而我用keytool -genkey -alias tomcat -keyalg RSA 和keytool -export -alias tomcat -keypass changeit  -file casserver.crt 这两条命令,就能跳出框,着实不知道问题出在哪里,高人帮忙