当前位置:首页 > CN2资讯 > 正文内容

KEMS服务器 kestrel服务器部署

2天前CN2资讯

 .net core 3.0 网站发布到centos后,绑定ssl证书,一个服务器绑一个证书,一个服务器绑多个证书

开始之前:对于windows服务器不存在这个问题,在iis中绑定证书是非常简单的一件事,不是本篇博客讨论的范围,绑定多个证书一样

3.0中指定url的方式可以通过在配置文件中加urls:"http://*:5000"这种方式来指定

发布到centos的.net core网站我是用 Kestrel托管的。这里也只针对这一种情况进行描述

1,在program.cs中CreateHostBuilder 替换成如下内容:

public static IHostBuilder CreateHostBuilder(string[] args) => Host.CreateDefaultBuilder(args) .ConfigureWebHostDefaults(webBuilder => { webBuilder.UseStartup<Startup>() .UseKestrel((context, options) => { options.Configure(context.Configuration.GetSection("Kestrel")); }); });

这段代码描述的是Kestrel服务的option从配置文件中读取 

紧接着在startup中增加 app.UseHttpsRedirection(); app.UseHsts();//默认是开启的,如果是,就不用管它

2,在配置文件appsettings.json中增加,这是单独的配置节点 ,其中path,是pfx文件的位置,password是证书的密码,在阿里云申请的证书,下载iis版的就有这两

"Kestrel": { "Limits": { "MaxRequestBodySize": 9223372036854775807, "MaxRequestBufferSize": 9223372036854775807, "MaxRequestLineSize": 9223372036854775807 }, "Endpoints": { "Https": { "Url": "https://*:443", "Certificate": { "Path": "/home/cert/www.xxxx.pfx", "Password": "xxx" } } } }

这里的配置项可以参考微软的文档,基本上大多数需要代码显式指定的配置在appsettings.json中都是可以直接配置的

参考文档地址:https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/servers/kestrel?view=aspnetcore-3.1#endpoint-configuration

如果一台服务器里边只有一个需要ssl证书的网站,那么到这里,问题就解决了。

很不幸,我的目标是在一台服务器里边使用两个ssl证书,分别对两个网站做ssl传输加密,在查过微软的部分文档后,没有找到相关的解决方案,反而是找到了nginx。在linux用nginx可以解决一台服务器绑定两个ssl的问题

首先是安装:yum install nginx,一路y,安装完毕后,nginx的主配置文件是   /etc/nginx/nginx.conf 直接修改这个文件,分别对N个需要ssl的站点进行配置,如下,监听端口都是443,区别是server_name ,根据需要配置的域名,分别写对应的server_name,

加粗部分是需要特别关注的,pem,和key这两 如果是在阿里云申请的ssl,下载的时候选择 nginx版的,就包含下边需要的两文件,可以放到任意位置,这里填写的是这两文件的路径,location里边的内容是转发的本地端口对应的就是域名对应的子网站。子网站必须是发布了的,可访问的站点,另外需要特别注意一下子网站不需要任何证书,只需要可以访问即可

server { listen 443; server_name ; ssl on; root '/'; ssl_certificate 'xxxx.pem'; ssl_certificate_key 'xxxx.key'; ssl_session_cache shared:SSL:1m; ssl_session_timeout 10m; ssl_ciphers PROFILE=SYSTEM; ssl_prefer_server_ciphers on; include /etc/nginx/default.d/*.conf; location / { proxy_pass http://127.0.0.1:5000; } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } }server { listen 443; server_name ; ssl on; root '/'; ssl_certificate 'xxxx.pem'; ssl_certificate_key 'xxxx.key'; ssl_session_cache shared:SSL:1m; ssl_session_timeout 10m; ssl_ciphers PROFILE=SYSTEM; ssl_prefer_server_ciphers on; include /etc/nginx/default.d/*.conf; location / { proxy_pass http://127.0.0.1:5001; } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } }

 

然后启动nginx服务  systemctl restart nginx.service .如果配置文件写的有问题,服务会启动失败,错误日志位置在nginx.conf中可以找到

服务启动完毕后,就可以看到效果了



    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/20523.html

    分享给朋友:

    “KEMS服务器 kestrel服务器部署” 的相关文章

    mac ssh工具推荐:提升远程工作效率的最佳选择

    在现代计算机网络中,SSH(Secure Shell)是一个重要的工具。它为用户提供了一种安全的远程登录协议,广泛应用于网络管理、服务器配置等场景。我自己在处理多台服务器时,总是通过SSH来保证安全性和网络的高效性。通过SSH,我可以在远程计算机上执行命令和操作,感觉就像在本地电脑上一样。 在Mac...

    香港云电脑:灵活、高效、经济的现代计算解决方案

    香港云电脑概述 香港云电脑,是基于云计算技术的一种崭新电脑服务模式。其实你可以把它想象成一种“租赁”的概念。我们不需要像以前那样花大价钱去购买实体电脑,而是可以通过网络租用需要的计算、存储和软件资源,与此同时,拥有几乎完整的电脑功能。这种模式的好处多多,包括灵活性、低成本、高效性以及可扩展性。无论是...

    全面掌握VPS线路检测:提高网络性能的关键工具和方法

    当我们讨论VPS(虚拟专用服务器)时,线路检测是不可或缺的一部分。VPS线路检测主要是评估VPS网络性能的一个环节,涵盖了多个重要的测试方法,比如ping值测试、路由跟踪,以及下载速度测试。每一种检测方式都有其独特的功能,通过这些手段,我们能够获取到相关的网络性能数据,从而更好地了解VPS的使用状态...

    VPS是干嘛用的:解析虚拟专用服务器的优势与应用

    在当今互联网的快速发展下,VPS(Virtual Private Server,虚拟专用服务器)逐渐成为了个人和企业首选的主机类型。简单来说,VPS就是一种将物理服务器分割成多个虚拟服务器的技术。每个虚拟服务器都能独立运行操作系统,用户可以自由管理自己的环境,就像拥有一台独立的服务器一样。VPS通过...

    探索4837线路:高速度、稳定性与价格优势的网络选择

    在当今网络时代,选择合适的线路对于提高上网体验至关重要。4837线路就是其中一个备受关注的选项。它主要指在回国或出国前,通过一个名为4837的节点进行连接,进行跨国网络传输。这个线路归类为联通线路,其特点在于相对负载较低,使得整体表现更胜一筹。经过近年来的广泛应用,4837线路逐渐成为热门选择。 我...

    AS4837和AS9929线路在国际通信中的优势与应用分析

    在了解AS4837线路的历史背景时,回顾其起源与发展非常重要。AS4837线路,通常被称为中国联通的骨干网线路,最早始建于20世纪90年代。那时,随着互联网的兴起,全球对网络基础设施的需求不断增加,中国决定建立更强大的国际连接,通过AS4837将中国大陆与香港、美国、日本、韩国等多地紧密相连。这个决...