今天在Windows Admin Center里试图安装扩展插件的时候遇到一个问题。在可用插件里没有任何显示,包括各种微软自己开发的插件。

在Feeds里删除默认的链接,重新添加的时候也会遇到报错。说这不是一个有效的NuGet Feed。

经过检查,在其它WAC的配置中,这里也是同样的默认配置,是可以列出可用的扩展的。接着,就是要验证一下是否这个地址真的有问题,无法访问。在安装WAC的服务器上,访问一下这个地址https://aka.ms/sme-extension-catalog-feed 结果遇到一个TLS的报错。

这个好解决。启用这个服务器上对TLS1.2的支持就可以了。就是一些注册表键值。这个网上有很多文章。具体就是在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client

下面新建两个RED_DWORD的键值DisabledByDefault和Enabled。https://www.cnblogs.com/qishine/p/16700672.html

另外,IE选项里的高级设置里需要把TLS1.2也启用。重启系统后可以再试一下访问。因为TLS协议设置必须重启生效。

同时,也顺便增加Powershell使用TLS 1.2的访问,因为默认是不带的。 以前的文章里提到过,用一条命令就可以了。

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

重启后,发现问题依旧。这时候,再用Firefox试了一下,发现这个地址是可以打开的。

那么,现在问题就很明确了,问题出在IE这里。系统本身无法访问肯定和IE的表现一样。既然都按照要求配置了TLS1.2,那么到底哪里出问题了呢?这时候用之前文章里提到过的ssllabs网站,检测一下这个网站支持的协议。

可以看到,支持TLS 1.2和1.3。不过我的Windows 2016服务器,不支持TLS 1.3的。所以现在问题来了,TLS 1.2究竟启用成功了吗?这个需要验证一下。于是,只能先抓包看一下了。

可以看到,确实是用到了TLS 1.2但是,随后这个链接就被服务器reset了,导致无法连接。接下去需要比对一下正常情况时的包。

可以看到正常的情况下,在Client Hello之后,会有Server Hello的回包。这里首先确定也是TLS 1.2协议。但是为什么同样的协议IE和Firefox表现会不同呢?再仔细看Server Hello的回包,里面显示了使用的加密算法TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384。这个对比前面IE的Client Hello里提到的20种加密算法,仔细查看是确实没有的。所以,思路来到怎么增加这种加密算法呢?

经过查找,微软在Windows 2016的时候引入了TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384。具体可以看这篇官方文章https://docs.microsoft.com/en-us/windows-server/security/tls/tls-schannel-ssp-changes-in-windows-10-and-windows-server

也就是说不可能是因为系统版本过低导致的问题。而且Firefox也确实使用了这个加密算法。要启用这种算法,或者说调整算法的优先级,可以通过组策略。具体位置是Computer Settings--Administrative Templates--Network--SSL Configuration Settings中的SSL Cipher Suite Order。这个策略默认是不启用的。

找打它,启用后会发现我们需要TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384是包含在里面的。然后gpupdate /force,我这里又重启了一下服务器。

重新启动后,问题解决。

其实仔细看之前的IE报错,它提到了是使用了不支持的协议或者加密算法比如RC4。今天的问题就是加密算法不支持,服务器和客户端没有协商通过。

但是仔细看了一下ssllabs的检查也包含了加密算法。

仔细看,这里TLS 1.2支持的强加密算法只有3种。IE试图使用的20种算法里有不少是受支持的弱加密算法,比如0x28, 0x27, 0x14等。但是很奇怪不知道为什么服务器不使用就直接重置了链接,或许是微软服务器的安全性特别高吧。还有就是尽量用最新的系统,比如Windows server 2022,就能支持TLS 1.3更安全也能避免很多问题了。

