першая старонкаПадручнік па праграмным забеспячэнніПрычыны і рашэнні "Запыт спынены: не ўдалося стварыць бяспечны канал SSL/TLS"
Прычыны і рашэнні "Запыт спынены: не ўдалося стварыць бяспечны канал SSL/TLS"

Апісанне: Запыт спынены: не ўдалося стварыць бяспечны канал SSL/TLS. Немагчыма стварыць бяспечны канал SSL/TLS. Платформы зборкі: Windows Server 2012, Windows 7 Service Pack 1 (SP1) і Windows Server 2008 R2 SP1

[эпізод] загрузка сайта Гэта інструмент загрузкі ўсяго сайта, каб загрузіць яго адным пстрычкай мышы. Ён просты ў выкарыстанні і мае шматструменныя задачы.

Рашэнне 1: Узровень кода

Усталюйце код перад HttpWebRequest

ServicePointManager.Expect100Continue = true; ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls; ServicePointManager.ServerCertificateValidationCallback = (sender, certificate, chain, errors) => true;

Рашэнне 2: Сістэмны ўзровень

Калі апісаны вышэй метад не працуе, гэта праблема сістэмнага ўзроўню, абнавіце патч сістэмы ў адпаведнасці з сістэмай, якой вы зараз карыстаецеся.

Абнаўленне для ўключэння TLS 1.1 і TLS 1.2 у якасці пратаколаў бяспекі па змаўчанні ў WinHTTP у Windows, гэта абнаўленне забяспечвае падтрымку бяспекі транспартнага ўзроўню (TLS) у Windows Server 2012, Windows 7 з пакетам абнаўлення 1 (SP1) і Windows Server 2008 R2 SP1 1.1 і падтрымку TLS 1.2, звярніцеся да афіцыйнай дакументацыі https://support.microsoft.com/en-us/help/3140245/update-to-enable-tls-1-1-and-tls-1-2-as-default-secure-protocols-in-wi

Абнаўленне патча KB3140245

Уключыце TLS 1.1 і 1.2 у Windows 7 на ўзроўні кампанента SChannel (з любым з абнаўленняў ніжэй)

Спосаб 1. Для абнаўлення MicrosoftEasyFix51044.msi выкарыстоўвайце ўсталявальны пакет абнаўлення Microsoft
Спосаб 2: абнаўленне рэестра ўручную

Скапіруйце наступны код рэестра і імпартуйце яго ў рэестр. Стварыце новы тэкставы файл, змяніце суфікс txt на reg (ключ рэестра) і імпартуйце (перад імпартам зрабіце рэзервовую копію)

WIN7 64
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\WinHttp] "DefaultSecureProtocols"=dword:00000a00 [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Internet Settings\WinHttp] "DefaultSecureProtocols"=dword:00000a00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings] "SecureProtocols"=dword:00000a80 [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings] "SecureProtocols"=dword:00000a80
Windows Server
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\WinHttp] "DefaultSecureProtocols"=dword:00000800 [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Internet Settings\WinHttp] "DefaultSecureProtocols"=dword:00000800 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client] "DisabledByDefault"=dword:00000000 "Enabled"=dword:00000001 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server] "DisabledByDefault"=dword:00000000 "Enabled"=dword:00000001 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client] "DisabledByDefault"=dword:00000000 "Enabled"=dword:00000001 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server] "DisabledByDefault"=dword:00000000 "Enabled"=dword:00000001

Праверце, ці падтрымлівае сістэма TLS1.2, TLS1.3

Адкрываецца PowerShell:

[Net.ServicePointManager]::SecurityProtocol [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Ssl3 -bor [Net.SecurityProtocolType]::Tls -bor [Net.SecurityProtocolType]::Tls11 -bor [Net.SecurityProtocolType]::Tls12

Першы радок кода правярае падтрымліваемую версію TLS.

Рашэнне 3: Абнавіце сістэму

Ні адзін з папярэдніх двух метадаў не будзе працаваць, таму вы можаце выкарыстоўваць толькі канчатковы метад:

  • Абнавіць сістэму да Windows 10 і Windows Server 2019 (падтрымлівае TLS1.2);
  • Абнавіце сістэму да Windows 11 і Windows Server 2022 (падтрымлівае TLS1.3).

Заўвага: для канкрэтных версій TSL, якія падтрымліваюцца кожнай версіяй Windows, звярніцеся да дадатковай інфармацыі ў гэтым артыкуле.


Іншы даведачны кантэнт

Іншы даведачны змест адзін

Рашэнні існуюць, але яны залежаць ад версіі фрэймворка:

.NET 4.6 і вышэй. Для падтрымкі TLS 1.2 вам не трэба рабіць ніякіх дадатковых работ, ён падтрымліваецца па змаўчанні.

.NET 4.5. TLS 1.2 падтрымліваецца, але гэта не пратакол па змаўчанні. Вы павінны выбраць, каб выкарыстоўваць яго. Наступны код усталёўвае TLS 1.2 па змаўчанні, не забудзьцеся выканаць яго перад падключэннем да бяспечнага рэсурсу:

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12

.NET 4.0. TLS 1.2 не падтрымліваецца, але калі ў вашай сістэме ўсталяваны .NET 4.5 (або вышэй), у вас усё яшчэ ёсць магчымасць выкарыстоўваць TLS 1.2, нават калі ваша праграма не падтрымлівае TLS 1.2. Адзіная праблема ў тым, што SecurityProtocolType у .NET 4.0 не мае запісу для TLS1.2, таму мы павінны выкарыстоўваць лікавае прадстаўленне гэтага значэння пераліку:

ServicePointManager.SecurityProtocol =(SecurityProtocolType)3072;

.NET 3.5 або ніжэй. TLS 1.2(*) не падтрымліваецца, і абыходнага шляху няма. Абнавіце сваю праграму да апошняй версіі фрэймворка.

PS Для сцэнарыя 3 існуе таксама ўзлом рэестра, які прымусіць 4.5 выкарыстоўваць TLS 1.2 па змаўчанні без неабходнасці праграмнага прымусу. PPS Як адзначае ніжэй Крысціян Поп ад Microsoft, для .NET 3.5 даступны апошні патч, які падтрымлівае TLS1.2.

Глядзіце:

  • KB3154518 – Reliability Rollup HR-1605 – NDP 2.0 SP2 – Win7 SP1/Win 2008 R2 SP1
  • KB3154519 – Reliability Rollup HR-1605 – NDP 2.0 SP2 – Win8 RTM/Win 2012 RTM
  • KB3154520 – Reliability Rollup HR-1605 – NDP 2.0 SP2 – Win8.1RTM/Win 2012 R2 RTM
  • KB3156421 -1605 HotFix Rollup through Windows Update for Windows 10.

Іншы даведачны змест 2

Магчыма, даўжыня ключа сертыфіката, прадстаўленая вэб-сайтам, складае 512 біт, і ў адпаведнасці з дзеючымі галіновымі стандартамі ён павінен утрымліваць адкрыты ключ не менш за 2048 біт. Абнаўленне сістэмы бяспекі Microsoft ад верасня 2016 г. адказала на гэтую праблему, заявіўшы, што калі даўжыня адкрытага ключа менш за 2048 байт (напрыклад, RSA 512),Windows можа адмяняць злучэнні HTTPS

Усталяваныя абнаўленні ёсць

2012 R2 and Windows 8

  • KB3185331
  • KB3188743
  • KB3174644

2008 R2 and Windows 7

  • KB3185278
  • KB3185330
  • KB3192391
  • KB3175024
  • KB3172605

Іншы даведачны кантэнт тры

SecurityProtocolType.Tls1.0=0xC0; SecurityProtocolType.Tls1.1=0x300; SecurityProtocolType.Tls1.2=0xC00;
.net 4.0/4.5 значэнне па змаўчанні: SecurityProtocolType.Ssl3 .net 4.6/4.7 значэнне па змаўчанні: SecurityProtocolType.Tls11 |

https://support.microsoft.com/en-us/help/3069494/cannot-connect-to-a-server-by-using-the-servicepointmanager-or-sslstre

SCH_USE_STRONG_CRYPTO Гэты сцяг будзе аўтаматычна выкарыстоўвацца ў .NET Framework 4.6 https://support.microsoft.com/en-us/help/3154518/support-for-tls-system-default-versions-included-in-the-net-framework У Win7Sp1 і .Net 3.5.1 падтрымліваецца TLS1.2

ServicePointManager.SecurityProtocol &= ~SecurityProtocolType.Ssl3; //Дадаць падтрымку для 1.1 і 1.2

Выснова TLS1.2 такая:

  • Усталяванне .Net3.5.1 патрабуе патча, а затым дадання пераліку TLS1.2
  • Для ўстаноўкі .Net 4.0 неабходна змяніць рэестр, а затым дадаць пералік TLS1.2
  • Пасля ўстаноўкі .Net4.5 вам таксама трэба дадаць пералік TLS1.2
  • Пасля ўстаноўкі .Net4.6.1 TLS1.2 падтрымліваецца па змаўчанні.

Мадыфікацыя рэестра пад .net4

Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319] "SchUseStrongCrypto"=dword:00000001 [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319] "SchUseStrongCrypto"=dword:00000001

дадатковыя матэрыялы

Гэты артыкул напісанызагрузка сайтаСабрана і ўпарадкавана, змест паходзіць з Інтэрнэту, калі ласка, указвайце крыніцу пры перадруку, дзякуй.

Праграмнае забеспячэнне: загрузка інтэрфейснага шаблона; SEO-аптымізацыя; Заўвага: гэта праграмнае забеспячэнне не з'яўляецца хакерскай праграмай і не можа загружаць фонавыя дадзеныя!
Адмова ад адказнасці: паслуга прызначана для асабістага вывучэння, даследавання або ўдзячнасці, а таксама ў іншых некамерцыйных або некамерцыйных мэтах, але ў той жа час яна павінна адпавядаць палажэнням закона аб аўтарскім праве і іншым адпаведным законам і не павінна парушаць законныя правы гэтага вэб-сайта і ўладальнікаў адпаведных правоў. Рызыкі, звязаныя з выкарыстаннем інструментаў на гэтым сайце, не маюць дачынення да гэтага праграмнага забеспячэння.
Аўтарскае права © 2019-2024 Rabbit Software. Усе правы абаронены Гуандун ICP № 19111427-2
Інфармацыя аб падручніку Кіраўніцтва карыстальніка Тэмы сайта