實現創建私有CA

CA的構成:
PKI: Public Key Infrastructure
簽證機構:CA(Certificate Authority)
注冊機構:RA
證書吊銷列表:CRL
證書存取庫:
X.509:
定義了證書的結構以及認證協議標準
版本號
序列號
簽名算法
頒發者
有效期限
主體名稱
主體公鑰
CRL分發點
擴展信息
發行者簽名
證書類型:
證書授權機構的證書
服務器
用戶證書
獲取證書兩種方法:
1.使用證書授權機構
生成簽名請求(csr)
將csr發送給CA
從CA處接收簽名
2.自簽名的證書
自己簽發自己的公鑰

/etc/pki/tls/openssl.cnf
CA配置文件:
dir = /etc/pki/CA
certs = $dir/certs 頒發的證書必須在這個目錄下
crl_dir = $dir/crl 吊銷證書列表
database = $dir/indcdex.txt
new_certs_dir = $dir/newcerts
給誰頒發過證書的目錄
certificate = $dir/cacert.pem
Ca自簽證的證書存放路徑(文件名要一致上級CA頒發)
serial = $dir/serial
下一個證書的編號(16進制數,需創建)
crlnumber = $dir/crlnumber
下一個要吊銷證書的編號 (要手動創建)
crl = $dir/crl.pem
證書吊銷列表
private_key = $dir/private/cakey.pem
CA自己私鑰文件路徑(文件名后綴必須一致)
RADNFILE =$dir/private/.rand
創建私鑰時要用到的生成隨機數文件
default_days = 365 證書有效期
default_crl_days= 30 30天更新一次CRL
default_md = sha256 默認用sha256加密
preserve = no 保持通過DN排序
policy = policy_match 申請證書時的策略
CA策略:policy
policy_match
countryName = match 必寫國家
stateOrProvinceName = match 省
organizationName = match 公司名
organizationalUnitName = optional 公司部門
commonName(通用名網站域名) = supplied 必須提供(*要與的網站名匹配)
emailAddress = optional 可以空不寫
policy_anything
則是申請時國家,市等可以不一至也行
——————————————————————————–
實驗:向CA申請證書
1 建立RootCA
1)生成私鑰
(umask 077;openssl genrsa -out /etc/pki/CA/private/cakey.pem 4096 )
2)自簽名證書
openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -out /etc/pki/CA/cacert.pem -days 3650
req :發申請
-new: 建立第一個申請
-x509: 代表自簽名的證書
-key: 后面跟用到的私鑰文件路徑
-days n:證書的有效期限
-out /PATH/TO/SOMECERTFILE: 證書的保存路徑
依次輸入:國家 ;省 ;公司;部門;網站域名;郵箱
可用下面指令看證書詳細信息:
openssl x509 -in /etc/pki/CA/cacert.pem -noout -text
-noout -issuer 只看誰發行的證書
-noout -subject 只看給誰頒發的證書
-noout -dates 查看證書日期
2 用戶或服務器
1)生成私鑰
(umask 077;openssl genrsa -out app.key 1024 )
一般放在和服務相關的文件夾里面
2)生成證書申請文件
openssl req -new -key app.key -out app.csr
依次輸入:國家;市;公司名;部門;(新的)服務域名;郵箱
3)將申請文件app.csr發給CA
scp
3 CA頒發證書
touch index.txt 創建證書索引庫
echo 0F > serial 創建下一個要頒發的證書編號
openssl ca -in app.csr -out /etc/pki/CA/certs/app.crt -days 100
——————————————————————————–
同一個私鑰可以重新申請申請證書;兩個證書給兩個服務用
CA默認不能給同一個申請證書多次頒發證書但修改/etc/pki/CA/index.txt.attr文件就可以實現
unique_subject = yes為不能 no為可以
——————————————————————————–
openssl ca -revoke newcerts /10.pem
根據newcerts目錄下的證書編號來吊銷證書
/etc/pki/CA/index.txt
開頭的V代表 可用 ;R代表吊銷
創建吊銷列表編號文件:echo 1F >/etc/pki/CA/crlnumber
生成吊銷列表:
openssl ca -gencrl -out crl.pem
每吊銷一個證書都要重新生成一次吊銷列表

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/99148

(0)
xchlinuxxchlinux
上一篇 2018-05-22
下一篇 2018-05-22

相關推薦

  • 正則表達式及vim使用方法

    正則表達式(正則表達式匹配的是文本內容中的字符串,通倍符匹配的是文件名)REGEXP:由一類特殊字符及文本字符所編寫的模式,其中有些字符(元字符)不表示字符字面意義,而表示控制或通配的功能程序支持:grep,sed,awk,vim, less,nginx,varnish等分兩類:不同的命令支持不同的正則表達式基本正則表達式:BRE擴展正則表達式:EREgre…

    Linux筆記 2018-04-08
  • Linux學習筆記

    一.計算機的系統
    二.CentOs6的安裝步驟

    2018-07-19
  • shell腳本編程基礎——循環用法

    本節索引: 一、if、case條件判斷 二、for、while及until循環 三、循環控制語句continue、break、shift及select菜單 四、信號捕捉trap   在前面的基礎編程內容中,我們已經學習了shell腳本的順序執行及選擇執行,通過這兩種方式,可 以幫我們解決一些簡單需求,但要想在更復雜的場景中使用的話,就需要掌握循環執…

    2018-05-10
  • linux發行版之間的愛恨情仇

    千絲萬縷,森羅萬象

    Linux筆記 2018-05-13
  • Blog Day 0:Linux運維學習方法論漫談

    By:Alvin Lin
    No:M30-43
    Date:2018-03-26

    Linux筆記 2018-03-26
  • Ansible使用介紹(一)基本概念及常用模塊

    隨著運維自動化經歷了從本地部署到基礎設施即服務(IaaS)、平臺即服務(PaaS)在到軟件即服務(SaaS)的發展階段,掌握多種自動化運維工具就成了運維人員必備技能之一,ansible就是目前國內使用比較廣泛的自動化運維工具之一。

    2018-05-29
欧美性久久久久