如何生成csr檔案
如何生成csr檔案
CSR,Certificate Signing Request,是製作SSL 證照的必要步驟。一個 CSR 檔案中描述了 SSL 證照持有人的資訊(如個人姓名或公司名稱)、聯絡地址等,用於驗證 SSL 證照和域名是同一個人持有,以確保網站的合法性。
在申請數字證照之前,您必須先生成證照私鑰和證照請求檔案(CSR,Cerificate Signing Request),CSR是您的公鑰證照原始檔案,包含了您的伺服器資訊和您的單位資訊,需要提交給CA認證中心。在生成CSR檔案時會同時生成私鑰檔案,請妥善保管和備份您的私鑰。
生成CSR檔案時,一般需要輸入以下資訊(中文需要UTF8編碼):
Organization Name(O):申請單位名稱法定名稱,可以是中文或英文
Organization Unit(OU):申請單位的所在部門,可以是中文或英文
Country Code(C):申請單位所屬國家,只能是兩個字母的國家碼,如中國只能是:CN
State or Province(S):申請單位所在省名或州名,可以是中文或英文
Locality(L):申請單位所在城市名,可以是中文或英文
Common Name(CN):申請
的具體網站域名
一. 使用OpenSSL工具生成CSR檔案:
openssl req -new -nodes -sha256 -newkey rsa:2048 -keyout myprivate.key -out mydomain.csr
-new 指定生成一個新的CSR,nodes指定私鑰檔案不被加密, sha256 指定摘要演算法,keyout生成私鑰, newkey rsa:2048 指定私鑰型別和長度,最終生成CSR檔案mydomain.csr。
需要輸入的資訊說明如下:
欄位 | 說明 | 示例 |
Country Name | ISO國家程式碼(兩位字元) | CN |
State or Province Name | 所在省份 | ZheJiang |
Locality Name | 所在城市 | HangZhou |
Organization Name | 公司名稱 | HangZhou xxx Technologies, Inc. |
Organizational Unit Name | 部門名稱 | IT Dept. |
Common Name | 申請證照的域名 | |
Email Address | 不需要輸入 | |
A challenge password | 不需要輸入 |
完成命令提示的輸入後,會在當前目錄下生成myprivate.key(私鑰檔案)和mydomain.csr(CSR,證照請求檔案)兩個檔案。
在使用openssl工具生成中文證照時需要注意中文編碼格式,使用utf8編碼,同時需要編譯openssl工具時指定支援utf8格式。
如果對中文有需求,推薦您使用keytool工具。
- 使用keytool工具生成CSR檔案:
- 1 先生成證照檔案keystore, 證照檔案中包含金鑰, 匯出金鑰方式請參考 主流數字證照都有哪些格式?
keytool -genkey -alias mycert -keyalg RSA -keysize 2048 -keystore ./mydomain.jks
keyalg是金鑰型別,必須是RSA, keysize是金鑰長度為2048, alias 是證照別名可自定義, keystore是證照檔案儲存路徑。
首先輸入證照保護密碼,然後依次輸入:
問題 | 說明 | 示例 |
What is your first and last name? | 申請證照的域名 | |
What is the name of your organizational unit? | 部門名稱 | IT Dept. |
What is the name of your organization? | 公司名稱 | HangZhou xxx Technologies,Ltd. |
What is the name of your City or Locality? | 所在城市 | HangZhou |
What is the name of your State or Province? | 所在省份 | ZheJiang |
What is the two-letter country code for this unit? | ISO國家程式碼(兩位字元) | CN |
輸入完成後,確認輸入內容是否正確:[no]: Y (輸入Y)
而後提示輸入金鑰密碼,可以與證照密碼一致,如果一致則直接按回車。
- 2 透過證照檔案生成證照請求:
keytool -certreq -sigalg SHA256withRSA -alias mycert -keystore ./mydomain.jks -file ./mydomain.csr
sigalg是摘要演算法,使用SHA256withRSA, alias 是別名,必須與2.1步中的別名一致,keystore是證照檔案,file是證照請求檔案(CSR),而後提示輸入證照密碼即可以生成mydomain.csr。
需要注意的是:我們對CSR的金鑰長度有嚴格要求,要求是2048位,金鑰型別必須為RSA。如果申請證照是多域名或者通配子域名,在“Common Name”或”What is your first and last name?” 欄位只需要輸入一個域名即可(通配子域名可以輸入“*.example.com”等)。
二、 Apache 生成證照請求檔案(CSR檔案)
(1)方法一( 透過工具)
該方法非常簡單,透過我們【數字證照工具–>線上生成CSR工具】進行CSR產生:
1、輸入相關引數
2、點選“生成CSR”按鈕,如果上述引數OK,出現如下轉換結果,然後複製或下載對應的CSR檔案(certreq.csr)和Key檔案(mykey.key)
(如果上述”郵箱”引數填寫了,那麼伺服器自動把產生的CSR檔案和對應的Key檔案傳送到您的郵箱)
3、備份私鑰並提交證照請求(CSR)
將生成的certreq.csr檔案傳送給易維信(EVTrust)support@evtrust.com郵箱,備份mykey.key檔案,等待證照的簽發。
(注意:在您收到證照籤發郵件並部署好SSL之前,請不要刪除mykey.key檔案,以避免私鑰丟失而導致證照無法安裝。)
(二)方法二( 透過命令列)
該方法基於命令列方式實現,透過openssl工具進行產生:
(示例中
粗體部分為可自定義部分,可根據實際配置情況相應修改)
1、安裝openssl
openssl安裝包下載,請參考openssl官方網站:;或其他提供下載的網站。
2、生成私鑰
openssl genrsa -out D:\ mykey.key 2048
#執行openssl命令,生成2048位長的私鑰mykey.key檔案。如果您需要對 mykey.key 新增保護密碼,請使用 -des3 擴充套件命令。Windows環境下不支援加密格式私鑰, Linux環境下使用加密格式私鑰時,每次重啟Apache都需要您輸入該私鑰密碼(例:openssl genrsa -des3 -out mykey.key 2048)。
3、生成證照請求檔案(CSR)
openssl req -new -subj “/ CN=”IT Dept”/O=”Shenzhen EVTrust Co.,Ltd.”/L=Shenzhen/ST=Guangdong/C=CN” -key D:\mykey.key -out D:\certreq.csr
或
openssl req -new -key
D:\mykey.key -out
D:\certreq.csr #輸入命令後,出車
–>Country Name: #您所在國家的ISO標準代號,中國為CN
–>State or Province Name: //您單位所在地省/自治區/直轄市,比如:Guangdong
–>Locality Name: //您單位所在地的市/縣/區 ,比如:Shenzhen
–>Organization Name: //您單位/機構/企業合法的名稱 ,比如:Shenzhen EVTrust Co.,Ltd.
–>Organizational Unit Name: //部門名稱 ,比如:IT Dept
–>Common Name: //通用名,比如: ; 此項必須與您訪問提供SSL服務的伺服器時所應用的域名完全匹配。
–>Email Address: //您的郵件地址,不必輸入,直接回車跳過
–>”extra”attributes //以下資訊不必輸入,回車跳過直到命令執行完畢。
4、備份私鑰並提交證照請求(CSR)
將生成的certreq.csr檔案傳送給易維信(EVTrust)support@evtrust.com郵箱,備份mykey.key檔案,等待證照的簽發。
(注意:在您收到證照籤發郵件並部署好SSL之前,請不要刪除mykey.key檔案,以避免私鑰丟失而導
全球可信CA機構
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31483669/viewspace-2701841/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 申請程式碼簽名證書如何生成CSR檔案
- iOS開發 生成CSR(.certSigningRequest)檔案iOS
- 什麼是CSR證書申請檔案?
- 怎樣製作證書請求檔案CSR
- Oracle EBS 如何生成trace檔案Oracle
- 如何用Shell指令碼生成XML檔案指令碼XML
- 生成 api檔案API
- SSIS 生成檔案
- myeclipse開發ejb 如何生成介面檔案Eclipse
- 我是如何使用freemarker生成Word檔案的?
- 如何利用ArcMap 10.1生成一個tpk檔案
- 流式生成Excel檔案Excel
- java 生成 excel檔案JavaExcel
- POI生成EXCEL檔案Excel
- win10 如何生成catfile_win10驅動生成cat檔案方法Win10
- Python如何生成windows可執行的exe檔案PythonWindows
- PYTHON如何在記憶體中生成ZIP檔案Python記憶體
- php生成配置檔案config.php 生成陣列配置檔案PHP陣列
- Xilinx COE檔案生成
- MATLAB生成coe檔案Matlab
- python生成CSV檔案Python
- MySql生成ER【StarUML】檔案MySql
- Matlab生成exe檔案Matlab
- php生成靜態檔案PHP
- trace檔案無法生成
- java生成PDF檔案【Z】Java
- Android so檔案生成Android
- python 生成requirements 檔案PythonUIREM
- 命令列生成jar檔案命令列JAR
- freemarker 生成前端檔案前端
- 如何使用 Python 或 Bash動態生成 Jekyll 配置檔案Python
- 【iCore3 雙核心板_FPGA】Quartus 如何生成jic檔案FPGA
- Java 根據模板生成 PDF 檔案 以及 excel 檔案JavaExcel
- Laravel 遷移檔案生成包Laravel
- Matlab生成.exe格式檔案Matlab
- 利用msfvenom生成木馬檔案
- 教你利用PHP生成PDF檔案PHP
- Patch檔案的生成和使用