您的位置:首页 > 理论基础 > 计算机网络

【试水CAS-4.0.3】第06节_CAS服务端配置HTTPS

2015-07-26 10:34 696 查看
/**
 * @see CAS服务端配置HTTPS
 * @see ------------------------------------------------------------------------------------------------------------------------
 * @see 1.生成KeyStore
 * @see   1.1.D:\>keytool -genkey -alias XuanyuKeyStore -keyalg RSA -validity 1024 -keystore D:/keys/XuanyuKey
 * @see       -genkey   表示生成密钥
 * @see       -alias    指定别名,这里是XuanyuKeyStore
 * @see       -keyalg   指定算法,这里是RSA
 * @see       -validity 指定证书有效期,这里是1024天
 * @see       -keystore 指定生成的KeyStore文件名和路径,这里是D:/keys/XuanyuKey
 * @see   1.2.CMD输出-->输入密钥库口令:xuanyu75(以前叫做'输入keystore密码')
 * @see                 再次输入新密码:xuanyu75
 * @see                 您的名字与姓氏是什么?[Unknown]:sso.jadyer.com(单点服务器域名:要根据实际情况填写域名,否则会导致证书上的名称无效)
 * @see                 您的组织单位名称是什么?[Unknown]:http://blog.csdn.net/jadyer
 * @see                 您的组织名称是什么?[Unknown]:JavaLover_Jadyer
 * @see                 您所在的城市或区域名称是什么?[Unknown]:重庆
 * @see                 您所在的州或省份名称是什么?[Unknown]:江北区
 * @see                 该单位的两字母国家代码是什么[Unknown]:ZH
 * @see                 CN=sso.jadyer.com, OU=http://blog.csdn.net/jadyer, O=JavaLover_Jadyer, L=重庆,ST=江北区,C=ZH 正确吗?[否]:y
 * @see                 输入<XuanyuKeyStore>的主密码(如果和 keystore 密码相同,按回车):这里按回车键
 * @see                 (这里的主密码一定要与keystore密码相同,否则启动Tomcat时就会告诉你java.io.IOException: Cannot recover key)
 * @see   1.3.接下来生成了D:/keys/XuanyuKey文件
 * @see ------------------------------------------------------------------------------------------------------------------------
 * @see 2.导出证书
 * @see   2.1.D:\>keytool -export -file D:/keys/Xuanyu.crt -alias XuanyuKeyStore -keystore D:/keys/XuanyuKey
 * @see       -alias需要输入生成KeyStore时用的别名,否则会提示'keytool 错误: java.lang.Exception: 别名 <XuanyuCRT> 不存在'
 * @see       输入密钥库口令应输入生成KeyStore时设置的口令
 * @see       导入成功后控制台会打印'存储在文件 <D:/keys/Xuanyu.crt> 中的证书'
 * @see   2.2.当浏览器访问单点客户端时,首次会跳到CAS服务端登录页面,这时浏览器会先询问用户,这是一个未知SSL的请求,是否继续
 * @see       如果把CRT证书导入到浏览器中,就不会看到这个询问页面了,下面是导入CRT到浏览器的步骤
 * @see        双击Xuanyu.crt-->安装证书-->下一步-->将所有的证书放入下列存储-->浏览-->受信任的根证书颁发机构-->下一步-->完成
 * @see        这时会弹出对话框'您即将从一个声称代表如下的证书颁发机构安装证书:sso.jadyer.com......确认安装此证书吗'-->是-->导入成功-->确定
 * @see ------------------------------------------------------------------------------------------------------------------------
 * @see 3.导入证书到JVM
 * @see   3.1.D:\>keytool -import -keystore D:\Develop\Java\jdk1.7.0_76\jre\lib\security\cacerts -file D:/keys/Xuanyu.crt -alias XuanyuKeyStore
 * @see           输入密钥库口令:xuanyu75
 * @see           所有者: CN=sso.jadyer.com, OU=http://blog.csdn.net/jadyer, O=JavaLover_Jadyer, L=重庆, ST=江北区, C=ZH
 * @see           发布者: CN=sso.jadyer.com, OU=http://blog.csdn.net/jadyer, O=JavaLover_Jadyer, L=重庆, ST=江北区, C=ZH
 * @see           序列号: 5149ee5a
 * @see           有效期开始日期: Fri Jul 24 15:21:24 CST 2015, 截止日期: Sun May 13 15:21:24 CST 2018
 * @see           证书指纹:
 * @see                    MD5: 84:E1:92:ED:71:49:D4:D5:94:CB:AB:35:BB:01:81:0B
 * @see                    SHA1: A0:1E:BD:CE:8B:DB:F3:7E:2C:ED:7A:9A:5D:72:41:3C:1D:28:D1:2A
 * @see                    SHA256: B2:90:99:8D:29:BA:87:48:AE:3A:D8:E2:AD:8E:9E:F3:1B:95:FF:65:29:
 * @see           48:BD:EB:C4:29:14:9E:69:86:B1:D6
 * @see                    签名算法名称: SHA256withRSA
 * @see                    版本: 3
 * @see           
 * @see           扩展:
 * @see           
 * @see           #1: ObjectId: 2.5.29.14 Criticality=false
 * @see           SubjectKeyIdentifier [
 * @see           KeyIdentifier [
 * @see           0000: 9C 46 74 89 5B AA 10 52   24 4C 7B F3 49 66 CD 81  .Ft.[..R$L..If..
 * @see           0010: F4 A9 E5 22                                        ..."
 * @see           ]
 * @see           ]
 * @see           
 * @see           是否信任此证书? [否]:  y
 * @see           证书已添加到密钥库中
 * @see   注意在输入密钥口令后若提示'keytool 错误: java.io.IOException: Keystore was tampered with, or password was incorrect'
 * @see   那就换个密码,输入'changeit'就行了
 * @see ------------------------------------------------------------------------------------------------------------------------
 * @see 4.应用证书到Tomcat-8.0.21
 * @see   4.1.拷贝生成的D:/keys/XuanyuKey到\\%TOMCAT_HOME%\\conf\\目录中(其它目录也可以)
 * @see   4.2.server.xml
 * @see       <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
 * @see                  maxThreads="150" scheme="https" secure="true"
 * @see                  clientAuth="false" sslProtocol="TLS" URIEncoding="UTF-8"
 * @see                  keystoreFile="conf/XuanyuKey" keystorePass="xuanyu75"/>
 * @see   4.3.浏览器访问https://127.0.0.1:8443/blog会发现你的应用已经处于SSL安全通道中了
 * @see   4.4.但此时访问http://127.0.0.1:8080/blog会发现也能访问
 * @see       也就是说,我们虽然启用了HTTPS,但现在还可以绕开HTTPS直接HTTP访问,如此HTTPS也就起不到作用了
 * @see       修改\\%TOMCAT_HOME%\\conf\\web.xml文件,尾部<welcome-file-list>标签后加入下面的内容即可
 * @see       <security-constraint>
 * @see           <!-- Authorization setting for SSL -->
 * @see           <web-resource-collection>
 * @see               <web-resource-name>SSL_App</web-resource-name>
 * @see               <!-- 指明需要SSL的url -->
 * @see               <url-pattern>/*</url-pattern>
 * @see               <http-method>GET</http-method>
 * @see               <http-method>POST</http-method>
 * @see           </web-resource-collection>
 * @see           <user-data-constraint>
 * @see               <!-- 指明需要SSL -->
 * @see               <transport-guarantee>CONFIDENTIAL</transport-guarantee>
 * @see           </user-data-constraint>
 * @see       </security-constraint>
 * @see ------------------------------------------------------------------------------------------------------------------------
 * @see 你也可以申请免费的StartSSL CA证书: StartSSL(公司名:StartCom)也是一家CA机构
 * @see 它的根证书很久之前就被一些具有开源背景的浏览器支持(Firefox/Chrome/Safari等)
 * @see 申请地址:http://www.startssl.com
 * @see 申请参考:http://www.linuxidc.com/Linux/2011-11/47478.htm
 * @see ------------------------------------------------------------------------------------------------------------------------
 * @create 2015-7-26 上午10:32:25
 * @author 玄玉<http://blog.csdn.net/jadyer>
 */
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: