什么是证书?

  它是用来证明某某东西确实是某某东西的东西。通俗地说,证书就好比公章。通过公章,可以证明相关文件确实是对应的公司发出的。

  理论上,人人都可以找个证书工具,自己做一个证书。

什么是CA?

  CA全称Certificate Authority,也叫“证书授权中心”。它是负责管理和签发证书的第三方机构。

什么是CA证书?

  CA证书,就是CA颁发的证书。

  前面说了,人人都可以找工具制作证书。但是制作出来的证书是没用的,因为不具备权威性。

证书的签发过程

a.服务方 S 向第三方机构CA提交公钥、组织信息、个人信息(域名)等信息并申请认证

b.CA 通过线上、线下等多种手段验证申请者提供信息的真实性,如组织是否存在、企业是否合法,是否拥有域名的所有权等

c.如信息审核通过,CA 会向申请者签发认证文件-证书。

证书包含以下信息:申请者公钥、申请者的组织信息和个人信息、签发机构 CA 的信息、有效时间、证书序列号等信息的明文,同时包含一个签名

签名的产生算法:首先,使用散列函数计算公开的明文信息的信息摘要,然后,采用 CA 的私钥对信息摘要进行加密,密文即签名

d.客户端 C 向服务器 S 发出请求时,S 返回证书文件

e.客户端 C 读取证书中的相关的明文信息,采用相同的散列函数计算得到信息摘要,然后,利用对应 CA 的公钥解密签名数据,对比证书的信息摘要,如果一致,则可以确认证书的合法性,即公钥合法;

f.客户端然后验证证书相关的域名信息、有效时间等信息

g.客户端会内置信任 CA 的证书信息(包含公钥),如果CA不被信任,则找不到对应 CA 的证书,证书也会被判定非法。

在这个过程注意几点

1.申请证书不需要提供私钥,确保私钥永远只能服务器掌握

2.证书的合法性仍然依赖于非对称加密算法,证书主要是增加了服务器信息以及签名

3.内置 CA 对应的证书称为根证书,颁发者和使用者相同,自己为自己签名,即自签名证书

证书=公钥+申请者与颁发者信息+签名

CA证书常用于https (SSL加密)

1.生成四个证书文件

[root@ca ~]# mkdir -p /etc/pki/CA/{certs,newcerts,crl,private}

Certs  证书存放位置

Newcerts 新申请的证书位置

Crl 吊销的证书

Private 密钥存放位置

2.生成证书索引数据库文件

要进入到CA中生成

[root@ca CA]# touch index.txt

3.指定一个颁发证书的序列号

[root@ca CA]# echo "01">serial

4.为CA创建私钥

私钥默认存放在/etc/pki/CA/private

[root@ca CA]# openssl genrsa -out private/cakey.pem 2048

2048 是代表位数 位数越多越安全 常见的有 2048、4096

5.为CA创建根证书

 CA根证书默认存放在CA下面

[root@ca CA]# openssl req -new -x509 -nodes -key private/cakey.pem -days 7300 -out cacert.pem

加时间-days 7300  20年

req 表示证书输出的请求

-key密钥

-new表示新的请求

-out输出路径

-x509 签发x509格式证书命令

填写证书请求

国家=CN

省=shanghai

城市=shanghai

组织=cdll

组织单位=system

公用民=cdll.com

电子邮箱=

二.客户端

1.客户端创建证书申请

[root@web ~]# openssl req -new -nodes -keyout web.llzz.com.key -out web.llzz.com.csr

web.llzz.com.key 表示生成的密钥

web.llzz.com.csr 证书请求文件

2.将生成的csr请求文件发送给CA证书中心

 [root@web ~]# scp web.llzz.com.csr 10.10.30.101:/etc/pki/CA   ip后面跟文件存放的位置

存放在CA下更方便

3.为客户端颁发证书

4.当CA私钥与根证书存放在默认位置时,不需要指定

CA私钥默认存放位置:/etc/pki/CA/private/

CA根证书默认存放位置:/etc/pki/CA

-days 3650 时间=10 年

[root@ca /]# openssl  ca -in web.llzz.com.csr -days 3650 -out web.llzz.com.crt 

5.将生成的crt 证书传到客户端

[root@ca CA]# scp web.llzz.com.crt 10.10.30.102:/root

