zoukankan      html  css  js  c++  java
  • 服务器真的不能乱碰...

    前一段时间有空时,学着写了一个小程序,想布署上去,发现对后台的接口服务都需要https,而且必须是TLS1.2,因为是内部应用,基本上没有用https,更别说TLS1.2,抱着试一试的心态,想把这个TLS1.2启用,逛了一圈后,改了下注册表,同时下载了一个IISCrypt的软件,不得不说,这是个好软件,只是一开始接触,没有搞明白,就直接在服务器上运行,然后点那个"Best Practices"按钮,下班前系统没有异常,就没把这事放在心上。

     接下来接二连三的异常,让我下次再也不在Live服务器上做实验了.

    当天晚上,OA团队来电,说OA连不上我们的数据库,(公司里用的OA是泛微),我自已的APP及其他的应用都能够连,所以没有往这上面想,以为是OA那边的问题,后来泛微那边的解决办法是升级jdk的版本,这事我当时还一直很纳闷,连数据库跟jdk版本还有关系?

    几天之后,服务器不知道为何自动重启了,早上进公司后,发现另一台SQL Server与这台SQL Server之间建立的Link Server相互不通,用SSMS连接时提示

    “已成功与服务器建立连接,但是在登录前的握手期间发生错误”

    第一次见到这个错误,啥意思,连接成功,怎么握手期间还错误 ,在网上找了一下答案,然后咨询公司里的Infra Team,他们也没见过这异常,无能为力.

    在排查期间发现了其他的现象,包括:

    1、只是这两台服务器相互之间SQL Server不能互连,这两台服务器与其他的SQL Server都能正常连接。

    2、这两台不光是SQL Sever不能互连,远程桌面也不能互联,每次远程桌面,Event Log里就会多两笔异常日志。提示

    https远程客户端应用程序收到一个TLS 1.0连接请求,但没有任何受客户端应用程序支持的密码套件是受服务器支持的

    3、不能连的那台SQL Server OS是Windows 2003

     找了好几天,最后还是一个外文网站提示了我,我再次打开IISCrypo软件,切换到Cipher Suites 界面,发现下面很多选项都没勾上,因此基本上断定是因为之前的这个工具引起的,当时点了Best Practices,就把一些认为旧的或者是不安全的选项没有勾上,但是因为Windows Server 2003只支持旧的协议和密码套件。于是将Cipher Suites全部选上,重启,问题解决。

    题外话,重启后发现SQL Server 不能启动,提示”sql server 服务因找不到指定的模块“,解决办法是将VIA协议禁止就可以了,只是很好奇为什么会突然不能启动。

    附上一个英文链接,是这个链接让我慢慢接近问题真相。

    https://serverfault.com/questions/166750/why-does-windows-ssl-cipher-suite-get-restricted-under-certain-ssl-certificates

  • 相关阅读:
    MFC TeeChart 用法整理二 (画二维图)
    CFileFind类的详解以及应用实例
    error C2065: 'AfxCriticalTerm' : undeclared identifier 解决办法
    error LNK2001
    ShellExecute详细用法(可以单独打开一个文件)
    java连接SQL Server数据库
    Java 异常处理
    eclipse 无法自动匹配
    Java简单的表格模型
    Java 字符串常用操作(String类)
  • 原文地址:https://www.cnblogs.com/dimg/p/12715879.html
Copyright © 2011-2022 走看看