ASP.NET Core Kestrel部署HTTPS
来源:互联网 发布:南风大大的毒姐数据 编辑:程序博客网 时间:2024/06/08 20:09
ASP.NET Core配置 Kestrel部署HTTPS。现在大部分网站已经部署HTTPS,大家对于安全越来越重视。
今天简单介绍一下ASP.NET Core 部署HTTPS,直接通过配置Kestrel。大家也可以通过前置Nginx来部署HTTPS。
下面直接进入正题。
新建项目并添加引用
新建一个ASP.NET Core Web Application 模板选择空。
新建好项目添加引用 Microsoft.AspNetCore.Server.Kestrel.Https。
Install-Package Microsoft.AspNetCore.Server.Kestrel.Https
如果你的.NET Core SDK 还是1.0 ,那么引用的时候加上版本号Install-Package Microsoft.AspNetCore.Server.Kestrel.Https -Version 1.0.0
生成证书
通过OpenSSL 生成证书
必须先确保安装OpenSSL。
首先自己创建根证书 root 自己做CA也就是发行者。
openssl genrsa -des3 -out root.key
然后按照提示输入密码
openssl req -new -key root.key -out root.csr
输入刚才设置的密码,然后填写一些信息
然后创建一个10年期根证书 root.crt
openssl x509 -req -days 3650 -sha1 -extensions v3_ca -signkey root.key -in root.csr -out root.crt
创建服务器证书
openssl genrsa -des3 -out server.key 2048openssl req -new -key server.key -out server.req
openssl x509 -req -days 730 -sha1 -extensions v3_req -CA root.crt -CAkey root.key -CAserial root.srl -CAcreateserial -in server.csr -out server.crt
openssl pkcs12 -export -in server.crt -inkey server.key -out server.pfx
最终得到的server.pfx 就是可以用来在配置HTTPS。
将server.pfx 复制到项目根目录
然后打开Program.cs 更改代码如下:
public class Program { public static void Main(string[] args) { var host = new WebHostBuilder() .UseKestrel(option=> { option.UseHttps("server.pfx", "linezero"); }) .UseUrls("https://*:443") .UseContentRoot(Directory.GetCurrentDirectory()) .UseIISIntegration() .UseStartup<Startup>() .Build(); host.Run(); } }
然后选择使用 Kestrel 运行。
打开浏览器输入 https://localhost/
由于证书是自己生成,显示红标也就是没有得到验证。
原文地址: http://www.cnblogs.com/linezero/p/aspnetcorehttps.html
.NET社区新闻,深度好文,微信中搜索dotNET跨平台或扫描二维码关注
- ASP.NET Core Kestrel部署HTTPS
- ASP.NET Core Kestrel 中使用 HTTPS (SSL)
- ASP.NET Core Kestrel 中使用 HTTPS (SSL)
- 结合Jexus + Kestrel 部署 asp.net core 生产环境
- ASP.NET Core的Kestrel服务器
- ASP.NET Core的Kestrel服务器
- ASP.NET Core Web服务器 Kestrel和Http.sys 特性详解
- asp.net core 负载均衡集群搭建(centos7+nginx+supervisor+kestrel)
- ASP.NET Core Docker部署
- ASP.NET Core Docker部署
- ASP.net Core 部署说明(Ubuntu)
- ASP.net Core 部署说明(CentOS)
- Azure 部署 Asp.NET Core Web App
- ASP.net Core部署说明(Ubuntu)
- ASP.net Core部署说明(Ubuntu)
- ASP.net Core部署说明(Ubuntu)
- ASP.net Core部署说明(Ubuntu)
- ASP.net Core部署说明(Ubuntu)
- Jexus 5.8.2 正式发布为Asp.Net Core进入生产环境提供平台支持
- 缓存在大型网站架构中的应用
- .NET应用迁移到.NET Core--调查案例
- 利用 async & await 的异步编程
- ASP.NET Core 之 Identity 入门(三)
- ASP.NET Core Kestrel部署HTTPS
- .NET开源两年之后社区贡献如何
- 图片轮播
- 细说ASP.NET Core静态文件的缓存方式
- JavaScript注意事项
- 微软发布Visual Studio Mac预览版
- .NET应用迁移到.NET Core(一)
- .NET应用迁移到.NET Core(二)风险评估
- .NET应用迁移到.NET Core(三)从商业角度看移植过程