什么是 .crt 和 .key 文件以及如何生成它们?

Moh*_*ari 89 ssl java virtualhost ssl-certificate

我有以下配置:

SSLEngine on
SSLCertificateFile /etc/httpd/conf/login.domain.com.crt
SSLCertificateKeyFile /etc/httpd/conf/login.domain.com.key
SSLCipherSuite ALL:-ADH:+HIGH:+MEDIUM:-LOW:-SSLv2:-EXP
Run Code Online (Sandbox Code Playgroud)

但我不知道如何生成.crt.key文件。

lyn*_*man 92

crt和 key 文件代表证书的两个部分,key 是证书的私钥,crt 是签名证书。

这只是生成证书的一种方法,另一种方法是将两者都包含在 pem 文件中或 p12 容器中的另一个文件中。

您有多种方法可以生成这些文件,如果您想对证书进行自签名,您可以发出以下命令

openssl genrsa 2048 > host.key
chmod 400 host.key
openssl req -new -x509 -nodes -sha256 -days 365 -key host.key -out host.cert
Run Code Online (Sandbox Code Playgroud)

请注意,对于自签名证书,您的浏览器会警告您该证书不受“信任”,因为它尚未由浏览器信任列表中的证书颁发机构签名。

从那时起,您可以通过创建 CA 来生成自己的信任链,也可以从 Verisign 或 Thawte 等公司购买证书。

  • https://letsencrypt.org/ 是一个免费的 ssl 提供商。看看它,而不是向那些公司支付很多钱。 (5认同)

Vol*_*olz 12

这些是 SSL 证书的公共 (.crt) 和私有 (.key) 部分。请参阅此问题以获取大量相关信息,例如,如果您想自己生成证书或购买证书。