openssl生成证书
数字证书:
第三方机构使用一种安全的方式把公钥分发出去
证书格式:x509,pkcs家族
x509格式:
公钥和有效期限:
持有者的个人合法身份信息;(主机名,域名)
证书的使用方式
CA的信息
CA的数字签名 谁给CA发证:自签署证书
用户
.生成一对密钥
.把所需信息和公钥按固定格式制作成证书申请(把公钥给CA签署) CA机构
.自签证书,生成密钥对
.签署证书
.传给用户
.维护吊销列表(是否过期)
OpenCA(大规模应用) 用openssl实现私有(自建)CA
配置文件/etc/pki/tls/openssl.cnf
命令:
谁给CA发证:自签署证书
CA服务器端:
用openssl实现私有CA:
配置文件:/etc/pki/tls/openssl.cnf
[root@k8s1 CA]# cd /etc/pki/CA 生成密钥对儿,默认生成公钥和私钥 cakey.pem是私钥:
# (umask ; openssl genrsa -out private/cakey.pem ) 如果想查看公钥,公钥是从私钥中提取出来的,非必要提取公钥:
# openssl rsa -in private/cakey.pem -pubout -text -noout 生成自签证书:
# openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days countrCountry Name 国家
State or Province Name 州或者省的名字
Locality Name 所在的城市
Organization Name 所在的公司
Organizational Unit Name 所在的部门
Common Name https访问的地址
配置文件:/etc/pki/tls/openssl.cnf
自签证书,openssl.conf 配置文件,无法修改Common Name(https://ca.cinyi.com),和email,需要手动修改。
创建需要的文件:
# cd /etc/pki/CA
# touch index.txt serial crlnumber
给签发的客户端编号
#echo > serial
客户端:
用openssl实现证书申请:
在主机上生成密钥,保存至应用此证书的服务的配置文件目录下, 例如:
# mkdir /etc/httpd/ssl
# cd /etc/httpd/ssl
# (umask ; openssl genrsa -out httpd.key )
生成证书签署请求(输入的字符country name,State or Province Name, Organization Name 必须和服务CA端相同,否则
CA签署不通过):
# openssl req -new -key httpd.key -out httpd.csr

将请求文件发往CA;
# scp httpd.csr CA服务器端:/tmp/
CA服务器端:
CA签署证书:
签署:
# openssl ca -in /tmp/192.168.20.230.csr -out /tmp/192.168.20.230.crt -days 将证书传回请求者,可以放置到nginx 配置文件下,形成https访问
# scp /tmp/192.168.20.230.crt 192.168.20.230:/tmp/下, 吊销证书:
# openssl ca -revoke /path/to/somefile.crt
openssl生成证书的更多相关文章
- CentOS6系统openssl生成证书和自签证书
CentOS6系统openssl生成证书和自签证书的过程,记录一下,本文基于CentOS 6 64bit.$ yum install openssl openssl-devel 1,生成服务器端的私钥 ...
- 使用OpenSSL生成证书
使用OpenSSL生成证书 下载安装openssl,进入/bin/下面,执行命令(把ssl目录下的openssl.cnf 拷贝到bin目录下)1.首先要生成服务器端的私钥(key文件):openssl ...
- 如何利用OpenSSL生成证书
此文已由作者赵斌授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 一.前言 最近为了测试内容分发网络(Content Delivery Network,简称 CDN)添加的新功 ...
- [转帖] ./demoCA/newcerts: No such file or directory openssl 生成证书时问题的解决.
接上面一篇blog 发现openssl 生成server.crt 时有问题. 找了一个网站处理了一下: http://blog.sina.com.cn/s/blog_49f8dc400100tznt. ...
- 使用 openssl 生成证书
一.openssl 简介 目前最流行的 SSL 密码库工具官网:https://www.openssl.org/source/ 构成部分 密码算法库 密钥和证书封装管理功能 SSL通信API接口 用途 ...
- PHP通过OpenSSL生成证书、密钥并且加密解密数据,以及公钥,私钥和数字签名的理解
一.公钥加密假设一下,我找了两个数字,一个是1,一个是2.我喜欢2这个数字,就保留起来,不告诉你们(私钥),然后我告诉大家,1是我的公钥. 我有一个文件,不能让别人看,我就用1加密了.别人找到了这个文 ...
- openssl 生成证书基本原理
摘自:http://blog.csdn.net/oldmtn/article/details/52208747 1. 基本原理 公司一个项目要进行交易数据传输,因为这个项目银行那边也是刚刚开始启动,所 ...
- centos7 openssl 生成证书给自己使用
Step1: centos7 系统自己生成证书 给自己签发不安全的域名证书 openssl genrsa - #生成ca根秘钥 是长度 openssl req - -key ca.key -out c ...
- [k8s]通过openssl生成证书
证书认证原理: http://www.cnblogs.com/iiiiher/p/7873737.html [root@m1 ssl]# cat master_ssl.cnf [req] req_ex ...
- openssl 生成证书
nginx生成证书,一共四步 1) 生成RSA私钥 (会要求输入至少4位密码)# openssl genrsa -des3 -out private.key 2048 # 2) 根据已生成的RSA私钥 ...
随机推荐
- 撩课-Web大前端每天5道面试题-Day20
1.vue生命周期的作用是什么? 它的生命周期中有多个事件钩子,让我们在控制整个Vue实例的过程时更容易形成好的逻辑. 2. Vue实现数据双向绑定的原理:Object.defineProperty( ...
- DOS窗口带jar包运行java程序
由于工作环境的问题,有过一次这样的测试,需要在DOS窗口运行带有jar包的java程序 编译命令如下: javac -Djava.ext.dirs=./lib Test.java 或 javac -D ...
- elixir 基础数据结构
Elixir中的一些基础的数据结构:整数,浮点数,字符串,原子,列表,元组 整数,浮点数,字符串 跟其他语言差不多 原子:名字为值的常量 在ruby类似Symbols 在erlang是用大写 ...
- SystemLogParser ArcGIS Server运维工程师的好助手
单位使用ArcGIS Server发布了众多GIS服务,作为系统运维工程师,一直希望能有一种便捷的方式能获得服务的访问情况,Esri推出的SystemLogParser这款小程序就是不错的辅助工具,而 ...
- apply与call简单用法以及判断数组的坑
1 typeof 和 instanceof var array = [];平时如果判断一个对象是否为数组,可能你会用 typeof array,但是输出为“object”. typeof 一般只能返回 ...
- android控件TextView之 分段显示不同颜色
代码如下: attrs.xml文件: 第二种方式: String newMessageInfo = "<font color='red'><b>" + 红色 ...
- Evernote Markdown Sublime使用介绍
版权声明: 欢迎转载,但请保留文章原始出处 作者:GavinCT 出处:http://www.cnblogs.com/ct2011/p/4002619.html 这一篇博客继续探讨:Evernote ...
- linux 软件包 rpm命令之安装、更新、卸载、依赖
软件包分类1.源码包2.二进制包二进制包是源码包编译后产生的文件..exe文件是适用于windows平台的二进制包:RPM包适用于redhat系列的二进制包:deb包是适用于ubuntu平台的二进制包 ...
- Pig autocomplete 自动补全
在pig的grunt环境下,按TAB键可以自动补全命令,用户可以添加自己的补全信息. 在conf目录下创建autocomplete文件,添加如下内容: hdfs://vm1:8020/ 在grun ...
- 【Java】函数使用
package aaa; public class aaa { public static int add(int a,int b) { return a+b; } public static voi ...


