「Dotnet 工具箱」 自动生成并绑定 Https 证书

Posted dotNET跨平台

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了「Dotnet 工具箱」 自动生成并绑定 Https 证书相关的知识,希望对你有一定的参考价值。

这里是 Dotnet 工具箱,定期分享 Dotnet 有趣,有用的工具,不要忘记关注。

介绍

LettuceEncrypt 是一个使用 C# 开发的免费的工具,它和证书颁发机构 (CA)集成,比如 Let's Encrypt,它使用了 ACME 协议,可以为 .NET Core 应用自动获取 HTTPS 证书。 

如何使用

  1. 1. 在 Nuget 中搜索并安装 LettuceEncrypt。

  1. 1. 在 Startup 的 ConfigureServices 方法中, 注入 LettuceEncrypt 服务。

using Microsoft.Extensions.DependencyInjection;

public class Startup

    public void ConfigureServices(IServiceCollection services)
    
        services.AddLettuceEncrypt();
    
  1. 1. 配置 HTTPS 证书参数.// appsettings.json

        "LettuceEncrypt":   
            "DomainNames": [ "example.com", "www.example.com" ],  
            "EmailAddress": "it-admin@example.com"
        
    就是这么简单,在 .NET Core 程序启动后,会自动请求,生成,绑定 Https 证书,不需要额外的一些配置,是非常方便的。

    作者也介绍了下面几种 .NET Core 程序部署方式的支持情况,看看它是否适合你的场景。

在这种情况下,ASP.NET Core 由 Kestrel 服务(默认的进程内 HTTP 服务器)托管,这个库会使用自动生成 Https 证书并配置 Kestrel。

在这种情况下,ASP.NET Core 由 IIS 托管,IIS 不支持动态配置 HTTPS 证书,所以没有办法支持。不过您可以使用其他的工具生成证书,然后在 IIS 上进行配置。

TCP 负载均衡,支持。

反向代理,不支持。

github 地址: https://github.com/natemcmaster/LettuceEncrypt

以上是关于「Dotnet 工具箱」 自动生成并绑定 Https 证书的主要内容,如果未能解决你的问题,请参考以下文章

如何将 c# dotnet core 3.1 微服务流绑定到涡轮服务器流

dotnet 基于 dotnet format 的 GitHub Action 自动代码格式化机器人

dotnet aspnetcore docker build 失败并显示 145 错误代码

没有对 Visual Studio 12 2013 的 DOTNET 绑定支持

微软的dotnet-new工具可以使创建JavaScript Web 程序变得更简单

.Net Core 中的 Http 绑定使用带有 wcf 引用的库项目