一、配置自己的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
總結:
- 確認安裝OpenSSL
- 修改配置讓本機成爲CA認證中心
/etc/pki/tls/openssl.cnf > 172#basicConstrains=CA:FALSE
- 生成CA的公鑰證書和私鑰(根證書包含公鑰)
/etc/pki/tls/misc/CA -newca # 填寫一系列配置 前面輸入2次密碼 後面一個密碼不輸
- 查看CA根證書
/etc/pki/CA/cacert.pem
- 查看根證書的私鑰
/etc/pki/CA/private/cakey.pem
HttpServer證書申請
-
http服務器生成私鑰
openssl genrsa -des3 -out /etc/httpd/conf.d/server.key #要輸入2次密碼
-
通過私鑰生成【證書請求文件】
# 執行req命令填寫一系列配置 這裏填寫的配置要和CA認證中心填寫的一致 openssl req -new -key /etc/httpd/conf.d/server.key -out /server.csr # 填寫過程中 CommonName必須與通過瀏覽器訪問網站的URL完全相同
-
將【證書請求文件】發送給【認證中心】
scp /server.csr 192.168.x.xxx:/tmp/
-
【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
-
【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
# 最後打開網頁進行測試