Как исправить ошибку «Удаленный узел не прошел проверку» при обмене 1С с Честным Знаком?

Системный администратор 1С v8.3 (Обычные формы) 1С:Управление торговлей Торговля и дистрибуция
← На главную

При работе с маркируемыми товарами в программных продуктах 1С (например, Управление торговлей 10.3, Розница 2.3 или Бухгалтерия предприятия 3.0) пользователи часто сталкиваются с критической ошибкой при попытке авторизации или отправки отгрузки в ИС МП (Честный знак). Текст ошибки обычно выглядит так: «HTTP-запрос не отправлен. Ошибка работы с Интернет: Удаленный узел не прошел проверку». Это происходит при попытке обращения к API, например, по адресу api/v3/auth/cert/key.

В этой статье мы подробно разберем причины возникновения этой ситуации и проанализируем пошаговые алгоритмы её решения, основываясь на практическом опыте специалистов. Основная причина кроется в цепочках доверия SSL/TLS сертификатов и переходе государственных систем на российские алгоритмы шифрования.

Выясним причину: почему сертификат перестал проходить проверку?

Проанализируем ситуацию: почему до определенного момента всё работало, а затем возникла ошибка? Главная причина заключается в том, что серверы ИС МП (ЦРПТ) перешли на использование сертификатов, выданных Национальным удостоверяющим центром (НУЦ) Минцифры России.

В отличие от привычных международных сертификатов (таких как GlobalSign или DigiCert), российские корневые сертификаты по умолчанию отсутствуют в хранилищах операционных систем Windows. Если платформа 1С или сама ОС не может построить полную цепочку доверия от конечного сервера api.crpt.ru до доверенного корневого центра, соединение обрывается по соображениям безопасности.

Рассмотрим дополнительные факторы, усугубляющие проблему:

  1. Использование устаревших ОС: На Windows Server 2008 или Windows 7 по умолчанию отключен протокол TLS 1.2, который является обязательным для работы с государственными ИС.
  2. Внутренние механизмы 1С: Платформа 1С для выполнения HTTP-запросов часто использует встроенную библиотеку OpenSSL, которая обращается не к системному хранилищу Windows, а к собственному файлу cacert.pem.
  3. Проверка отзывов (CRL): Система может выдавать ошибку 80092013, если не может достучаться до серверов, хранящих списки отозванных сертификатов.

Решение 1: Установка корневых сертификатов в операционную систему

Первым делом мы должны убедиться, что сама операционная система доверяет сертификатам Минцифры. Рассмотрим, как это сделать правильно:

  1. Скачаем актуальные корневой и промежуточный сертификаты с портала Госуслуг или официального сайта Минцифры. Нам понадобятся:
    • Root_Russian_Trusted_CA.cer (Корневой)
    • Intermediate_Russian_Trusted_CA.cer (Промежуточный)
  2. Запустим оснастку управления сертификатами: нажмем Win + R, введем certmgr.msc и нажмем Enter.
  3. Установим корневой сертификат: перейдем в папку «Доверенные корневые центры сертификации» -> «Реестр» -> «Сертификаты». Нажмем правой кнопкой мыши -> «Все задачи» -> «Импорт». Укажем файл Root_Russian_Trusted_CA.cer.
  4. Установим промежуточный сертификат: аналогично импортируем файл Intermediate_Russian_Trusted_CA.cer в папку «Промежуточные центры сертификации».

Важный совет: Если вы используете решения от Контур или СБИС, у них есть специальные утилиты для автоматической установки всех необходимых корневых сертификатов. Проанализируйте возможность их использования для экономии времени.

Решение 2: Обновление файла cacert.pem в платформе 1С

Если после установки сертификатов в Windows ошибка в 1С сохраняется, значит, платформа использует библиотеку OpenSSL и игнорирует системное хранилище. В этом случае нам необходимо вручную обновить файл cacert.pem, который содержит список доверенных центров для 1С.

