如何使用 Kestrel/linux 中托管的 aspnet core 3.1 配置签名 SSL 证书
How to configure signed SSL certificates with aspnet core 3.1 on hosted in Kestrel/linux
我设法获得了一个 letsencrypt 签名证书,以便在主机上为我的域正确启用 SSL。现在我不明白如何将它绑定到我的应用程序 运行 on ubuntu:
我使用以下设置私钥:
webBuilder.UseKestrel((hostingContext, options) =>
{
options.ListenAnyIP(443, loptions => loptions.UseHttps("/etc/letsencrypt/live/mydomain.com/privkey.pem"));
});
The server mode SSL must use a certificate with the associated private key
我不清楚如何在不使用 apache 或 nginx 的情况下绑定 public 和私钥并远程使用它。
您首先需要使用 OpenSSL 将您的 私钥 和 certifcate 转换为 pfx 证书:
openssl pkcs12 -inkey privatekey.pem -in mycert.cert -export -out mycertificate.pfx
然后,您可以在 Kestrel 的 appsettings.json 文件中以这种方式使用它:
"Kestrel": {
"EndPoints": {
"HttpsDefaultCert": {
"Url": "https://*:443"
},
"Http": {
"Url": "http://*:80"
}
},
"Certificates": {
"Default": {
"Path": "mycertificate.pfx",
"Password": "MyCertificatePassword"
}
}
}
我设法获得了一个 letsencrypt 签名证书,以便在主机上为我的域正确启用 SSL。现在我不明白如何将它绑定到我的应用程序 运行 on ubuntu:
我使用以下设置私钥:
webBuilder.UseKestrel((hostingContext, options) =>
{
options.ListenAnyIP(443, loptions => loptions.UseHttps("/etc/letsencrypt/live/mydomain.com/privkey.pem"));
});
The server mode SSL must use a certificate with the associated private key
我不清楚如何在不使用 apache 或 nginx 的情况下绑定 public 和私钥并远程使用它。
您首先需要使用 OpenSSL 将您的 私钥 和 certifcate 转换为 pfx 证书:
openssl pkcs12 -inkey privatekey.pem -in mycert.cert -export -out mycertificate.pfx
然后,您可以在 Kestrel 的 appsettings.json 文件中以这种方式使用它:
"Kestrel": {
"EndPoints": {
"HttpsDefaultCert": {
"Url": "https://*:443"
},
"Http": {
"Url": "http://*:80"
}
},
"Certificates": {
"Default": {
"Path": "mycertificate.pfx",
"Password": "MyCertificatePassword"
}
}
}