Linux系统搭建私有CA证书服务器相关推荐

  1. Linux实现搭建私有CA服务器和证书申请颁发吊销

    利用Openssl搭建私有CA 目标是为了向内网用户颁发证书,方便内部用户得到彼此的公钥 搭CA服务器实际表现为准备好相关的文件 第一步:创建CA对应的文件夹 CentOS 7中已存在CA内容的对应文 ...

  2. Linux 搭建私有CA证书服务器之超详细版本

    一.CA简介 CA是什么?CA是Certificate Authority的简写,从字面意思翻译过来是凭证管理中心,认证授权.它有点类似我们生活中的身份证颁发机构,这里的CA就相当于生活中颁发身份证的 ...

  3. linux搭建ca服务器搭建,linux下安装EJBCA 搭建私有CA服务器

    linux下安装EJBCA 搭建私有CA服务器 EJBCA是一个全功能的JAVA的CA系统软件,我们可以用此搭建私有CA服务器: 一:首先我的测试环境: 1.  linux mint18.3 62位: ...

  4. Centos7中创建RSA非对称密钥对及搭建私有CA并为客户端颁发证书

    Centos7中创建RSA非对称密钥对及搭建私有CA并为客户端颁发证书 1.在centos7中使用gpg创建RSA非对称密钥对 [13:32:55 root@centos7 data]#gpg --g ...

  5. Linux系统搭建Red5服务器

    Linux系统搭建Red5服务器 Red5 是 支持Windows,Linux等多平台的RTMP流媒体服务器,Windows下搭建相对容易,图形界面操作比较简单,Linux服务器的环境下没有图形界面, ...

  6. linux系统下ntp网络时钟服务器(NTP服务器)的搭建和使用

    linux系统下ntp网络时钟服务器(NTP服务器)的搭建和使用 linux系统下ntp网络时钟服务器(NTP服务器)的搭建和使用 安徽京准科技开发的NTP网络时间源设备 参考 ahjzsz.com  ...

  7. Linux系统搭建多用户多目录不同权限访问的FTP服务器

    Linux系统搭建多用户多目录不同权限访问的FTP服务器 1 安装服务 [root@host-192-168-9-19 home]# yum -y install vsftpd 2 创建访问目录 创建 ...

  8. CentOS 7 CA证书服务器搭建

    CA认证概述 证书颁发机构(CA, Certificate Authority)即颁发数字证书的机构.是负责发放和管理数字证书的权威机构,并作为电子商务交易中受信任的第三方,承担公钥体系中公钥的合法性 ...

  9. PKI详解与openssl实现私有CA证书签发

    加密解密技术基础 在看这篇文章之前,首先需要有加密解密的技术基础: 安全目标: 保密性:确保通信信息不被任何无关的人看到 完整性:实现通信双方的报文不丢失.数据完整性.系统完整性 可用性:通信任何一方 ...

  10. Openssl搭建私有CA认证

    概述 CA英文全称Certification Authority,即数字证书认机构.从广义上来说,CA是负责发放和管理数字证书的权威机构,并作为用户数字认证中受信任的第三方,承担公钥体系(PKI)中公 ...

最新文章

  1. vue调用百度地图API输入提示示例下拉列表一直被触发问题
  2. stm32f746 linux,在Linux系统下搭建STM32开发环境--Nucleo-F429ZI
  3. PAT甲级题目翻译+答案 AcWing(模拟)
  4. 云开发系列课程让你从入门到精通快速上手Serverless和云开发技术
  5. 不可摸数http://acm.hdu.edu.cn/showproblem.php?pid=1999
  6. myelcipse和maven搭建项目
  7. python求矩阵的秩_Python 实现线性代数计算器
  8. 为什么有些程序员是三、四台电脑一起用的?
  9. 使用wps的邮件合并和文档附件制作带照片的准考证
  10. 魔性计时器html,PDD西卡脸抽不断 拜年秀播出倒计时1天
  11. BtTracker原理
  12. Windows 10 Conda 更换清华大学的镜像源
  13. 利用原生JavaScript--实现小球无限转圈
  14. 用c语言求五位回文数,C语言求回文数(详解版)
  15. 弹性文件服务(Scalable File Service,SFS)
  16. 抠图算法:经典的贝叶斯抠图
  17. python中的格式化输出
  18. 换肤功能原理及自定义组件化UI样式初步尝试
  19. 【BZOJ4808/3175】马/[Tjoi2013]攻击装置 最小割
  20. 冒泡排序(代码+解析)

热门文章

  1. vue获取client为0_vue document.documentElement.clientHeight为0
  2. 软件开发需要学习哪些技术?
  3. 淘宝全屏雪花特效页面
  4. 超级简单Python学生信息管理系统设计与实现.zip(论文+项目源码+使用说明书)
  5. PTA程序设计综合实践1.10
  6. android5.1+xposed卡刷包,一加5 7.1 ROM刷机包 最终版王者高帧率极速吃鸡超多自定义Xposed...
  7. 苹果手机java设置_苹果java文件怎么打开?苹果手机安装JAVA程序的方法
  8. excel按模板导出
  9. Java Drool规则引擎
  10. java 爬虫处理数据_Java语言实现爬虫实战