Разберем этот процесс по шагам:

  1. Найдем каталог установки текущей версии платформы 1С. Обычно это: C:\Program Files\1cv8\8.3.XX.XXXX\bin\conf\.
  2. В этой папке находится текстовый файл cacert.pem. Сделаем его резервную копию перед редактированием!
  3. Откроем оригинальные файлы сертификатов Минцифры (которые мы скачали ранее) через обычный Блокнот. Если они в бинарном формате (DER), их нужно предварительно экспортировать в формат Base-64 (PEM) через оснастку certmgr.msc.
  4. Скопируем текстовое содержимое (включая строки -----BEGIN CERTIFICATE----- и -----END CERTIFICATE-----) и вставим его в самый конец файла cacert.pem.
  5. Сохраним изменения. После этого рекомендуется перезапустить службу «Агент сервера 1С:Предприятия» (если работа идет в клиент-серверном варианте) или перезайти в программу (в файловом варианте).

Рассмотрим пример того, как должен выглядеть добавленный блок в файле cacert.pem:


-----BEGIN CERTIFICATE-----
MIIF7zCCA9egAwIBAgIUKuS/1N7... (много знаков)...
... данные сертификата Минцифры ...
-----END CERTIFICATE-----

Решение 3: Настройка поддержки TLS 1.2 на старых серверах

Если вы работаете на Windows Server 2008 или Windows 7, проблема может быть глубже уровня сертификатов. Проанализируем настройки протоколов безопасности. По умолчанию эти системы пытаются соединиться по TLS 1.0, который серверы ЦРПТ уже не принимают.

Для исправления ситуации необходимо внести изменения в реестр Windows:

  1. Создадим текстовый файл с расширением .reg и следующим содержимым:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client]
"DisabledByDefault"=dword:00000000
"Enabled"=dword:00000001
  1. Запустим этот файл от имени администратора и подтвердим внесение изменений в реестр.
  2. Перезагрузим сервер. Без перезагрузки изменения в работе протоколов SCHANNEL не вступят в силу.

Решение 4: Отключение мягкой проверки отзыва сертификатов

Иногда ошибка вызвана тем, что 1С не может получить ответ от сервера отзывов сертификатов (CRL). Если инфраструктура предприятия имеет ограниченный доступ в интернет, проверка блокируется. В качестве временной меры или при невозможности открыть доступ к серверам списков отзыва, мы можем отредактировать файл conf.cfg.

Посмотрим, как это сделать:

  1. Перейдем в папку C:\Program Files\1cv8\8.3.XX.XXXX\bin\conf\.
  2. Откроем файл conf.cfg (если его нет, создадим).
  3. Добавим в него следующую строку:

IgnoreServerCertificatesChainRevocationSoftFail=true

Эта настройка приказывает платформе игнорировать ошибки, если сервер отзыва недоступен («мягкий» сбой проверки цепочки).

Решение 5: Настройка антивирусов и прокси-серверов

Если в вашей организации используется антивирус с функцией «Проверка защищенных соединений» (например, Kaspersky Endpoint Security) или прокси-сервер с SSL-инспекцией, это может быть источником проблемы. Проанализируем механизм: антивирус подменяет сертификат сайта crpt.ru на свой собственный, чтобы расшифровать и проверить трафик. 1С видит этот «чужой» сертификат, не находит его в списке доверенных и выдает ошибку.

Чтобы решить эту задачу, выполним следующие действия:

Резюме по исправлению

Мы рассмотрели основные причины ошибки «Удаленный узел не прошел проверку». Подведем итог действий:

  1. Сначала проверяем наличие корневых сертификатов Минцифры в системе (Windows).
  2. Если не помогло — обновляем файл cacert.pem внутри папки bin/conf конкретной версии платформы 1С.
  3. Для старых ОС обязательно включаем поддержку TLS 1.2 через реестр.
  4. В случае проблем с доступом к спискам отзыва используем параметр IgnoreServerCertificatesChainRevocationSoftFail в conf.cfg.
  5. Проверяем, чтобы обновленный криптопровайдер (КриптоПро CSP) был версии не ниже 5.0, так как старые версии могут некорректно работать с новыми алгоритмами государственных ИС.

Последовательное выполнение этих шагов позволяет восстановить полноценный обмен данными с Честным Знаком и устранить технические затыки в работе с маркировкой.

← На главную