搭建CA認證中心

一、配置自己的CA認證中心

生成CA的根證書和私鑰

修改配置文件

#讓自己成爲CA認證中心
$ vim /etc/pki/tls/openssl.cnf
#修改 172行爲 basicConstraints=CA:TRUE 

操作生成CA根證書

$ /etc/pki/tls/misc/CA -h 
  • -newcert 新證書

  • -newreq 新的請求

  • -newreq-nodes 新的請求節點

  • -newca 新的CA證書

  • -sign 簽證

  • -verify 驗證

>> /etc/pki/tls/miss/CA -newca
Enter PEM pass phrase 這裏輸入密碼保護CA私鑰
Verifying - Enter PEM pass phrase 再次確認密碼
...其他步驟按照要求填寫即刻 國家 省份 姓名 郵箱等
Enter pass phrase for /etc/pki/CA/private/./cakey.pem: 輸入剛纔保護CA私鑰的密碼
# 看到以下表示CA認證中心搭建成功
Enter pass phrase for /etc/pki/CA/private/./cakey.pem:
Check that the request matches the signature
Signature ok
Certificate Details:
        Serial Number:
            ef:13:d8:d6:bd:ab:be:87
        Validity
            Not Before: Jan 12 03:42:17 2021 GMT
            Not After : Jan 12 03:42:17 2024 GMT
        Subject:
            countryName               = CN
            stateOrProvinceName       = beijing
            organizationName          = test
            organizationalUnitName    = IT
            commonName                = test
            emailAddress              = [email protected]
        X509v3 extensions:
            X509v3 Subject Key Identifier: 
                B8:48:68:28:7F:45:F0:A6:91:97:2A:85:81:71:A5:1F:87:AB:B6:AE
            X509v3 Authority Key Identifier: 
                keyid:B8:48:68:28:7F:45:F0:A6:91:97:2A:85:81:71:A5:1F:87:AB:B6:AE

            X509v3 Basic Constraints: 
                CA:TRUE
Certificate is to be certified until Jan 12 03:42:17 2022 GMT (1095 days)

Write out database with 1 new entries
Data Base Updated

總結:

  1. 確認安裝OpenSSL
  2. 修改配置讓本機成爲CA認證中心
    /etc/pki/tls/openssl.cnf > 172#basicConstrains=CA:FALSE
  3. 生成CA的公鑰證書和私鑰(根證書包含公鑰)
    /etc/pki/tls/misc/CA -newca # 填寫一系列配置 前面輸入2次密碼 後面一個密碼不輸
  4. 查看CA根證書
    /etc/pki/CA/cacert.pem
  5. 查看根證書的私鑰
    /etc/pki/CA/private/cakey.pem

HttpServer證書申請

  1. http服務器生成私鑰

    openssl genrsa -des3 -out /etc/httpd/conf.d/server.key #要輸入2次密碼

  2. 通過私鑰生成【證書請求文件】

    # 執行req命令填寫一系列配置 這裏填寫的配置要和CA認證中心填寫的一致
    openssl req -new -key /etc/httpd/conf.d/server.key -out /server.csr
    # 填寫過程中 CommonName必須與通過瀏覽器訪問網站的URL完全相同
    
  3. 將【證書請求文件】發送給【認證中心】

    scp /server.csr 192.168.x.xxx:/tmp/

  4. 【CA認證中心】對發送過來的 【證書請求文件】進行簽名

    # -keyfile用哪個私鑰簽名 -in 籤那個文件
    openssl ca -keyfile /etc/pki/CA/private/cakey.pem -cert /etc/pki/CA/cacert.pem -in /tmp/server.csr -out /server.crt
    
  5. 【CA認證中心】把證書複製回 【http服務器】

    scp /server.crt 192.168.x.xxx:/

總結: 123步驟是在HttpServer上操作 45在CA認證中心操作

使用證書實現https

# 安裝apache
yum install httpd -y
# 修改ServerName爲ip地址
vim / etc/httpd/conf/httpd.conf

# 複製證書
>> cp /server.crt /etc/httpd/conf.d/
# 查看私鑰
>> ls /etc/httpd/conf.d/server.key
# 修改配置 (需要安裝mod_ssl)
>> vim /etc/httpd/conf.d/ssl.conf 
# 修改100行 SSLCertificateFile  /etc/httpd/conf.d/server.crt 爲自己存放 server.crt路徑 
# 108行  SSLCertificateKeyFile /etc/pki/tls/private/localhost.key  爲指定私鑰.key路徑 
# 啓動服務 
>> systemctl start httpd 
>> iptables -F
Enter SSL pass phrase for xxx.cn:443 (RSA):123456 #設置https私鑰密碼
# 查看端口
>> netstat -antup | grep 443

# 最後打開網頁進行測試
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章