Почему в Мониторе портала 1С:ИТС возникает ошибка «Удаленный узел не прошел проверку» при работе через веб-сервер и как её исправить?

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

При использовании типовых конфигураций 1С (например, 1C:Бухгалтерия редакции 3.0), опубликованных на веб-сервере (IIS или Apache) в файловом режиме, администраторы и пользователи нередко сталкиваются с ситуацией: при попытке синхронизации с интернет-сервисами, проверке контрагентов или открытии сервиса Монитор портала 1С:ИТС появляется диагностическое сообщение: «Удаленный узел не прошел проверку». При этом при прямом запуске той же файловой базы через толстый или тонкий клиент подключение к сервисам ИТС проходит успешно.

Разберем детально, почему возникает такое поведение платформы, как разграничиваются контексты безопасности операционной системы и какими способами можно полностью восстановить работоспособность защищенного соединения.

Анализ ситуации: выясним причину сбоя

Проанализируем ключевое различие между локальным запуском информационной базы и работой через публикацию на веб-сервере. Когда пользователь открывает базу локально, сеанс 1С выполняется в контексте интерактивной учетной записи Windows. Сертификаты безопасности, установленные администратором в личное хранилище (Current User), в этот момент полностью доступны подсистеме криптографии.

Однако при публикации информационной базы на веб-сервере исполняемый код 1С переносится внутрь рабочего процесса веб-сервера (для IIS это процесс w3wp.exe, для Apache — httpd.exe). По умолчанию этот процесс стартует от имени изолированной или специализированной системной службы: DefaultAppPool, Network Service или Local System. Рассмотрим основные факторы, которые приводят к ошибке проверки узла в этой архитектуре:

  1. Разделение хранилищ сертификатов Windows: сертификаты, установленные для конкретного пользователя, физически изолированы в реестре учетной записи. Системные процессы пула веб-сервера к ним доступа не имеют.
  2. Отключенная загрузка профиля пользователя: в параметрах пулов приложений по умолчанию часто заблокирована инициализация локального пользовательского окружения, из-за чего криптопровайдеры ОС не могут прочитать системные ключи и хранилища.
  3. Ограничение доступа к серверам проверки отзыва (CRL и OCSP): при валидации SSL-сертификата удаленного узла платформа 1С пытается проверить статус отзыва сертификата. Если системная учетная запись не имеет маршрута в интернет или заблокирована прокси-сервером, проверка отзыва падает по таймауту, что блокирует всё защищенное соединение.
  4. Файл доверенных сертификатов платформы: при ряде сетевых обращений платформа 1С ориентируется на собственный файл cacert.pem, расположенный в каталоге исполняемых файлов платформы, в котором может отсутствовать корневой сертификат удаленного ресурса.

Способ 1. Установка цепочки сертификатов на уровень локального компьютера

Рассмотрим самое надежное системное решение. Чтобы сертификаты удаленного узла стали видны веб-серверу независимо от учетной записи, их необходимо установить в общесистемное хранилище Windows.

Выполним процедуру по шагам:

  1. Нажмите сочетание клавиш Win + R, введите команду mmc и нажмите Enter для запуска консоли управления.
  2. В меню Файл выберите пункт Добавить или удалить оснастку.
  3. В списке доступных оснасток найдите Сертификаты, нажмите Добавить и обязательно выберите вариант Учетной записи компьютера (Local Computer), затем нажмите Далее и Готово.
  4. Раскройте узел Сертификаты (локальный компьютер) и перейдите в каталог Доверенные корневые центры сертификации -> Сертификаты.
  5. Нажмите правой кнопкой мыши по папке, выберите Все задачи -> Импорт и укажите файл корневого сертификата сервисов ИТС (или сертификата удостоверяющего центра Минцифры).
  6. Если у ресурса есть промежуточные центры сертификации, аналогичным образом импортируйте их в раздел Промежуточные центры сертификации.

После завершения импорта обязательно перезапустите веб-сервер или пул приложений, чтобы изменения вступили в силу.

Способ 2. Настройка удостоверения и профиля пула приложений в IIS

