未配置证书的访问:
 
生成证书:
 
Keytool:
 
生成数字证书:自签名X509证书
PS F:\开发工具\apache-tomcat-9.0.11\conf> keytool -genkeypair -keyalg RSA -keysize 2048 -sigalg SHA1withRSA -validity 36
000 -alias org.windwant.com -keystore windwant.store
输入密钥库口令:
再次输入新口令:
您的名字与姓氏是什么?
  [Unknown]:  org.windwant.com
您的组织单位名称是什么?
  [Unknown]:  ca
您的组织名称是什么?
  [Unknown]:  ca
您所在的城市或区域名称是什么?
  [Unknown]:  ca
您所在的省/市/自治区名称是什么?
  [Unknown]:  ca
该单位的双字母国家/地区代码是什么?
  [Unknown]:  ca
CN=org.windwant.com, OU=ca, O=ca, L=ca, ST=ca, C=ca是否正确?
  [否]:  y
 
输入 <org.windwant.com> 的密钥口令
        (如果和密钥库口令相同, 按回车):
再次输入新口令:
genkeypair:生成秘钥;keyalg:秘钥算法;keysize:秘钥长度;sigalg:数字签名算法;validity:有效期;alias:别名;keystore:存储位置
 
注意:标黑位置,证书授予者使用的域名或ip,如访问使用:https://org.windwant.com:8443
     
          org.windwant.com 需要在host文件里进行配置;127.0.0.1 org.windwant.com
 
导出:
PS F:\开发工具\apache-tomcat-9.0.11\conf> keytool -exportcert -alias org.windwant.com -keystore windwant.store -file win
dwant.cer -rfc
输入密钥库口令:
存储在文件 <windwant.cer> 中的证书
 
openssl:
 
创建随机数:
[root@zookeeper cert]# openssl rand -out private/.rand 1000
 
生成私钥:
[root@zookeeper cert]# openssl genrsa -aes256 -out private/ca.key.pem 2048
openssl使用PEM编码格式(privacy enbanced mail)存储私钥;genrsa:生成RSA私钥;aes256:使用aes(256位秘钥)对私钥加密
 
