Россельхознадзор 16 сентября отключит криптопротокол TLS 1.1 - 1Cv7 ВСД в ГИС Меркурий - КБ99 Redmine

Проект

Общее

Профиль

Россельхознадзор 16 сентября отключит криптопротокол TLS 1.1

**Обновление для безопасного взаимодействия с API**
Добавил(а) кб99 Синявский Филипп 3 месяца назад

С 16 сентября будет доступно только использование протоколов TLS актуальных версий 1.2 и 1.3 при установке соединения с API-интерфейсом. Это связано с тем, что использование устаревшей версии протокола нарушает требования ФСТЭК России и может привести к утечке или искажению предоставляемых данных.

Какие последствия для пользователей?

На старых версиях 1С и операционных системах (ОС) не будет работать отправка запросов через Вести.API.

Как решить проблему?

1. Обновить модуль интеграции КБ99 ФГИС Меркурий до последней версии

Для пользователей 1С 8.3 рекомендуется установить обновление платформы до версии 8.3.9 или выше. Это позволит полноценно использовать протокол TLS версии 1.2. Также необходимо обновить интеграцию с системой Меркурий.

Для пользователей 1С 7.7 рекомендуем обновить dll для отправки запросов.
И активировать поддержку протокола TLS 1.2 в самой операционной системе Windows, для этого нужно внести следующие записи в реестр:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2]

[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

[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\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v2.0.50727]
"SystemDefaultTlsVersions" = dword:00000001
"SchUseStrongCrypto" = dword:00000001

[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v4.0.30319]
"SystemDefaultTlsVersions" = dword:00000001
"SchUseStrongCrypto" = dword:00000001

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v2.0.50727]
"SystemDefaultTlsVersions" = dword:00000001
"SchUseStrongCrypto" = dword:00000001

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319]
"SystemDefaultTlsVersions" = dword:00000001
"SchUseStrongCrypto" = dword:00000001

Обратите внимание, что в указанных параметрах значение 00000800 активирует протокол TLS 1.2 по умолчанию. Если необходимо использовать TLS 1.1, то значение нужно заменить на 00000200. Если же требуется использовать оба протокола, то значение должно быть 00000A00.

Для пользователей Windows Server 2008 этого может быть недостаточно. В этом случае необходимо скачать и установить обновление для компонента winhttp (библиотеки wininet.dll).

Обновления можно найти на сайте Microsoft по адресу http://www.catalog.update.microsoft.com/search.aspx?q=kb3140245.

И ещё один полезный инструмент — автофиксация. Он автоматически выполняет действия, описанные в этой статье. https://support.microsoft.com/en-us/help/3140245/update-to-enable-tls-1-1-and-tls-1-2-as-default-secure-protocols-in-wi
Скачайте и запустите MicrosoftEasyFix51044.msi https://redmine.kb99.pro/attachments/36040/MicrosoftEasyFix51044.msi

После всех этих шагов нужно перезагрузить сервер, и проблема будет решена.

https://ветис-меркурий.рф/tpost/0km2m9lxj1-rosselhoznadzor-16-sentyabrya-otklyuchit


Комментарии

Добавил(а) кб99 Синявский Филипп 3 месяца назад

Добавление от Сергея Медного:

Для windows 2012 r2 и 1c 7.7 используйте инструкцию
https://learn.microsoft.com/en-us/mem/configmgr/core/plan-design/security/enable-tls-1-2-client

Без этого работать не будет

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v2.0.50727]
      "SystemDefaultTlsVersions" = dword:00000001
      "SchUseStrongCrypto" = dword:00000001
[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v4.0.30319]
      "SystemDefaultTlsVersions" = dword:00000001
      "SchUseStrongCrypto" = dword:00000001

Добавил(а) кб99 Синявский Филипп 3 месяца назад

А для сервер 2022 standart нужно что то менять если там 1с77 работает? спс
А что делать, если у нас windows server 2016 и 1с 7.7?

Здравствуйте!

Windows 8.1, Windows Server 2012 R2, Windows 10, Windows Server 2016 и более новые версии Windows уже поддерживают TLS 1.2 для связи клиент-сервер через WinHTTP.

Чтобы убедиться в этом, можно отправить запрос в тестовой версии.
https://api2.vetrf.ru:8002 с помощью 1сv7 SoapDll_test.dll

Обратите внимание, что при этом нужно использовать другие реквизиты, не те, которые вы используете в рабочей версии.

Добавил(а) кб99 Синявский Филипп 3 месяца назад

Подскажите пожалуйста как отправлять запросы на https://api2.vetrf.ru:8002

Для работы с тестовой версией нужно указать параметры:
Тестовый режим = Истина
и заполнить реквизиты для тестовой версии

Подробно описано в справке https://wiki.kb99.pro/vsd_params_v7.html

Добавил(а) кб99 Синявский Филипп 3 месяца назад

Подскажите пожалуйста на windows 2003 и 1с7 будет работать?

Да, эти системы будут работать на Windows 2003 и 1С 7.7, если установить дополнительные пакеты и следовать инструкциям по ссылке
https://learn.microsoft.com/en-us/mem/configmgr/core/plan-design/security/enable-tls-1-2-client

Добавил(а) Nikolaev Oleg 3 месяца назад

Какая версия dll должна быть?

Добавил(а) Nikolaev Oleg 3 месяца назад

Как возможно узнать что протокол TLS 1.2 включился без перенастройки на тестовую версию?