Windows服务器TLS协议的更多相关文章

  1. 在Windows服务器上启用TLS 1.2及TLS 1.2基本原理

    在Windows服务器上启用TLS 1.2及TLS 1.2基本原理 在Windows服务器上启用TLS 1.2及TLS 1.2基本原理 最近由于Chrome40不再支持SSL 3.0了,GOOGLE认 ...

  2. ubuntu客户端使用RDP协议连接windows服务器

    如果服务器是linux或unix,可以使用ssh远程连接服务器.也有服务器是windows的,通常使用RDP协议进行连接. 1  环境 客户端:ubuntu14.04 LST 服务器:windows ...

  3. Windows IIS 服务器配置HTTPS启用TLS协议。

    好消息, 程序员专用早餐机.和掌柜说 ideaam,可以节省20元. 点击链接   或復·制这段描述¥k3MbbVKccMU¥后到淘♂寳♀ Windows IIS 服务器配置HTTPS启用TLS协议. ...

  4. 协议森林17 我和你的悄悄话 (SSL/TLS协议)

    作者:Vamei 出处:http://www.cnblogs.com/vamei 转载请先与我联系. TLS名为传输层安全协议(Transport Layer Protocol),这个协议是一套加密的 ...

  5. 浅谈HTTPS和SSL/TLS协议的背景和基础

    相关背景知识要说清楚HTTPS协议的实现原理,至少要需要如下几个背景知识.大致了解几个基础术语(HTTPS.SSL.TLS)的含义大致了解HTTP和TCP的关系(尤其是"短连接"和 ...

  6. SSL/TLS协议运行机制的概述

    互联网的通信安全,建立在SSL/TLS协议之上. 本文简要介绍SSL/TLS协议的运行机制.文章的重点是设计思想和运行过程,不涉及具体的实现细节.如果想了解这方面的内容,请参阅RFC文档. 一.作用 ...

  7. 浅谈 HTTPS 和 SSL/TLS 协议的背景与基础

    来自:编程随想   >> 相关背景知识 要说清楚 HTTPS 协议的实现原理,至少需要如下几个背景知识. 大致了解几个基本术语(HTTPS.SSL.TLS)的含义 大致了解 HTTP 和 ...

  8. SSL/TLS协议运行机制

      转载自http://www.ruanyifeng.com/blog/2014/02/ssl_tls.html 互联网的通信安全,建立在SSL/TLS协议之上. 本文简要介绍SSL/TLS协议的运行 ...

  9. 【转】SSL/TLS协议运行机制的概述

    互联网的通信安全,建立在SSL/TLS协议之上. 本文简要介绍SSL/TLS协议的运行机制.文章的重点是设计思想和运行过程,不涉及具体的实现细节.如果想了解这方面的内容,请参阅RFC文档. 一.作用 ...

随机推荐

  1. Mybatis-Plus介绍

    Mybatis-Plus介绍 Mybatis-Plus概念 Mybatis-Plus介绍 官网https://mybatis-plus/或https://mp.baomidou.com/ mybati ...

  2. 上传几张.NET5之后的机器人logo

    上传几张.NET5之后的机器人logo

  3. 【微服务专题之】.Net6下集成消息队列上-RabbitMQ

    ​ 微信公众号:趣编程ACE关注可了解更多的.NET日常实战开发技巧,如需源码 请公众号后台留言 源码;[如果觉得本公众号对您有帮助,欢迎关注] .Net中RabbitMQ的使用 [微服务专题之].N ...

  4. 阿里 Maven仓库

    <?xml version="1.0" encoding="UTF-8"?> <settings xmlns="http://mav ...

  5. 161_可视化_Power BI 复刻 GitHub 贡献热力图

    161_可视化_Power BI 复刻 GitHub 贡献热力图 一.背景 在 GitHub 上,有用户的贡献度的热力图如下: Power BI 公共 web 效果:https://demo.jiao ...

  6. InvalidClassException异常_原理和解决方案和练习_序列化集合

    InvalidClassException异常_原理和解决方案 当JVM反序列化对象的时候,能找到class文件,但是class文件在序列化对象之后发生了修改,那么反序列化操作也会失败,抛出一个Inv ...

  7. Mysql 数据恢复流程 基于binlog redolog undolog

    注:文中有个易混淆的地方 sql事务,即每次数据库操作生成的事务,这个事务trx_id只在undolog里存储,同时undolog维护了此事务是否完成的状态. 日志持久化事务,为了保证redolog和 ...

  8. python自带gui插件tkinter使用小结

    1.tkinter简介 Tkinter(即 tk interface,简称"Tk")本质上是对 Tcl/Tk 软件包的 Python 接口封装,它是 Python 官方推荐的 GU ...

  9. [极客大挑战 2019]BabySQL-1|SQL注入

    1.打开题目之后,查看源代码信息,发现check.php文件,结果如下: 2.那就只能尝试登录,经测试当输入or.by.select.from.and.where等关键字时会被过滤且会被过滤为空(过滤 ...

  10. 【洛谷P1754 球迷购票问题】题解

    传送门 卡特兰数经典 \(\texttt{AB}\) 分拆问题. 分析: 题意相当于排列 \(n\) 个 \(\texttt A\) 和 \(n\) 个 \(\texttt B\),使得相邻 \(\t ...