我可以為電子郵件加密創建自己的 S/MIME 證書嗎?
我這裡有點問題。請耐心等待,因為這可能是“沒有提出正確的問題”的情況。
背景:使用 Apple Mail。想要加密/解密電子郵件,但雪豹不支持 GPGMail(顯然是 PGP)。
基本上我需要創建一個用於電子郵件加密的 S/MIME 證書。我不想要,也不關心證書頒發機構。我只是想要一個快速而骯髒的證書。這甚至可能(使用 OPENSSL 等)還是整個過程取決於更高的權威,迫使我建立一個全面的 CA 或與一家公司(例如 Verisign、Thawte)打交道以獲得證書?我的標準是即時滿足和免費。
最好的。
是的,Apple Mail 不支持 GPG 真是太糟糕了。:-( 我希望這樣做,因為我也更喜歡 GPG 加密電子郵件。
我也同意很難獲得有關 S/MIME 和生成您自己的電子郵件證書的資訊。我發現Paul Bramscher 的網頁很好地描述瞭如何創建自己的證書頒發機構證書。
我不會假裝完全理解證書過程,但這是我能夠拼湊起來的。您應該查閱 openssl 手冊頁以獲取有關下面顯示的每個命令的更多詳細資訊。
創建證書頒發機構
第一步是創建您自己的證書頒發機構 (CA)。命令是……
# openssl genrsa -des3 -out ca.key 4096 # openssl req -new -x509 -days 365 -key ca.key -out ca.crt
並按照提示進行操作。
您需要向加密電子郵件的每個收件人頒發您的 CA 證書(即*ca.crt的內容)。*收件人必須安裝並信任您的 CA 證書,才能信任您的加密電子郵件。安裝會因使用的每個郵件客戶端而異。
在您的情況下,您需要將您的 CA 證書添加到您的 Apple 鑰匙串中。網上有很多關於如何在 Apple Keychain 中導入和信任 CA 證書的文章。
創建個人電子郵件證書請求
您現在需要創建一個證書請求。為您希望從中發送電子郵件的每個電子郵件地址創建一個。執行以下命令……
# openssl genrsa -des3 -out humble_coder.key 4096 # openssl req -new -key humble_coder.key -out humble_coder.csr
並按照提示進行操作。
證書頒發機構簽署您的證書請求
您的個人證書需要由您的 CA 簽名。在這種情況下,你!
# openssl x509 -req -days 365 -in humble_coder.csr -CA ca.crt -CAkey ca.key \ -set_serial 1 -out humble_coder.crt -setalias "Humble Coder's E-Mail Certificate" \ -addtrust emailProtection \ -addreject clientAuth -addreject serverAuth -trustout
輸出是您的簽名證書。
準備您的證書以導入您的郵件應用程序
您需要將證書從
.crt
(PEM 格式,我認為)轉換為.p12
(PCKS12 格式)。# openssl pkcs12 -export -in humble_coder.crt -inkey humble_coder.key \ -out humble_coder.p12
您現在可以將
*.p12*
格式化的證書導入您的郵件客戶端。在您的情況下,將*.p12*
文件導入 Apple 鑰匙串。正確安裝證書後,Apple Mail 將開始使用您的證書。有一個更簡單的方法
當然,一旦您創建了自己的 CA,就有一種更簡單的方法來管理您自己的證書頒發機構創建的證書。 openssl帶有一個名為…的腳本
# /usr/lib/ssl/misc/CA.pl
這簡化了成為您自己的證書頒發機構的過程。甚至還有 CA.pl 的手冊頁!