關于 建立私有CA和申請證書

                           建立私有CA和申請證書                         

CA和證書
     PKI: Public Key Infrastructure
簽證機構:CA(Certificate
Authority)
注冊機構:RA
證書吊銷列表:CRL
證書存取庫:
   
   
X.509:定義了證書的結構以及認證協議標準
版本號
序列號
簽名算法
頒發者
有效期限
主體名稱
主體公鑰
CRL分發點
擴展信息
發行者簽名   

       
證書獲取
證書類型:
        證書授權機構的證書
        服務器
       
用戶證書
獲取證書兩種方法:
                使用證書授權機構
                   
生成簽名請求(csr)
                    將csr發送給CA
                   
從CA處接收簽名
                自簽名的證書
                   
自己簽發自己的公鑰
創建CA和申請證書
創建私有CA:
           openssl的配置文件:
/etc/pki/tls/openssl.cnf
           [root@Compro 7 ~]# vim
/etc/pki/tls/openssl.cnf
   (1) 創建所需要的文件
       [root@Compro 7 ~]# touch
/etc/pki/CA/index.txt    創建CA存放數據的文檔
       [root@Compro 7 ~]# echo 01 >
/etc/pki/CA/serial   索引編號生成版本號到一個文件
       [root@Compro 7 ~]# cat
/etc/pki/CA/serial     
       01
   (2) CA自簽證書
       生成私鑰
  
[root@Compro 7 ~]# cd /etc/pki/CA/
   [root@Compro 7 CA]# ls
   certs 
crl  index.txt  newcerts  private  serial
   [root@Compro 7 CA]# (umask
066;openssl genrsa -out private/cakey.pem 2048)        
   [root@Compro 7
CA]# cd private/
   [root@Compro 7 private]# ls
   cakey.pem
  
[root@Compro 7 private]# cat cakey.pem
       
生成自簽名證書 :
      格式語法

                opensslreq-new -x509 –key
               
/etc/pki/CA/private/cakey.pem-days 7300
                -out
/etc/pki/CA/cacert.pem
                -new: 生成新證書簽署請求
               
-x509: 專用于CA生成自簽證書
                -key: 生成請求時用到的私鑰文件
               
-days n:證書的有效期限
                -out /PATH/TO/SOMECERTFILE:
證書的保存路徑
 
                [root@Compro 7 private]# openssl req -new -x509
-key cakey.pem -days 7300 -out ../cacert.pem    命令

                Country Name (2 letter code) [XX]:CN                   
國家
                State or Province Name (full name) []:beijing        
城市
                Locality Name (eg, city) [Default City]:haidian      
地區
                Organization Name (eg, company) [Default Company
Ltd]:xiaomag.com   公司
                Organizational Unit Name (eg, section)
[]:FBI        部門
                Common Name (eg, your name or your server's
hostname) []:centos7  指定給誰用
                Email Address
[]:xiaomag@xiaomag.com             郵箱
   (3) 頒發證書:
       (a)
在需要使用證書的主機生成證書請求;  這時候換到另一臺機器上面做,比如我使用CentOS6
        給web服務器生成私鑰 格式語法:
(umask066; opensslgenrsa-out /etc/httpd/ssl/httpd.key2048)
       
[root@Compro ~]# (umask 066;openssl genrsa -out /etc/pki/tls/private/httpd.key
2048)
        [root@Compro ~]# cd /etc/pki/tls/private/
       
[root@Compro private]# ls
        httpd.key
    生成證書申請文件 opensslreq-new
-key /etc/httpd/ssl/httpd.key -days 365 -out /etc/httpd/ssl/httpd.csr
       
[root@Compro private]# openssl req -new -key httpd.key -days 365 -out
httpd.csr
        Country Name (2 letter code) [XX]:CN                 
國家
        State or Province Name (full name) []:beijing       城市
       
Locality Name (eg, city) [Default City]:haidian     地區
        Organization
Name (eg, company) [Default Company Ltd]:xiaomag.com  公司
       
Organizational Unit Name (eg, section) []:FBI      部門
        Common Name
