====== 為憑證生成 CSR 檔 ====== 如要啟用您的 SSL 憑證,請預先生成一個 CSR 檔 (Certificate Signing Request)。 CSR 檔是一個經加密過的文字區塊,裡頭註明了您的身份以及要透過憑證保護的域名 (包含子域名或萬用字元) 網址為何。您必須透過特定的軟體生成 CSR 檔,另外還要將生成的內容複製並貼在網路表格上,才能夠啟用您的憑證。 這裡提供您兩個常用來做為生成 CSR 檔的程式。請您務必在我們網站上建立憑證的過程中註明您是使用那一個程式生成 CSR 檔,因此建議您一次就把上述事宜全部完成,才不會搞混。 ===== 使用 Apache/ModSSL (基於 OpenSSL) 生成 CSR 檔 ===== ** RSA 金鑰至少須是 2048 位元,且是 1024 的倍數。** 如果您的憑證是要使用在我們的 Simple Hosting 產品上,則您的金鑰只能是 2048 位元。 我們建議您在伺服器上安裝 [[:zh-tw:ssl:intermediate#sha2_intermediate_certificates|中繼憑證]]以及 [[:zh-tw:ssl:intermediate#comodo_cross-signed_certificate|交互簽署憑證]] ,如此一來可降低網路瀏覽器不相容的風險。 ===== 為憑證生成 CSR 檔 ===== 由於越來越多人不採用 SHA1 的方式簽署憑證,我們的認證機構合作廠商 Comodo 將針對所有 2017 年之後到期的憑證自動重新簽發一個 SHA2 的憑證 ,不論其 CSR 檔是不是以 SHA1 的方式簽署。 ==== 憑證請求 ==== 如要生成 **SHA-2** 的 CSR 檔 , 請使用以下的指令: openssl req -nodes -newkey rsa:2048 -sha256 -keyout myserver.key -out server.csr 此流程中會建立兩個檔案:一個是公開的 **.csr** 檔,另一個則是私人的 **.key** 檔,請務必妥善保存 .key 檔。 請注意,私鑰會在您生成 CSR 檔的同時也生成,並儲存在您的電腦或伺服器裡。因此,唯有您得以存取以 .key 為副檔名結尾的私鑰。 當您運行指令時,會詢問一系列的問題。以下是一些範例回覆: 國家名稱 (2 個字母代碼) [AU]: TW 省份名稱 (全名) [某些省份]: 台灣省 地方名稱 (例如,城市) []: 台北市 組織名稱 (例如,公司) [Internet Widgits Pty Ltd]: MyCompany Inc. 組織單位名稱 (例如,部門) []: IT 公用名稱 (例如,您的姓名) []: subdomain.example.com 電子郵件地址 []: 可靠的密碼 []: 其他公司名稱 []: **可選填的公司名稱** 及 **可靠的密碼** 兩個欄位非必填。 我們建議您輸入一個**電子郵件地址**。雖說這也是非必填選項。 "subdomain.example.com" 代表您要保護的子域名。這是最重要的部份。 如果要啟用的是單一位址憑證,且您使用主域名 (例如 "%%example.com%%" ) 建立 CSR 檔,這時,認證機構 (CA) 會自動新增 "www" 子域名;舉例來說,"example.com" 將同時保護 "example.com" 及 "%%www.example.com%%" 的安全性。如果您使用的是萬用字元 (Wildcard) 憑證,子域名應以 "*" 代替 (例如 "*.example.com")。萬用字元 (Wildcard) 憑證也會同時保護主域名本身 (即使沒有子域名) 的安全性。 **多重域名** 憑證則不適用上述作法:您必須註明每個您要保護的域名及/或子域名。也就是說,如果您使用多重域名憑證保護主域名,其**不會**同時保護相對應的 "www" 子域名。 您必須透過 CSR 檔內的內容才能啟用您的憑證。以下的指令可顯示其內容,請將其複製貼上於驗證頁面上: cat server.csr 將顯示以下的文字區塊: -----BEGIN CERTIFICATE REQUEST----- ...encrypted text... -----END CERTIFICATE REQUEST----- 請確定您複製了整個區塊,包含起始行及結束行。 凡所有以 OpenSSL 所建立的 CSR 檔,在提交您的 CSR 檔時,軟體清單上請選擇 Apache/ModSSL 模組。開放性原始碼軟體套件,使用 OpenSSL 框架通常都是這樣的情況。 您可以使用下面的指令顯示您私鑰 (KEY) 檔案內的內容: cat myserver.key 請把 "myserver" 置換成您給私鑰的名稱 (如名稱不同的話)。 ===== 在 Simple Hosting 上生成 CSR 檔 ===== 只要連結 [[zh-tw:simple:console|SSH 管理界面]],就可以在 Simple Hosting 上生成 CSR 檔及私鑰。 請前往 /srv/data/tmp 資料夾: $ cd /srv/data/tmp 接著執行上述的 [[zh-twn:ssl:csr#generating_your_csr1|OpenSSL 指令]] 。 ===== 使用 Microsoft IIS 生成 CSR 檔 ===== 請在 Windows 的 "控制台" -> "管理工具", 選擇 IIS 管理。 在該網站上按右鍵,然後選擇 "屬性"。 在 "目錄安全性" 分頁上點選 "伺服器憑證",然後選擇 "建立一個新的憑證",接著 "現在進行請求準備,但稍候再送出"。 建立表格內需填入與 OpenSSL (請參照上方) 上相同的資訊。請確實填入欄位,並確認子域名、域名及萬用字元 (Wildcard) 的資訊都是正確的。 請在流程最後註明 CSR 檔所儲存的位置。請在我們的網站上啟用憑證的流程中,複製貼上該檔案的內容。 ====== 其他相關資訊 ====== * [[/zh-tw/ssl/install]] * [[:zh-tw:ssl:install:iis|設定 IIS 以便與您的 SSL 憑證一起使用]] * [[:zh-tw:ssl:troubleshoot|從 IIS Windows 伺服器匯出一個 SSL 憑證]]