根证书签发申请:
[root@zookeeper cert]# openssl req -new -key private/ca.key.pem -out private/ca.csr
...
Country Name (2 letter code) [XX]:cn
State or Province Name (full name) []:bj
Locality Name (eg, city) [Default City]:bj
Organization Name (eg, company) [Default Company Ltd]:localhost
Organizational Unit Name (eg, section) []:localhost
Common Name (eg, your name or your server's hostname) []:localhost
Email Address []:localhost
...
req:产生证书签发申请命令;new:新请求;key:秘钥;
 
localhost:证书授予者使用的域名或ip
 
签发根证书:
[root@zookeeper cert]# openssl x509 -req -days 10000 -sha1 -extfile /etc/pki/tls/openssl.cnf -extensions v3_ca -signkey private/ca.key.pem -in private/ca.csr  -out certs/ca.cer
x509:签发x509格式证书命令;req:证书输入请求;days:有效期;sha1:证书摘要算法;extfile:配置文件;extensions:添加扩展 使用v3_ca扩展;signkey:自签名秘钥;in:签发申请文件;out:证书文件
 
秘钥库使用两种方式:
 
>1 证书转换为pkcs12(个人信息交换文件)格式,可以作为秘钥库或者信任库使用: tomcat配置keystoreFile="conf/ca.p12"
[root@zookeeper cert]# openssl pkcs12 -export -cacerts -inkey private/ca.key.pem  -in certs/ca.cer -out certs/ca.p12
[root@zookeeper cert]# keytool -list -keystore certs/ca.p12   //查看秘钥库信息
Enter keystore password:  
 
Keystore type: JKS
Keystore provider: SUN
 
Your keystore contains 1 entry
 
1, Aug 28, 2018, PrivateKeyEntry,
Certificate fingerprint (SHA1): A9:34:42:EE:AC:9C:06:E0:2B:AF:91:64:20:7F:10:FB:0A:40:07:DD
 
>2 生成keystore:tomcat配置keystoreFile="conf/ca.store"
[root@zookeeper cert]# keytool -genkey -keystore ca.store
[root@zookeeper cert]# keytool -list -keystore .\windwant.store  //查看秘钥库信息
输入密钥库口令:
 
密钥库类型: JKS
密钥库提供方: SUN
 
您的密钥库包含 1 个条目
 
org.windwant.com, 2018-8-28, PrivateKeyEntry,
证书指纹 (SHA1): CE:CD:6B:07:29:19:77:B1:2B:B6:4C:6B:1E:B5:76:C7:42:E3:08:14
 
导入openssl生成的证书:
[root@zookeeper cert]# keytool -importcert -trustcacerts -alias localhost -file ca.cer -keystore ca.store
 
配置tomcat:
 
对于端口8443 添加如下配置:秘钥库路径,密码
    <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
               maxThreads="150" SSLEnabled="true" sslProtocal="TLS" keystoreFile="conf/windwant.store" keystorePass="123456">
        <!-- <SSLHostConfig>
            <Certificate certificateKeystoreFile="D:/tmp/cert/windwant.cer"
                         type="RSA" />
        </SSLHostConfig> -->
    </Connector>
 
浏览器导入证书:
 
注意:添加到受信任的根证书颁发机构
 
访问:不再提示证书问题
 

tomcat配置https | 自签发证书配置的更多相关文章

  1. 用tomcat配置https自签名证书,解决 ios7.1以上系统, 苹果inHouse发布

    用tomcat配置https自签名证书,解决 ios7.1以上系统苹果inHouse发布不能下载安装的问题教程,话说,我其实最讨厌配置某某环境了,因为某一个小环节一旦出错,你的所有工作往往会功亏一篑, ...

  2. Ubuntu下apache2安装配置(内含数字证书配置)

    Ubuntu下apache2安装配置(内含数字证书配置)安装命令:sudo apt-get updatesudo apt-get install apache2 配置1.查看apache2安装目录命令 ...

  3. Tomcat启用HTTPS(生成证书、配置Tomcatserver)

    Windows下的配置: 第一步:为server生成证书 使用keytool 为 Tomcat 生成证书.假定目标机器的域名是" localhost ". keystore 文件存 ...

  4. Nginx https免费SSL证书配置指南

    生成证书 $ cd /usr/local/nginx/conf $ openssl genrsa -des3 -out server.key 1024 $ openssl req -new -key  ...

  5. Nginx 配置HTTPS 与Node.js 配置HTTPS方法

    前段时间公司网站要求加上HTTPS安全CA证书,公司服务器全是阿里云服务器,并且配有负载均衡,所以选择直接在阿里云购买CA证书,阿里云有一种证书可以免费试用一年,决定申请此证书,阿里云证书需要验证,阿 ...

  6. HTTPS的SSL证书配置

    SSL证书 TOMCAT7.0部署_百度经验https://jingyan.baidu.com/article/7082dc1c65066be40a89bda8.html SSL证书安装指引 - 青春 ...

  7. Nginx 配置 HTTPS自签名证书

    工具: OpenSSL ssl的开源实现,几乎实现了市面上所有的加密 libcrypto: 通用加密库, 任何软件要实现加密功能 链接调用这个库 libssl: TLS/SSL 加密库 openssl ...

  8. tomcat支持https的server.xml配置

    访问地址:https://127.0.0.1/testWeb/mySevlet?url=123&action=aaa server.xml: <?xml version='1.0' en ...

  9. Java调用HTTPS接口的证书配置

    首先需要获取到证书文件. 然后,将证书导入到本地: keytool -import -noprompt -trustcacerts -alias <AliasName> -file < ...

随机推荐

  1. Tomcat中日志组件

    Tomcat日志组件 AccessLog接口 public interface AccessLog { public void log(Request request, Response respon ...

  2. 模块XXXX可能与您正在运行的Windows版本不兼容。检查该模块是否与regsvr32.exe的x86(32位)x64(64位)版本兼容。

    最近自己在编写ActiveX控件.遇到的麻烦事不少. 今天遇到了这个问题“模块XXXX可能与您正在运行的Windows版本不兼容.检查该模块是否与regsvr32.exe的x86(32位)x64(64 ...

  3. C#利用反射动态创建对象 带参数的构造函数和String类型 (转载)

    最近笔者有一个想法需要利用反射动态创建对象(如string,int,float,bool,以及自定义类等)来实现,一直感觉反射用不好,特别是当构造函数带参数的时候.MSDN上给出的例子十分复杂,网上的 ...

  4. C++练习 | 递归判断二叉树是否同构

    #include <iostream> using namespace std; struct Tree { int data; Tree *lchild; Tree *rchild; } ...

  5. S/4 HANA中发票输出切换回NAST

    在S/4 HANA中,新的输出管理Output Management叫做SAP S/4HANA output control(输出控制),是基于BRF+的,而不是原来基于NAST的.关于S4新的输出控 ...

  6. Ubuntu如何挂载U盘

    1. 以root用户登陆 2. 查看当前挂载 fdisk -l 一般情况未挂载的硬盘都在最后,这里是/dev/sdb1 3.新建一个目录来挂载硬盘 挂载到MNT/usb root@h-Default- ...

  7. MySQL安装及配置

    MySQL安装 我是在Windows上安装的MySQL.首先登录MySQL的官网下载安装包. 最后献上5.5.28这个服务器的下载连接地址: http://cdn.mysql.com/Download ...

  8. Python学习:17.Python面向对象(四、属性(特性),成员修饰符,类的特殊成员)

    一.属性(特性) 普通方法去执行的时候,后面需要加括号,特性方法执行的时候和静态字段一样不需要不需要加括号. 特性方法不和字段同名. 特性方法不能传参数. 在我们定义数据库字段类的时候,往往需要对其中 ...

  9. NodeJS设置Header解决跨域问题

    转载: NodeJS设置Header解决跨域问题 app.all('*', function (req, res, next) { res.header('Access-Control-Allow-O ...

  10. 20155207 2006-2007-2 《Java程序设计》第3周学习总结

    20155207 2006-2007-2 <Java程序设计>第X周学习总结 教材学习内容总结 比较字符串实际字符内容是否相同,不要使用==,要使用equals() 关于类的语法问题 pu ...