jdk生成https证书

最近由于客户现场做“等保”,其中有一条要求我们必须使用https进行web端的请求,之前我们一直沿用的是默认的http请求,用户说不安全,唉~~局域网,一直强调安全,安全,话不多说了

我采用的使用JAVA自带的keytool生成证书,但是该方法生成的证书不是有效证书,不被浏览器信任,如果是被信任的站点,浏览器左侧会有个绿色的图标,但是这种方法简单,本地就可以轻松测试。

要想使用https,首先,我们需要有SSL证书,证书可以通过两个渠道获得:

公开可信认证机构
例如CA,但是申请一般是收费的,一般几百到几千一年.
自己生成
虽然安全性不是那么高,但胜在成本低.
目前证书有以下常用文件格式:JKS(.keystore),微软(.pfx),PEM(.key + .crt)。其中,tomcat使用JKS格式,nginx使用PEM格式.这里用JKS做示例
生成JKS证书
打开命令行输入keytool -genkey -v -alias testKey -keyalg RSA -validity 3650 -keystore D:\apache-tomcat-7.0.26\keys\test.keystore
alias: 别名 这里起名keys
keyalg: 证书算法,RSA
validity:证书有效时间,10年
keystore:证书生成的目标路径和文件名,替换成你自己的路径即可,我定义的是D:\apache-tomcat-7.0.26\keys\test.keystore,其中keys文件夹必须存在

回车,然后会让你输入一些信息,其中秘钥库口令和秘要口令最好输入同一个,并且记下这个口令,(配置tomcat会用到该口令)其他的可随意填
Tomcat配置Https
打开tomcat下的conf目录下的server.xml文件,搜寻https即可定位到相应的组件,完整的配置如下:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol"
               maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" keystoreFile="你的keystore路径" keystorePass="生成证书时的口令"  />


网址输入https://127.0.0.1:8443可正常访问,但是会发现http://127.0.0.1:8080也可以正常访问但是并没有跳转到https协议,这里我们做如下配置
在web.xml末尾加上如下配置:

<security-constraint>

<web-resource-collection >

<web-resource-name >SSL</web-resource-name>

<url-pattern>/*</url-pattern>

</web-resource-collection>

<user-data-constraint>

<transport-guarantee>CONFIDENTIAL</transport-guarantee>

</user-data-constraint>

</security-constraint>

原文地址:https://www.cnblogs.com/pengpengzhang/p/10112579.html

时间: 2024-07-31 23:00:49

jdk生成https证书的相关文章

ubuntu 生成https证书 for let&#39;s encrypt

1.安装certbot(用于自动续约证书) # 添加安装源 sudo add-apt-repository ppa:certbot/certbot # 更新apt安装源 sudo apt-get update # 安装 sudo apt-get install python-certbot-apache 2.安装letsencrypt并生成证书 # 安装 letsencrypt sudo apt-get install letsencrypt # 生成证书 # letsencrypt certo

免费生成https证书以及配置

http升级到https需要在nginx的配置中加入证书信息,查询资料后确定生成证书两种方案 第一种:自签名证书,然后开启 CloudFlare 的 CDN 服务 //确定是否安装openssl which openssl //如果没有安装,通过apt-get或者yum等方式安装即可 sudo apt-get install openssl //生成一个名为“ssl.key”的 RSA key文件:执行结果:生成ssl.pass.key 和 ssl.key openssl genrsa -des

openssl生成https证书、转换证书格式的各种相关操作

第一步:生成 private key.csr等文件 我们可能需要输入以下信息(交互式): --- Country Name (2 letter code) [AU]:US State or Province Name (full name) [Some-State]:New York Locality Name (eg, city) []:Brooklyn Organization Name (eg, company) [Internet Widgits Pty Ltd]:Example Bro

jdk生成CA证书

前言: JKS文件是一个Java中的密钥管理库. JKS文件就好像一个仓库,里面可以放很多的东西,这里只存放一类东西就是密钥,仓库当然会有一把锁,防范别人随便乱拿,这个就是JKS文件的密码.里面存放的密钥也各有不同,每个密钥都有一个名字(在下面叫别名),一类就密钥对,一类叫公钥,一类叫私钥,密钥对就是包含公钥和私钥的.这里的公钥只要你能进入仓库你就可以随便查看拿走,私钥则是有密码的,只允许有权限的人查看拿走. Keytool 是一个JAVA环境下的安全钥匙与证书的管理工具,Keytool将密钥(

openssl生成https证书 (转)

1.首先要生成服务器端的私钥(key文件):openssl genrsa -des3 -out server.key 1024运行时会提示输入密码,此密码用于加密key文件去除key文件口令的命令:openssl rsa -in server.key -out server.key 2.openssl req -new -key server.key -out server.csr -config openssl.cfg生成Certificate Signing Request(CSR),生成的

自制Https证书并在Spring Boot和Nginx中使用(转)

白话Https一文中, 介绍了Https存在的目的和工作原理,但多是偏向于原理性的介绍,本文介绍如何一步一步自制一个能够通过浏览器认证的Https证书,并讲解在Spring Boot环境和Nginx环境中服务器端的配置. 如果你还没有读过白话Https,我强烈建议你先去读一下.按照白话Https中的介绍,Https协议涉及到的主体主要有三个:客户端.服务端.以及CA机构.如下图所示: 在白话Https一文中,曾介绍一个服务要申请使用Https的流程.本文所介绍的流程,针对自制Https证书,更多

HTTPS证书生成原理和部署细节

今天摸索了下 HTTPS 的证书生成,以及它在 Nginx 上的部署.由于博客托管在 github 上,没办法部署证书,先记录下,后续有需要方便快捷操作.本文的阐述不一定完善,但是可以让一个初学者了解大致的原理,同时跟着操作可以为自己的博客/网站部署一个 HTTPS 证书. 网站部署 HTTPS 的重要性 看看下面,部分电信用户访问京东首页的时候,会看到右下角有一个浮动广告: 小白用户以为是京东有意放置的,细心的用户会发现,这个 iframe 一层嵌一层的恶心广告很明显是电信/中间人通过 DNS

let&#39;s encrypt生成免费https证书 ubuntu+tomcat+nginx+let&#39;s encrypt

1. 下载let's encrypt $ sudo add-apt-repository ppa:certbot/certbot $ sudo apt-get update $ sudo apt-get install certbot 2. 生成密钥,调用之前需要停止nginx certbot certonly --standalone -d www.域名1.com -d www.域名2.com 生成成功,提示如下 IMPORTANT NOTES: - Congratulations! Your

[svc]HTTPS证书生成原理和部署细节

参考: http://blog.csdn.net/iiiiher/article/details/72356901 今天摸索了下 HTTPS 的证书生成,以及它在 Nginx 上的部署.由于博客托管在 github 上,没办法部署证书,先记录下,后续有需要方便快捷操作.本文的阐述不一定完善,但是可以让一个初学者了解大致的原理,同时跟着操作可以为自己的博客/网站部署一个 HTTPS 证书. 网站部署 HTTPS 的重要性 看看下面,部分电信用户访问京东首页的时候,会看到右下角有一个浮动广告: 小白