Если веб-сервер функционирует под управлением Microsoft IIS, разберем настройку учетной записи пула приложений, под которым опубликована база 1С:

  1. Откроем Диспетчер служб IIS (команда inetmgr).
  2. В левой панели перейдем в раздел Пулы приложений (Application Pools) и найдем пул, связанный с публикацией информационной базы.
  3. Выделим пул и в правой панели выберем Дополнительные параметры (Advanced Settings).
  4. Найдем параметр Загрузить профиль пользователя (Load User Profile) и переведем его в значение True. Это гарантирует инициализацию криптографических веток реестра.
  5. Найдем пункт Удостоверение (Identity), нажмем на кнопку с троеточием, выберем Особая учетная запись (Custom Account) и нажмем Установить.
  6. Укажем учетную запись администратора или специального сервисного пользователя, под которым сертификаты уже были успешно установлены и проверены при прямом запуске 1С.
  7. Нажмем ОК и применим настройки, после чего выполним перезапуск пула через команду Перезапуск (Recycle/Restart).

Способ 3. Настройка системного прокси-сервера (WinHTTP)

Посмотрим на ситуацию, когда на сервере интернет-трафик идет через прокси. Обычные браузерные настройки (WinINet) действуют исключительно на интерактивного пользователя. Фоновые процессы веб-сервера используют подсистему WinHTTP. Если WinHTTP не знает параметров прокси, служба не сможет загрузить списки отзыва сертификатов (CRL).

Запустим командную строку от имени Администратора и проверим параметры системного прокси:

netsh winhttp show proxy

Если прокси не настроен, скопируем параметры, заданные в Internet Explorer/Edge текущего пользователя, выполнив команду:

netsh winhttp import proxy source=ie

Либо зададим параметры прокси-сервера вручную с указанием необходимых портов и списка исключений для локальной сети:


netsh winhttp set proxy proxy-server="http=proxy.domain.local:8080;https=proxy.domain.local:8080" bypass-list="*.domain.local;<local>"

Способ 4. Актуализация хранилища cacert.pem в каталоге платформы

Проанализируем еще одну причину: встроенный защищенный транспорт платформы 1С может валидировать SSL-сертификаты с помощью внутреннего бандла доверенных корневых центров. Этот файл имеет имя cacert.pem и находится в каталоге исполняемых файлов используемой версии платформы.

  1. Перейдем в каталог установки платформы: C:\Program Files\1cv8\<НомерВерсии>\bin\ (или Program Files (x86) для 32-разрядной версии).
  2. Найдем файл cacert.pem и создадим его резервную копию.
  3. Откроем корневой сертификат удаленного сервиса в формате Base-64 (X.509, расширение .cer или .crt) с помощью любого текстового редактора.
  4. Скопируем текстовый блок от -----BEGIN CERTIFICATE----- до -----END CERTIFICATE----- включительно.
  5. Откроем файл cacert.pem в текстовом редакторе с правами администратора, вставим скопированный блок в самый конец файла на новой строке и сохраним файл.
  6. Перезапустим веб-сервер.

Важные требования к правам доступа в файловом режиме

Напомним об ограничениях файлового режима работы через веб-сервер. Так как все сеансы и вызовы к внешним веб-сервисам обслуживаются рабочим процессом веб-сервера, учетной записи, от имени которой запущен этот процесс, необходимо предоставить полные права (Полный доступ) к следующим объектам файловой системы:

  1. Каталог, в котором физически расположен файл базы данных (1Cv8.1CD), а также временные файлы блокировок.
  2. Каталог публикации веб-сервера (где расположен файл default.vrd).
  3. Системная папка временных файлов C:\Windows\Temp, которая используется веб-сервером для создания временных буферов при обработке HTTPS-запросов.

Комплексное применение указанных настроек — перенос сертификатов в хранилище компьютера, активация Load User Profile в IIS и актуализация системных параметров сети — гарантирует полное устранение ошибки проверки удаленного узла и стабильную работу сервисов 1С:ИТС.

← На главную