(eg, your name or your server's hostname) []:www.xiaomag.com  指定給誰用
       
Email Address []:xiaomag@xiaomag.com           郵箱
       (b)
將證書請求文件傳輸給CA
        [root@Compro private]# scp httpd.csr
10.1.7.65:/etc/pki/CA/    傳輸給7 上面的CA
       (c) CA簽署證書,并將證書頒發給請求者;opensslca
-in /tmp/httpd.csr–out /etc/pki/CA/certs/httpd.crt -days 365
       
[root@Compro 7 CA]# openssl ca -in httpd.csr -out certs/httpd.csr
      
注意:默認國家,省,公司名稱必須和CA一致
       (d) 查看證書中的信息:
        格式語法:opensslx509 -in
/PATH/FROM/CERT_FILE -noout -text|subject|serial|dates
       [root@Compro 7
CA]# openssl x509 -in cacert.pem -noout -text
       
Certificate:
                    Data:
        Version: 3 (0x2)
       
Serial Number: 11582417720897023278 (0xa0bd038d0641ad2e)
     Signature
Algorithm: sha256WithRSAEncryption
        Issuer: C=CN, ST=beijing,
L=haidian, O=xiaomag.com, OU=FBI,
CN=centos7/emailAddress=xiaomage.com
        Validity
            Not
Before: Sep 23 06:45:30 2016 GMT
            Not After : Sep 18 06:45:30 2036
GMT
        Subject: C=CN, ST=beijing, L=haidian, O=xiaomag.com, OU=FBI,
CN=centos7/emailAddress=xiaomage.com

   (4) 吊銷證書
       (a) 在客戶端獲取要吊銷的證書的serial opensslx509 -in
/PATH/FROM/CERT_FILE-noout -serial -subject
       (b)
在CA上,根據客戶提交的serial與subject信息,對比檢驗是否與index.txt文件中的信息一致
       吊銷證書:opensslca
-revoke /etc/pki/CA/newcerts/SERIAL.pem
       [root@Compro 7 ~]# openssl ca
-revoke /etc/pki/CA/certs/httpd.csr
       (c)
生成吊銷證書的編號(第一次吊銷一個證書時才需要執行)
       [root@Compro 7 ~]# echo 01 >
/etc/pki/CA/crlnumber
       (d) 更新證書吊銷列表
       [root@Compro 7 ~]#
opensslca -gencrl -out /etc/pki/CA/crl/ca.crl
       查看crl文件:
      
[root@Compro 7 ~]# openssl crl -in /etc/pki/CA/crl/ca.crl -noout -text

原創文章,作者:小馬哥,如若轉載,請注明出處:http://www.www58058.com/48789

(0)
小馬哥小馬哥
上一篇 2016-09-23 21:32
下一篇 2016-09-24 10:34

相關推薦

  • Ansible_variable

    Ansible變量        系統自動化讓重復的工作變得更加容易,但是每個系統還是有一些細微的差別,變量就是如何處理系統之間的不同之處。這里將會列出變量的極大部分使用方法。   本文假設:你已經知道如何使用Ansible。知道inventory,facts等概念。   Ans…

    Linux干貨 2015-11-26
  • Linux磁盤管理

                             Linux磁盤管理 磁盤管理:  本章內容    磁盤結構    分區類型   &nbsp…

    系統運維 2016-09-02
  • 集中管理利器-puppet快速入門-中

    集中管理利器-puppet快速入門-中 6.    嘗試啟動master puppet 啟動master puppet,并確認8140端口已被監聽:  #puppet返回成功,但不一定能成功啟動,puppet這個功能希望能改進… 7.    目錄結構 /etc/puppet/  …

    Linux干貨 2015-05-04
  • linux文件系統

    linux的文件系統:             根文件系統為rootfs(root file system)           &nbsp…

    Linux干貨 2015-12-19
  • 日志分析工具Awstats實戰之Nginx篇-分析結果靜態化

    原創作品,允許轉載,轉載時請務必以超鏈接形式標明文章 原始出處 、作者信息和本聲明。否則將追究法律責任。http://nolinux.blog.51cto.com/4824967/1316979 前言: Awstats 是在 SourceForge 上發展很快的一個基原創作品,允許轉載,轉載時請務必以超鏈接形式標明文章 原始出處…

    Linux干貨 2016-08-15
  • 詳解linux磁盤管理

                           磁盤管理 設備文件 1. I/O ports:I/O設備地址 2. 一切皆文件,open(),read(),write(),close(),對設備的操作也都是通     過這…

    Linux干貨 2016-08-29

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-09-26 12:02

    自建CA一般而言用于內部測試常用,文章對CA主機的創建和證書頒發都有了一個完整的講解,但是,整體的文章架構上是不是需要優化一下,層次感太弱了哦。

欧美性久久久久