При работе с программными продуктами 1С, особенно в конфигурациях, активно использующих веб-сервисы (например, 1С:Зарплата и Управление Персоналом, 1С:Бухгалтерия), пользователи часто сталкиваются с ошибкой «Удаленный узел не прошел проверку: Не удалось выполнить проверку отзыва сертификата». Эта проблема возникает при попытке защищенного соединения (HTTPS) с порталом 1С:ИТС, Монитором Портала или другими внешними ресурсами. Суть ошибки заключается в том, что платформа 1С не может связаться с серверами центров сертификации, чтобы подтвердить, что используемый SSL-сертификат не был отозван.
В данной статье мы подробно разберем причины возникновения этой ситуации и рассмотрим все доступные методы решения — от системных настроек до внесения изменений в программный код.
Когда сервер 1С обращается к защищенному ресурсу (например, portal-monitor.1c.ru), он получает SSL-сертификат. Для обеспечения безопасности платформа должна убедиться, что этот сертификат актуален. Проверка происходит двумя основными способами:
Если сервер 1С:Предприятия находится за строгим межсетевым экраном, прокси-сервером или имеет проблемы с разрешением имен (DNS), он не может выполнить этот запрос. В результате платформа блокирует соединение, считая его небезопасным.
Самый быстрый и эффективный способ решить проблему на уровне всей платформы — разрешить «мягкую» проверку отзыва. Если сервер сертификации недоступен, 1С проигнорирует этот факт и продолжит соединение. Рассмотрим, как это сделать:
C:\Program Files\1cv8\conf.conf.cfg.
IgnoreServerCertificatesChainRevocationSoftFail=true
Важные замечания: Файл должен быть сохранен в кодировке UTF-8. Обязательно убедитесь, что в конце файла есть пустая строка, иначе платформа может не считать настройки. Этот параметр указывает системе, что если проверка отзыва не удалась из-за сетевых проблем, соединение все равно должно быть установлено.
Иногда причиной проблемы становится некорректное кэширование данных сетевыми службами Windows. Проанализируем ситуацию, когда сервер пытается обратиться по старому IP-адресу или использует поврежденный локальный кэш сертификатов. Для решения выполним последовательно команды в консоли (CMD) от имени администратора:
ipconfig /flushdns
ipconfig /registerdns
certutil:
certutil -urlcache * delete
Это заставит операционную систему и платформу 1С заново запросить пути проверки сертификатов при следующем обращении к сервису.
Если вы не хотите менять настройки всей платформы, можно точечно изменить логику создания защищенного соединения в самой конфигурации. Для этого создадим расширение и переопределим функцию, отвечающую за создание SSL-соединения. Посмотрим на пример кода в общем модуле ОбщегоНазначенияКлиентСервер.
Найдем функцию НовоеЗащищенноеСоединение. В типовых конфигурациях она часто выглядит так:
Функция НовоеЗащищенноеСоединение(СертификатКлиента = Неопределено, СертификатыУдостоверяющихЦентров = Неопределено) Экспорт
Возврат Новый ЗащищенноеСоединениеOpenSSL(
СертификатКлиента,
СертификатыУдостоверяющихЦентров,
РежимПроверкиОтзываTLSСертификатаСервера.Строгий
);
КонецФункции
Нам необходимо изменить режим проверки со Строгий на значение по умолчанию или вовсе убрать этот параметр. В расширении код будет выглядеть следующим образом:
&Вместо("НовоеЗащищенноеСоединение")
Функция Ит_НовоеЗащищенноеСоединение(СертификатКлиента = Неопределено, СертификатыУдостоверяющихЦентров = Неопределено)
// Убираем строгий режим проверки отзыва
Возврат Новый ЗащищенноеСоединениеOpenSSL(СертификатКлиента, СертификатыУдостоверяющихЦентров);
КонецФункции
Этот метод позволяет обойти ошибку без снижения общей безопасности системы в части проверки других сертификатов.
Платформа 1С использует собственную библиотеку OpenSSL и файл cacert.pem, в котором хранятся доверенные корневые сертификаты. Если этот файл устарел, цепочка доверия может не выстроиться, что приведет к ошибке проверки отзыва. Проанализируем шаги по его обновлению:
bin используемой версии платформы (например, C:\Program Files\1cv8\8.3.23.XXXX\bin).cacert.pem и сделаем его резервную копию.cacert.pem новым текстом.После этой операции рекомендуется перезапустить службу Агент сервера 1С:Предприятия.
Выясним, под какой учетной записью работает служба сервера 1С. Часто это локальный пользователь USR1CV8. У этой учетной записи может не быть прав на выход в интернет через прокси-сервер или отсутствовать доступ к системным веткам реестра, где хранятся настройки криптографии.
Проверьте следующие моменты:
portal-monitor.1c.ru (вкладка «Состав», поле «Точки распространения списков отзыва»). Если браузер не может скачать файл .crl, значит, порт 80 (HTTP) закрыт на фаерволе.Ошибка проверки отзыва сертификата в 1С — это комплексная проблема, связанная с сетевой безопасностью. Для её решения мы рассмотрели:
IgnoreServerCertificatesChainRevocationSoftFail в conf.cfg как наиболее универсальное решение.ЗащищенноеСоединениеOpenSSL для точечного управления проверками.cacert.pem, кэш DNS и актуализация списков CRL.Выбор метода зависит от политики безопасности вашей организации. Если требования безопасности высоки, рекомендуем сосредоточиться на открытии необходимых сетевых доступов (порт 80 к серверам ЦС). Если же требуется быстро восстановить работоспособность сервисов, наиболее эффективным будет изменение файла conf.cfg.