tomcat增加https访问配置方案

上传人:宝路 文档编号:20894044 上传时间:2017-11-22 格式:DOC 页数:22 大小:762.62KB
返回 下载 相关 举报
tomcat增加https访问配置方案_第1页
第1页 / 共22页
tomcat增加https访问配置方案_第2页
第2页 / 共22页
tomcat增加https访问配置方案_第3页
第3页 / 共22页
tomcat增加https访问配置方案_第4页
第4页 / 共22页
tomcat增加https访问配置方案_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《tomcat增加https访问配置方案》由会员分享,可在线阅读,更多相关《tomcat增加https访问配置方案(22页珍藏版)》请在金锄头文库上搜索。

1、客户没有证书,证书自己生成:第一步:为服务器生成证书使用 keytool 为 Tomcat 生成证书,假定目标机器的域名是“ localhost ”, keystore 文件存放在“E:keytomcat.keystore ”,口令为“smartdot123456”,使用如下命令生成:keytool -genkey -v -alias tomcat -keyalg RSA -keysize 2048 -validity 3650 -keystore E:keytomcat.keystore -dname CN=172.20.55.127,OU=cn,O=smartdot,L=cn,ST=cn,

2、c=cn -storepass smartdot123456 -keypass smartdot123456 第二步:生成 csr 文件用于提交 CA 认证生成证书使用 keytool -certReq -alias tomcat -keystore e:keytomcat.keystore -storepass smartdot123456 -file e:keytomcat.csr第三步:这个 tomcat.cer 是为了解决不信任时要导入的 keytool -export -alias tomcat -keystore e:keytomcat.keystore -file e:keyto

