簡體   English   中英

如何生成 fullchain.pem 和 privkey.pem?

[英]How do I generate fullchain.pem and privkey.pem?

我正在嘗試安裝這個項目: https://github.com/versatica/mediasoup-demo

它需要fullchain.pemprivkey.pem文件。 如何在 Ubuntu 20 上使用 openssl 或類似的東西生成這些?

盡管接受的答案似乎(部分)有效,但它有缺陷。 以下內容為您提供了自簽名證書所需的大部分內容:

openssl req -new -x509 -nodes -subj "/CN=my.root" -newkey rsa:2048 -keyout ca.key -out ca.crt -reqexts v3_req -extensions v3_ca
openssl req -new -nodes -sha256 -newkey rsa:2048 -keyout domain.key -config ext.conf -out domain.csr
openssl x509 -req -in domain.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out domain.crt -days 500 -sha256 -extfile ext.conf -extensions req_ext

樣本ext.conf

[req]
default_bits = 2048
prompt = no
default_md = sha256
req_extensions = req_ext
distinguished_name = some_dn

[some_dn]
C = US
ST = Florida
L = Jacksonville
O = SomeOrg
emailAddress = some@email.com
CN = thedomain.com

[req_ext]
subjectAltName = @alt_names

[alt_names]
DNS.1 = otherdomain.com
IP.1 = 1.2.3.4

筆記:

  • 運行cp domain.key privkey.pem & cat domain.crt ca.crt > fullchain.pem以獲取 OP 提到的文件。 (與接受的答案不同,全鏈必須包含 CA)。
  • 如果您希望密鑰具有密碼,請省略-nodes
  • ext.conf中, CN是您的域, alt_names包含它的別名(特別是如果您的服務器尚未指向域,請將您的 IP 放在這里)。
  • 在客戶端安裝ca.crt作為根 CA,以便識別您的證書。
  • -reqexts v3_req -extensions v3_ca確保 CA 證書與 android 客戶端的兼容性。
openssl genrsa > privkey.pem
openssl req -new -x509 -key privkey.pem > fullchain.pem

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM