Показаны сообщения с ярлыком Windows Server 2008. Показать все сообщения
Показаны сообщения с ярлыком Windows Server 2008. Показать все сообщения

четверг, 18 ноября 2021 г.

.NET Ошибка: Не удалось создать защищенный канал ssl/tls на Windows Server 2008 R2 / 2012 R2(The request was aborted: Could not create SSL/TLS secure channel) TLS 1.2

Ситуация: 

С недавних пор наши приложения на .net 4.5 в функционал которых, кроме прочего, входит загрузка страниц с сайтов. Перестали работать на серверах Windows Werver 2008 R2 и Windows Server 2012 R2

Ошибка

Не удалось создать защищенный канал ssl/tls
или она же на английском
The request was aborted: Could not create SSL/TLS secure channel

Причем эти же приложения работали нормально на машинах разработчиков на Windows 10.


Разбор ситуации. Что не помогло

Сразу скажу - много форумов читали, много советов перепробовали - нам
не помогли такие действия:

игры с настройкой протокола в приложении

ServicePointManager.ServerCertificateValidationCallback += new RemoteCertificateValidationCallback(AlwaysGoodCertificate);

ServicePointManager.Expect100Continue = true;

ServicePointManager.DefaultConnectionLimit = 9999;

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;

игры с переходом на более свежий фреймворк: 

пробовали и .NET 4.6.1 и .NET 4.7.2


Но попробуйте, может у вас другой случай (я думаю, в случае другой конфигурации машины - могут помочь)

Вот советы, которые нам не помогли

Disable SSL fallback and use only TLS for outbound connections in .NET? (Poodle mitigation)
https://stackoverflow.com/questions/26389899/disable-ssl-fallback-and-use-only-tls-for-outbound-connections-in-net-poodle

How to specify SSL protocol to use for WebClient class
https://stackoverflow.com/questions/30491716/how-to-specify-ssl-protocol-to-use-for-webclient-class

.Net WebClient: Could not create SSL/TLS secure channel
https://www.aspsnippets.com/Articles/Net-WebClient-Could-not-create-SSLTLS-secure-channel.aspx

Запрос был прерван: Не удалось создать защищенный канал SSL/TLS
https://answer-id.com/ru/74496884

Запрос был прерван: не удалось создать безопасный канал SSL / TLS
https://qastack.ru/programming/2859790/the-request-was-aborted-could-not-create-ssl-tls-secure-channel

Не удалось создать защищенный канал SSL/TLS только на сервере Windows Server 2012
https://coderoad.ru/59975964/%D0%9D%D0%B5-%D1%83%D0%B4%D0%B0%D0%BB%D0%BE%D1%81%D1%8C-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D1%82%D1%8C-%D0%B7%D0%B0%D1%89%D0%B8%D1%89%D0%B5%D0%BD%D0%BD%D1%8B%D0%B9-%D0%BA%D0%B0%D0%BD%D0%B0%D0%BB-SSL-TLS-%D1%82%D0%BE%D0%BB%D1%8C%D0%BA%D0%BE-%D0%BD%D0%B0-%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%B5-Windows-Server


How to enable TLS 1.2 on the site servers and remote site systems
https://docs.microsoft.com/en-us/mem/configmgr/core/plan-design/security/enable-tls-1-2-server

How to enable TLS 1.2 on clients
https://docs.microsoft.com/en-us/mem/configmgr/core/plan-design/security/enable-tls-1-2-client


Разбор ситуации 2: Варианты решения

Продолжили наши разбирательства, и, думаем, нашли причину ошибки и
2 возможных варианта решения:

Наиболее вероятная причина ошибки

Старые операционки не поддерживают новые наборы шифрования протокола TLS 1.2

Суть наших умозаключений 

похоже, что проблема в наборах шифрования (Cipher Suites)

попытался их внимательнее поразбирать с помощью статьи
https://docs.microsoft.com/en-us/answers/questions/227738/windows-server-2012-r2-tls-12-cipher-suites.html

не помогло.

Продолжили разбирательство

Вот Cipher Suites для разных операционных систем
https://docs.microsoft.com/en-us/windows/win32/secauthn/cipher-suites-in-schannel

по наводкам из статьи установил

IISCrypto
https://www.nartac.com/Products/IISCrypto

Увидел: на локальной машине есть такой набор 
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384

он же используется и на веб сайте с которого хотим загружать страницы

это я посмотрел через сайт
https://www.ssllabs.com/ssltest/analyze.html

Вот раздел с наборами шифрования

Cipher Suites
# TLS 1.3 (server has no preference)
TLS_AES_128_GCM_SHA256 (0x1301)   ECDH x25519 (eq. 3072 bits RSA)   FS128
TLS_CHACHA20_POLY1305_SHA256 (0x1303)   ECDH x25519 (eq. 3072 bits RSA)   FS256
TLS_AES_256_GCM_SHA384 (0x1302)   ECDH x25519 (eq. 3072 bits RSA)   FS256
# TLS 1.2 (suites in server-preferred order)
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030)   ECDH x25519 (eq. 3072 bits RSA)   FS256
TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 (0xcca8)   ECDH x25519 (eq. 3072 bits RSA)   FS256
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (0xc02f)   ECDH x25519 (eq. 3072 bits RSA)   FS128


но, к сожалению, наборы не поддерживается в виндовс сервер 2012
https://docs.microsoft.com/en-us/windows/win32/secauthn/tls-cipher-suites-in-windows-8-1

и тем более в Windows Server 2008
https://docs.microsoft.com/en-us/windows/win32/secauthn/tls-cipher-suites-in-windows-7

а поддерживается только в Windows 10 (Windows Server 2016+)
https://docs.microsoft.com/en-us/windows/win32/secauthn/tls-cipher-suites-in-windows-10-v1607


Поизучали возможность обновления этих пакетов

How to Update Your Windows Server Cipher Suite for Better Security
https://www.howtogeek.com/221080/how-to-update-your-windows-server-cipher-suite-for-better-security/

Но, похоже, тут только возможность упорядочивания их, но новый пакет в ОС добавить вручную нельзя.

Вот более подробный разбор этой темы
Windows Server 2012 R2 TLS 1.2 Cipher Suites
https://docs.microsoft.com/en-us/answers/questions/227738/windows-server-2012-r2-tls-12-cipher-suites.html

вроде бы неудача...
но, в форумах часто проскальзывает что "хром работает, а .NET Framework приложения - нет". Причина в том, что баузер хром использует свои пакеты шифрования а не полагается ОС.
Мы зацепились за эту идею.

В одном из проектов мы использовали компонент - внедренный браузер на Chromium

пакет в Nuget: CefSharp.Winforms, CefSharp.Common.

Попробовали загрузить страницу через этот механизм - работает!

Решения

то есть у вас есть 2 варианта решения

1. переход на свежий Windows Server 2016

2. использование пакета CefSharp но предупреждаю, он увеличивает размер приложения (в нашем случае на 100+ МБ)

Выбор за вами :)

Если нужны будут детальные инструкции по CefSharp -напишите в комментах: сделаю отдельную статью.

Материалы по теме

Как узнать версию TLS на сайте
https://ru.wikihow.com/%D1%83%D0%B7%D0%BD%D0%B0%D1%82%D1%8C-%D0%B2%D0%B5%D1%80%D1%81%D0%B8%D1%8E-TLS-%D0%BD%D0%B0-%D1%81%D0%B0%D0%B9%D1%82%D0%B5

Страница для анализа SSL на нужном сайте(домене)
https://www.ssllabs.com/ssltest/analyze.html

How to Update Your Windows Server Cipher Suite for Better Security
https://www.howtogeek.com/221080/how-to-update-your-windows-server-cipher-suite-for-better-security/

Cipher Suites in TLS/SSL (Schannel SSP)
https://docs.microsoft.com/en-us/windows/win32/secauthn/cipher-suites-in-schannel

Demystifying Schannel
https://techcommunity.microsoft.com/t5/core-infrastructure-and-security/demystifying-schannel/ba-p/259233


 





  

вторник, 26 июля 2016 г.

Windows Server 2008 отменить сложные пароли (Пароли должны отвечать требованиям сложности)

Проблема


Столкнулся с проблемой,что Windows Server 2008 требует установки сложного пароля.

А в моем случаехотелось бы датьпользователям простые пароли.

Поиск в интернете дал результаты - ссылки - ниже.

Краткое решение

Пуск/Панель Управления/Система и безопасность/Администрирование/ищем среди ярлыков и запускаем "Локальная политика безопасности"

там ищем ветку дерева
Параметры Безопасности/Политики учетных записей/Политика пароля

отключаем параметр "Пароль должен отвечать требованиям сложности"

Ссылки по теме


Изменение политики паролей в Windows Server 2008 R2
http://tavalik.ru/izmenenie-politiki-paroley-v-windows-server-2008/


Пароли должны отвечать требованиям сложности
https://msdn.microsoft.com/ru-ru/library/cc786468(v=ws.10).aspx

Применение или изменение политики паролей
https://msdn.microsoft.com/ru-ru/library/cc781633(v=ws.10).aspx


четверг, 21 июля 2016 г.

Очистка места Windows Server - проблеманя папка c:\windows\winsxs

идея: делаем линк (джунктион)

примерно как в статье
http://superuser.com/questions/455853/can-i-delete-the-the-folder-c-programdata-package-cache

также должна помочь статья, но я её еще не воспользовался.т.к. места не зватает даже чтобы загрузить апдейты
How to Clean up the WinSxS Directory and Free Up Disk Space on Windows Server 2008 R2 with New Update
https://blogs.technet.microsoft.com/askpfeplat/2014/05/13/how-to-clean-up-the-winsxs-directory-and-free-up-disk-space-on-windows-server-2008-r2-with-new-update/


еще статьи по теме
How to address disk space issues that are caused by a large Windows component store (WinSxS) directory
https://support.microsoft.com/en-us/kb/2795190


Cleanup Windows Server Side By Side Folder (WINSXS)
https://www.linkedin.com/pulse/cleanup-windows-server-side-folder-winsxs-jeremy-cooke

четверг, 10 марта 2016 г.

Windows Server 2008 - очистка места

Задача: Очистить место на Windows Server 2008

Чтобы очиститместо стандартными средствами виндовс нужно доставить фичу (feature) "Desktop Experience".

Заходим в Server Manager, раздел Features (Компоненты), в списке меню выбираем "Desktop Experience" (Возможности рабочего стола) (Пункт модет прятаться в меню "Возможности интерфейса и инфраструктура")

После установки и перезагрузки выбираем нужный диск - контекстное меню - Properties(Свойства) и под круговой диаграммой использования пространства появяется кнопка Очистки "Cleanup"


источиник информации
https://social.technet.microsoft.com/Forums/office/en-US/c85b9dc7-5ae2-497f-b28a-80d0f648417f/where-is-cleanmgrexe-aka-disk-cleanup-tool-missing-in-windows-server-2008?forum=winservergen


Еще помогла статья

Freeing Disk Space on C:\ Windows Server 2008
http://blog.willbeattie.net/2013/06/freeing-disk-space-on-c-windows-server.html