SSL HTTPS

一、生成服务器私钥、公钥
$ openssl genrsa -out server.key 2048
$ openssl rsa -in server.key -pubout -out server.pem 二、生成CA证书,步骤是
(1)生成私钥
(2)生成X.509 Certificate Signing Request(CSR),
此步骤需要输入国家、省份、城市、
组织公司名(注意不要CA的名称不要与后面签发给服务器和客户端名字相同)、
部门(可空)、
Common Name(填写域名,比如localhost)、
Email地址(可空)、
A challenge password(空)、
An optional company name(空)
(3)生成X509 Certificate Data Managent(CRT)
$ openssl genrsa -out ca.key 2048
$ openssl req -new -key ca.key -out ca.csr
$ openssl x509 -req -in ca.csr -signkey ca.key -out ca.crt (注:V3版本请用后面的替换) 三、生成服务器证书(通过CA签名)
$ openssl req -new -key server.key -out server.csr
$ openssl x509 -req -CA ca.crt -CAkey ca.key -CAcreateserial -in server.csr -out server.crt (注:V3版本请用后面的替换)
四、其他
(1)如果genras带-des3参数,将要求输入密码。
(2)合并证书和私钥的pem
$ cat server.crt server.key > server_.pem
(3)在x509 req命令中加入-days 7310可以将证书设置为20年,例子:
将CA设置为20年,服务器证书设置为10年
$ openssl x509 -req -days 7310 -in ca.csr -signkey ca.key -out ca.crt
$ openssl x509 -req -days 3650 -CA ca.crt -CAkey ca.key -CAcreateserial -in server.csr -out server.crt
(4)创建版本V3的证书
$ vim v3ca.ext
basicConstraints=CA:TRUE
authorityKeyIdentifier=keyid, issuer
keyUsage = critical, cRLSign, digitalSignature, keyCertSign
$ vim v3.ext
basicConstraints=CA:FALSE
authorityKeyIdentifier=keyid, issuer
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
$ openssl x509 -req -days 7310 -sha1 -extfile v3ca.ext -in ca.csr -signkey ca.key -out ca.crt
$ openssl x509 -req -days 3650 -sha1 -extfile v3.ext -CA ca.crt -CAkey ca.key -CAcreateserial -in server.csr -out server.crt

SSL HTTPS 生成证书的更多相关文章

  1. java ssl https 连接详解 生成证书

    我们先来了解一下什么理HTTPS 1. HTTPS概念 1)简介 HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全 ...

  2. java ssl https 连接详解 生成证书 tomcat keystone

    java ssl https 连接详解 生成证书 我们先来了解一下什么理HTTPS 1. HTTPS概念 1)简介 HTTPS(全称:Hypertext Transfer Protocol over ...

  3. keytool生成证书与Tomcat SSL配置

    转自:http://tomhat.iteye.com/blog/2087673 一.Keytool介绍 Keytool是一个Java数据证书的管理工具.Keytool将密钥(key)和证书(certi ...

  4. HTTPS、SSL与数字证书介绍

    在互联网安全通信方式上,目前用的最多的就是https配合ssl和数字证书来保证传输和认证安全了.本文追本溯源围绕这个模式谈一谈. 名词解释 HTTPS:在HTTP(超文本传输协议)基础上提出的一种安全 ...

  5. ssl https双向验证的配置与证书库的生成

    1.SSL认证 不须要特别配置,相关证书库生成看https认证中的相关部分 2.HTTPS认证 一.基本概念 1.单向认证,就是传输的数据加密过了,可是不会校验client的来源  2.双向认证,假设 ...

  6. tomcat7+jdk的keytool生成证书 配置https

    目前只会使用jdk的keytool来生成证书.本文仅介绍这种方法. 1Windows下: 1.1 生成keystore文件及导出证书 打开控制台: 运行: %JAVA_HOME%\bin\keytoo ...

  7. 生成免费SSL通配证书

    通过Let's Encrypt 生成免费SSL证书 有效期是3个月 1.下载工具certbot-auto wget https://dl.eff.org/certbot-auto chmod +x c ...

  8. Tomcat服务器配置https双向认证(使用keytool生成证书)

    一,HTTPS原理   1,HTTP.HTTPS.SSL.TLS介绍与相互关系 (1)HTTP:平时浏览网页时候使用的一种协议.HTTP协议传输的数据都是未加密的(明文),因此使用HTTP协议传输隐私 ...

  9. 使用OpenSSL生成证书并配置Https

    1.密钥.证书请求.证书概要说明 在证书申请签发过程中,客户端涉及到密钥.证书请求.证书这几个概念.我们以申请证书的流程说明三者的关系.客户端(相对于CA)在申请证书的时候,大体上有三个步骤: 第一步 ...

随机推荐

  1. 转!java产生不重复随机数

    private static void testC(int sz) { long startTime = System.currentTimeMillis(); //开始测试时间 Random rd ...

  2. 【我的Android进阶之旅】解决SVN Cleanup错误: Failed to run the WC DB work queue associated with

    错误描述 在Android Studio中点击VCS向下箭头使用SVN Update功能更新代码的时候,报错如下所示: 错误描述信息: Error:svn: E155037: Previous ope ...

  3. corethink功能模块探索开发(十八)前台页面插入jit前端数据可视化库

    效果图: 1.静态文件放入View目录中 在View目录下新建Public目录,在Public目录下新建js.css目录. 把jit的资源放入对应目录中 2.在html中引入jit Applicati ...

  4. python删除目录下七天前创建的文件

    #coding=utf-8 import os import time import datetime def deleteOutdateFiles(path): """ ...

  5. network FAQ

    @1: 参考 ifconfig eth0之后IP总是自动清除,解决方法, 修改vim /etc/network/interfaces 然后执行sudo /etc/init.d/networking r ...

  6. appium实现adb命令 截图和清空EditText

    原文地址http://www.cnblogs.com/tobecrazy/p/4592405.html 原文地址http://www.cnblogs.com/tobecrazy/ 该博主有很多干货,可 ...

  7. LeetCode:二叉搜索树中的搜索【700】

    LeetCode:二叉搜索树中的搜索[700] 题目描述 给定二叉搜索树(BST)的根节点和一个值. 你需要在BST中找到节点值等于给定值的节点. 返回以该节点为根的子树. 如果节点不存在,则返回 N ...

  8. 07 Spring框架 依赖注入(四)基于注解的依赖注入

    前面几节我们都在使用xml进行依赖的注入,但是在实际的开发中我们往往偏爱于使用注解进行依赖注入,因为这样更符合我们人的思维,并且更加快捷,本节就来讲述Spring基于注解的依赖注入: 信息注入注解 @ ...

  9. 一篇文章吃透iOS、JS的时间日期(Date, Calendar, Locale, TimeZone)

    iOS 时间相关类 NSDate - 表示一个绝对的时间点. NSCalendar - 代表一个特定的日历,例如公历或者希伯来日历.它提供了一系列基于日期的计算,并且可以让你在"NSDate ...

  10. javascript 中的比较大小,兼 typeof()用法

    javascript中的排序: 1.不同类型 比 类型 (字符串 > 数字)   2.同类型:(字符串  比 按字母顺序 )(数字 比 大小) 测试: <!DOCTYPE html> ...