Mac 上製作 SSL 證書

程式設計三昧發表於2022-01-23

SSL.001

前言

我們在開發 https 服務時,需要引入相應的 SSL 證照。

今天,我就自己在 Mac 上製作 SSL 證照的過程做個記錄。

環境

MacOS 10.15.7

工具

openssl

步驟

第一步:終端執行命令。

//生成rsa私鑰,des3演算法,1024位強度,ssl.key是秘鑰檔名。
openssl genrsa -des3 -out ssl.key 1024

第二步:輸入密碼。這裡會輸入兩次,填寫一樣即可,隨意填寫一個,下一步就會刪除這個密碼。

image.png

透過上面這一步,就會在當前資料夾下生成一個 ssl.key 檔案。

第三步:刪除密碼。

//終端執行刪除密碼命令
//這裡目錄和生成私鑰的目錄一致
openssl rsa -in ssl.key -out ssl.key

第四步:生成 CSR(證照籤名請求)。我們根據根據剛剛生成的 key 檔案來生成證照請求檔案,終端執行如下命令:

openssl req -new -key ssl.key -out ssl.csr

執行以上命令後,需要依次輸入國家、地區、城市、組織、組織單位、Common Name、Email 和密碼。其中 Common Name 應該與域名保持一致。密碼我們已經刪掉了,直接回車即可。

image.png

溫馨提示:Common Name 就是證照對應的域名地址,我們開發微信小程式時必須要讓我們的外鏈的 https 的域名和證照統一才行。

第五步:生成自簽名證照。根據以上 2 個檔案生成 crt 證照檔案,終端執行下面命令:

//這裡3650是證照有效期(單位:天)。這個大家隨意。最後使用到的檔案是key和crt檔案。
openssl x509 -req -days 3650 -in ssl.csr -signkey ssl.key -out ssl.crt

到這裡我們的證照(ssl.keyssl.crt) 就已經建立成功了可以直接用到 https 的 server 中了。

image.png

使用證照

在程式碼中使用證照:

https
    .createServer(
        {
            key: fs.readFileSync("./cert_key/ssl.key"),
            cert: fs.readFileSync("./cert_key/ssl.crt")
        },
        app
    )
    .listen(1993);

總結

以上就是在 MacOS 上製作

~

~ 本文完,感謝閱讀!

~

學習有趣的知識,結識有趣的朋友,塑造有趣的靈魂!

大家好,我是〖程式設計三昧〗的作者 隱逸王,我的公眾號是『程式設計三昧』,歡迎關注,希望大家多多指教!

你來,懷揣期望,我有墨香相迎! 你歸,無論得失,唯以餘韻相贈!

知識與技能並重,內力和外功兼修,理論和實踐兩手都要抓、兩手都要硬!

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章