一、生成代码--》在服务端执行
     keytool -genkey -alias castest -keypass cas123 -keyalg RSA -keystore casserver.keystore -validity 365
     -alias指定别名为casserver;
     -keyalg指定RSA算法;
     -keypass指定私钥密码;
     -keystore指定密钥文件名称为casserver.keystore;
     -validity指定有效期为365天。
     另外提示输入密匙库口令应与-keypass指定的cas123相同;您的名字与姓氏fron.com是CAS服务器使用的域名(不能是IP,也不能是localhost),其它项随意填。      * 姓氏rquest.sso.cas,单位rquest测试口令123456,组织rquest,区域shanghai,国家代码CN,
 二、导出-->将生成的证书导出
 keytool -export -alias castest -storepass 123456 -file casserver.cer -keystore casserver.keystore    说明:
     -alias指定别名为casserver;
     -storepass指定私钥为liuqizhi;
     -file指定导出证书的文件名为casserver.cer;
     -keystore指定之前生成的密钥文件的文件名。
     注意:-alias和-storepass必须为生成casserver.keystore密钥文件时所指定的别名和密码,否则证书导出失败三.导入证书文件到cacerts 密钥库文件
  接下来就是把上面生成的服务器的证书casserver.cer导入到cacerts密钥库文件中(后面的客户端会用到这些)    keytool -import -trustcacerts -alias castest -storepass cas123 -file casserver.cer –keystore cacerts
    =====以下为打印内容==========
     c:\Program Files\Java\jdk1.8.0_45\bin>keytool -import -trustcacerts -alias castest -storepass cas123 -file casserver.cer -keystore cacerts
     所有者: CN=rquest.sso.cas, OU=rquest, O=rquest, L=shanghai, ST=shanghai, C=cn
     发布者: CN=rquest.sso.cas, OU=rquest, O=rquest, L=shanghai, ST=shanghai, C=cn
     序列号: 18870d2e
     有效期开始日期: Wed Jun 21 11:20:20 CST 2017, 截止日期: Thu Jun 21 11:20:20 CST 2018
     证书指纹:
              MD5: 03:75:A4:34:05:BB:11:95:3C:1B:89:C7:01:CE:5F:7F
              SHA1: B5:D2:C1:F0:90:A8:D0:BA:F4:97:D1:6F:6A:9B:0A:B0:1F:15:56:13
              SHA256: 88:65:95:F2:66:79:F3:BA:58:55:48:F5:F6:E1:DB:EA:4A:26:FE:1F:F3:E3:C2:87:F5:91:B2:DE:49:53:AB:45
              签名算法名称: SHA256withRSA
              版本: 3    扩展:
    #1: ObjectId: 2.5.29.14 Criticality=false
     SubjectKeyIdentifier [
     KeyIdentifier [
     0000: 94 64 90 BF 59 57 AE FD   14 13 5B B8 B4 F4 9F B1  .d..YW....[.....
     0010: 36 68 A3 CE                                        6h..
     ]
     ]    是否信任此证书? [否]:  y
     证书已添加到密钥库中
 四、服务端Tomcat配置
     在制作完成密钥文件、证书文件、密钥库文件后即可进行服务端Tomcat的配置。打开$CATALINA_HOME/conf/server.xml<!--keystoreFile 生成的安全证书的位置--> 
<!--keystorePass设置安全证书的密码-->
<Connector protocol="HTTP/1.1" SSLEnabled="true"
         maxThreads="150" scheme="https" secure="true"
         clientAuth="false"
         sslProtocol="TLS"
         keystoreFile="D:\server\tomcat-7.0.55\casserver.keystore"  
         keystorePass="cas123"   
         port="443"   />
    说明:
    port一般为8443或443,最常用的是443端口(https默认端口),
     这样https方式访问的时候可以不加端口号(如:https://sso.demo.com/cas/login);
     keystoreFile为tomcat目录下的密钥文件;
     keystorePass为私钥密码;truststoreFile为生成的信任文件,
     如果此处不指定则默认为$JAVA_HOME/jre/lib/security/cacerts文件;其它属性默认即可。
     
 五、生成客户端密钥库文件
     单向认证的客户端配置只需生成客户端信任文件caserts即可。
     首先将服务端生成的证书文件(之前生成的casserver.cer文件)复制到$JAVA_HOME/jre/lib/security下,
     然后打开CMD窗口切换到$JAVA_HOME/jre/lib/security下并执行命令:
     
     keytool -import -trustcacerts -alias casclient -storepass changeit -file casserver.cer -keystore cacerts
     命令执行成功后JDK目录/jre/lib/security下多出cacerts文件。
         
 六、客户端应用配置
     TOMCAT修改
     tomcat\conf\ server.xml 修改片断
     <!--keystoreFile 生成的安全证书的位置--> 
     <!--keystorePass设置安全证书的密码-->
     <Connector protocol="HTTP/1.1" SSLEnabled="true"
     maxThreads="150" scheme="https" secure="true"
     clientAuth="false"
     sslProtocol="TLS"   
     keystoreFile="D:\server\tomcat-7.0.55\casserver.keystore"  
     keystorePass="cas123"   
     port="443"/>
 7.常见配置错误
 1)keytool 生成安全证书不能使用IP地址 一律使用域名
 2)务必确认客户端程序使用JDK 路径正确 分清楚JDK、JRE