При обновлении конфигураций (например, 1С:Зарплата и управление персоналом 3 или 1С:Бухгалтерия предприятия), автоматической загрузке классификаторов или подключении сервиса 1С:Интернет-поддержка пользователей может возникнуть критическая ошибка:
Ошибка работы с Интернет: Удаленный узел не прошел проверку
Чаще всего ситуация проявляется после перехода на платформу 1С:Предприятие 8.3.10 и выше. При этом ссылка сервиса может успешно открываться в обычном браузере на рабочем месте, но внутри программы соединение аварийно завершается. Разберем детально, почему это происходит и как устранить неполадку на уровне операционной системы, сети и серверной части.
Проанализируем архитектурные изменения в платформе 1С, которые приводят к возникновению данной ошибки:
rphost от имени специальной системной учетной записи (например, USR1CV8). У этой учетной записи могут отсутствовать настройки прокси-сервера или права на выход во внешнюю сеть, даже если у текущего пользователя в браузере все открывается корректно.Если сервер 1С находится в изолированном сетевом контуре или доступ в интернет жестко ограничен правилами межсетевого экрана, необходимо разрешить обращение к точкам проверки сертификатов. Выясним, как предоставить доступ:
*.symcb.com, *.digicert.com, *.sectigo.com и сопутствующим точкам распространения списков отзыва.Поскольку проверка теперь выполняется средствами ОС, необходимо актуализировать сертификаты в общесистемном хранилище. Разберем по шагам правильную установку:
mmc, выберем меню Файл -> Добавить или удалить оснастку, укажем Сертификаты и обязательно выберем пункт Учетной записи компьютера (а не текущего пользователя).Turn off Automatic Root Certificates Update должен быть отключен).Для устаревших операционных систем семейства Windows Server потребуется включить современные протоколы шифрования:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client]
DisabledByDefault должен иметь значение 0, а параметр Enabled — значение 1.Если выход в интернет осуществляется через корпоративный прокси-сервер, настройки из браузера пользователя не будут действовать для службы USR1CV8. Настроим глобальный прокси для системных служб Windows:
netsh winhttp set proxy <адрес_прокси>:<порт>
netsh winhttp import proxy source=ie
1C:Enterprise 8.3 Server Agent.Если сервер 1С функционирует под управлением ОС Linux, проверка сертификатов выполняется с использованием OpenSSL. В этом случае выполним следующие действия:
update-ca-certificates для Debian/Ubuntu или update-ca-trust для CentOS/RHEL/AlmaLinux)./opt/1cv8/x86_64/<номер_версии>/bin/cacert.pem.В типовых конфигурациях механизмы подсистемы интернет-поддержки жестко требуют проверки узла, однако при разработке собственных интеграций в расширениях или внешних обработках разработчик может управлять проверкой сертификатов.
Посмотрим на пример инициализации защищенного соединения, если требуется явно использовать системные сертификаты Windows:
СертификатыОС = Новый СертификатыУдостоверяющихЦентровWindows();
ЗащищенноеСоединение = Новый ЗащищенноеСоединениеOpenSSL(Неопределено, СертификатыОС);
HTTPСоединение = Новый HTTPСоединение(
"api.service.ru",
443,
,
,
,
30,
ЗащищенноеСоединение
);
Если же необходимо использовать собственный файл доверенных центров, воспользуемся явным указанием пути:
СертификатыФайл = Новый СертификатыУдостоверяющихЦентровФайл("C:\Certificates\ca-bundle.crt");
ЗащищенноеСоединение = Новый ЗащищенноеСоединениеOpenSSL(Неопределено, СертификатыФайл);
HTTPСоединение = Новый HTTPСоединение(
"api.service.ru",
443,
,
,
,
30,
ЗащищенноеСоединение
);
Таким образом, комплексная проверка сетевых правил межсетевого экрана (доступ к CRL/OCSP), актуализация хранилища сертификатов операционной системы на уровне локального компьютера и корректная настройка параметров службы сервера 1С позволяют полностью устранить ошибку валидации удаленного узла.