3、mcat.cer -storepass smartdot123456第四步:配置 Tomcat 服务器 打开 Tomcat 根目录下的 /conf/server.xml ,找到如下配置段,修改如下: tomcat 7tomcat 6第五步:web.xml 修改应用程序的 web.xml 可以加上这句话: 具体 web 系统 CLIENT-CERT Client Cert Users-only Area SSL /* CONFIDENTIAL 第六步:application.properties 端口访问配置organization.service.url=https:/:8443/organi

4、zation-webapppermission.service.url=https:/:8443/organization-webapppolicy.service.url=https:/:8443/ProcessAdmin到这里启动 tomcat,输入 https:/localhost:8443/ 这时再打开会弹出一个提示框:证书不可信任,有一个警告,说什么需要机构颁发。 这时再双击第一步生成的 tomcat.cer。一直下一步,最后选“ 是”。 导入后,再输入地址就不是提示了。直接转向 tomcat 的猫页,说明成功了。 这时候如果用程序去访问可能还会抛证书不信任的异常(sun.secur

5、ity.validator.ValidatorException: PKIX path building failed. ) ,需要将生成的证书(tomcat.cer ) keytool -import -alias tomcatsso -file E:keytomcat.cer -keystore C:Program FilesJavajdk1.7.0_03jrelibsecuritycacerts -storepass changeit 其中 changeit 是 jre 默认的密码。信任这个认证? 否: y认证已添加至 keystore 中如 拒绝访问使用管理员命令执行如果抛 No su

6、bject alternative names present 请在生成 keystore 注意 CN 必须要为域名(或机器名称)例如 localhost 不能为 IP 如果抛 No name matching localhost found 表示你生成 keystore CN 的名称和你访问的名称不一致客户有证书并根据证书生成 tomcat 证书因我们没有证书,因此使用模拟 OpenSSL 生成 ca 和 server证书OpenSSL 生成客户端和服务证书网上官方网站下载的 OPENSSL 需要手动去改它的盘符和路径OPENSSL 下载地址http:/ openssl.cfg内容中的文件路

7、径 CA_default dir = E:Program Files (x86)OpenSSL-Win32binPEMdemoCAnew_certs_dir = E:keycanewcerts # default place for new certs.新建文件夹 newcertsE:Program Files (x86)OpenSSL-Win32设置环境变量把 c:f 设成 OPENSSL_CONF 这样的一个变量,同时把c:opensslbin 目录加到你的 path 里去(根据你们自己的解压后的 openssl 的实际路径)OPENSSL_CONFE:Program Files (x86

8、)OpenSSL-Win32binopenssl.cfgPATH 增加;E:Program Files (x86)OpenSSL-Win32bin;第一步:生成根证书所用的密钥openssl genrsa -des3 -out E:keycaca.key 1024提示输入密码我们使用:smartdot123456再次输入确认密码(密钥,由其是 private key 是由口令保护的)第二步:去除 CA 密钥的口令openssl rsa -in E:keycaca.key -out E:keycaca.key输入上述命令后,再次输入密码 smartdot123456即可为什么我们要把好好的口令保

9、护给去除呢?这边不是去除而是代表这个证书在被应用程序启动时不需要显示的提示用户输入口令第三步:生成 CA 即 ROOT CA 证书并自签openssl req -new -x509 -key E:keycaca.key -out E:keycaca.crt由于我们产生的证书为:X509 格式,因此需要按照 X509 格式填入相关的值。AU-国家家的缩写,如:CHINA=CN,美国=USA ,英国 =UK,日本=JPState or Province Name-省/洲的缩写或者是全称,如:上海=SHLocality Name-城市的全称或者是缩写,如:上海=SHOrganization Name

10、-公司名,如:CognizantCommon Name-要安装这台证书的主机名,证书是和主机名绑定的,如果证书里的主机名和你实际的主机名不符,这张证书就是非法的证书。我们不能够填 IP,一定一定要填主机名即域名 这样的东西,比如说我填的是 ,但我的主机怎么知道 是指:172.20.95.69 或者说是指 localhost这台机器呢?打开 C:WindowsSystem32driversetchosts 这个文件,如下:localhost 172.20.95.69 Look,我们的 CA 证书生成了,可以双击这张证书,查看信息后关闭它。目前这张 ROOT 证书,只是个自签的产品,因为是自签

11、,一般其它客户端的 IE 里因此是不会带有这张根证书的。要其实客户端也能信任这张根证书,我们必须怎么办?双击证书查看将它安装到我们的 IE 的信任域里。将 ROOT CA 导入客户端的根级信任域,有多少台客户端,每个客户端都要导一边这个证书点导入按钮下一步,下一步,此时会有一个弹出框,选“yes(是)”完成导入。再来打开我们的 ca.crt 文件发现了没有,这张证书是有效的证书了,所以在“证书信息” 前原有的一个红叉叉,消失了。第四步:生成 Web 服务器端证书密钥我们的 root 证书有了,现在可以生成 Web 服务器端的证书了,并且用 root ca 去签名Openssl genrsa -

12、des3 -out E:keycaserver.key 1024先生成密钥,密码 smardot123456执行除去密码命令 openssl rsa -in E:keycaserver.key -out E:keycaserver.key去除密码(提示:enter pass phrase for server.key 时输入刚才生成密钥时的密码即smardot123456第五步:生成 Web 服务器端证书的签名请求openssl req -new -key E:keycaserver.key -out E:keycaserver.csr生成服务器端证书请求时需要输入 server 端 key

13、的口令,我们为了方便,也用 6 个 a。第六步:用 Root CA 去对 Web 服务器的证书请求即 csr(certificate request)进行签名认证openssl ca -in e:keycaserver.csr -out e:keycaserver.crt -cert e:keycaca.crt -keyfile e:keycaca.key使用 ca 和 server 证书生成 tomcat 证书第一步:为服务器生成证书为 Tomcat 的 server 所在的服务器生成一个 server.jks 文件很多网上的资料是拿原先的 server.crt 文件转成 keystore

14、文件,其实是不对的,需要单独生成一张 server.jks 文件。怎么生成证书?回顾一下上文:1) 生成 KEY2) 生成证书请求3) 用 CA 签名使用 keytool 为 Tomcat 生成证书,假定目标机器的域名是“ localhost ”, keystore 文件存放在“E:keycatomcat. keystore ”,口令为“ smartdot123456”,使用如下命令生成:keytool -genkey -v -alias tomcat -keyalg RSA -keysize 1024 -validity 3650 -keystore E:keycatomcat.jks -d

15、name CN=,OU=cn,O=smartdot,L=BJ,ST=cn,c=cn -storepass smartdot123456 第二步:生成 JSK 的 CSRkeytool -certreq -alias tomcat -sigalg MD5withRSA -file E:keycatomcat.csr -keypass smartdot123456 -keystore E:keycatomcat.jks -storepass smartdot123456此处注意:Alias 名必须和上面一致密码和上面一致第三步: 使用 openssl 结合 ca.crt 与 ca.key 为 jsk 的 csr 来签名认证并产生 jks 格式的 crtopenssl x509 -req -in E:keycatomcat.csr -out E:keycatomcat.crt -CA E:keyc

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号