Администрирование · 10 мин
Как установить сертификат на сервер 1С
Подробная инструкция по установке SSL-сертификата на сервер 1С: кластер, веб-сервер IIS и Apache, тонкий клиент. Ошибки, проверка результата, FAQ.
Сертификат на сервере 1С нужен в трёх типовых ситуациях: для шифрования соединения клиента с кластером серверов, для публикации информационной базы на веб-сервере по HTTPS и для работы с внешними сервисами (ЭДО, банк-клиенты, веб-сервисы), требующими взаимной аутентификации. В каждом случае используется свой механизм установки, и путать их нельзя: сертификат, положенный «не в то» хранилище, просто не будет задействован.
Прежде чем приступать, определите, какой именно сценарий вам нужен. Чаще всего администраторы имеют в виду HTTPS-доступ к базе через браузер или тонкий клиент — тогда сертификат устанавливается на веб-сервер (IIS или Apache), а не на сервер приложений 1С. Реже требуется защитить трафик между клиентом и кластером — для этого в 1С предусмотрены собственные файлы ключей в каталоге сервера.
Определяем, куда именно устанавливать сертификат
Термин «сервер 1С» в разговорной речи объединяет несколько разных компонентов, и ошибка на этом этапе — самая частая причина неудачной установки. Разделите задачу по компонентам: сервер приложений (кластер 1С), веб-сервер с публикацией базы и клиентские рабочие места.
Если пользователи подключаются через браузер или тонкий клиент по адресу вида https://server/base — работайте с веб-сервером. Если база опубликована только в клиент-серверном режиме через кластер, а требуется шифрование канала — настраивайте сертификат кластера. Если 1С обращается к внешнему сервису и получает ошибку проверки сертификата — проблема решается установкой корневого сертификата в хранилище операционной системы на том компьютере, где работает процесс сервера 1С.
Как выбрать действие
Подготовка файлов сертификата
Для установки вам понадобится сам сертификат и, как правило, закрытый ключ. Формат зависит от целевого компонента: IIS работает с контейнером PFX (файл .pfx или .p12, содержащий сертификат и закрытый ключ), Apache обычно использует раздельные PEM-файлы (.crt/.pem для сертификата и .key для ключа), кластер 1С ожидает файлы в своём служебном каталоге.
Проверьте заранее три вещи: срок действия сертификата, соответствие имени сервера (CN или SAN) тому адресу, по которому подключаются пользователи, и наличие полной цепочки — промежуточных сертификатов удостоверяющего центра. Отсутствие промежуточных звеньев — классическая причина ситуации, когда на сервере сертификат «виден», а клиенты сообщают о недоверенном соединении.
Если у вас только файлы .crt и .key, а нужен PFX, объединить их можно утилитой OpenSSL. Выполняйте конвертацию на защищённой машине и после установки удалите временные копии закрытого ключа.
openssl pkcs12 -export -out cert.pfx -inkey private.key -in certificate.crt -certfile chain.crtУстановка сертификата на IIS для публикации базы 1С
На Windows с IIS установка выполняется в два этапа: импорт сертификата в хранилище компьютера и привязка к сайту. Откройте консоль управления сертификатами локального компьютера: Win+R → mmc → Файл → Добавить оснастку → Сертификаты → учётная запись компьютера. Импортируйте PFX в раздел «Личное» (Personal), при импорте отметьте ключ как экспортируемый только если это действительно необходимо.
Затем откройте диспетчер IIS, выберите сайт, на котором опубликована база 1С, перейдите в «Привязки» (Bindings) и добавьте или отредактируйте привязку типа HTTPS на порт 443, указав импортированный сертификат. После этого перезапустите сайт или весь IIS командой iisreset из командной строки с правами администратора.
Учтите важный нюанс: процессу, под которым работает пул приложений, нужен доступ к закрытому ключу. Если сайт после привязки отвечает ошибкой, проверьте права на ключ через контекстное меню сертификата в оснастке — «Все задачи → Управление закрытыми ключами».
- 1Импортируйте PFX в хранилище «Личное» локального компьютера
- 2Убедитесь, что установлены промежуточные сертификаты УЦ
- 3В диспетчере IIS откройте привязки сайта с опубликованной базой
- 4Добавьте привязку HTTPS на порт 443 и выберите сертификат
- 5Перезапустите сайт и проверьте открытие базы по HTTPS в браузере
Установка сертификата на Apache для публикации 1С
На Linux с Apache файлы сертификата размещаются в каталоге с ограниченным доступом, например /etc/ssl/certs/ для сертификата и цепочки и /etc/ssl/private/ для закрытого ключа. Права на файл ключа должны позволять чтение только root или служебной группе — иначе Apache может отказаться запускаться.
В конфигурации виртуального хоста, где опубликована база 1С, укажите три директивы: SSLCertificateFile — путь к сертификату, SSLCertificateKeyFile — путь к закрытому ключу и SSLCertificateChainFile — путь к цепочке промежуточных сертификатов (в новых версиях Apache промежуточные сертификаты объединяют в один файл с основным). Сам модуль публикации 1С (wsap24 или аналогичный) при этом уже должен быть подключён в конфигурации.
Перед перезапуском обязательно проверьте синтаксис конфигурации командой apachectl configtest или apache2ctl -t. Только после ответа «Syntax OK» перезапускайте службу: systemctl restart apache2. Ошибка в путях к файлам сертификата приведёт к тому, что Apache не поднимется и база станет недоступна всем пользователям.
apachectl configtest && systemctl restart apache2Настройка сертификата для кластера серверов 1С
Шифрование соединения между клиентом и кластером настраивается иначе. В служебном каталоге кластера (обычно srvinfo в каталоге данных сервера 1С) размещаются файлы сертификата и ключа, которые сервер использует для TLS-соединений. Конкретные имена файлов и поддерживаемые форматы зависят от версии платформы, поэтому сверяйтесь с документацией на вашу версию технологической платформы.
После размещения файлов службу агента сервера 1С нужно перезапустить: на Windows — через оснастку «Службы» (служба «Агент сервера 1С:Предприятия»), на Linux — systemctl restart srv1cv8 с указанием нужного экземпляра. На время перезапуска активные сеансы пользователей разорвутся, поэтому планируйте работу вне рабочих часов и заранее предупредите пользователей.
Проверка выполняется подключением тонкого клиента с указанием защищённого соединения. Если клиент сообщает о невозможности проверить сертификат, убедитесь, что корневой сертификат вашего УЦ установлен в доверенные корневые на клиентской машине — для самоподписанных и корпоративных сертификатов это обязательный шаг.
Проверка результата и типичные ошибки
После установки проверьте результат с нескольких сторон. Для веб-публикации откройте адрес базы в браузере: замок в адресной строке без предупреждений означает, что сертификат и цепочка в порядке. Дополнительно проверьте срок действия и имя сервера в свойствах сертификата. Для кластера — подключитесь тонким клиентом и убедитесь, что соединение устанавливается без предупреждений о недоверенном сертификате.
Настройте напоминание об окончании срока действия сертификата. Истёкший сертификат мгновенно блокирует доступ всех пользователей к базе, и в рабочее время это превращается в аварийную ситуацию. Продление выполняется той же процедурой замены файлов или привязки, поэтому сохраните инструкцию и данные о том, где хранятся исходные файлы.
Как проверить результат
Значок замка, сертификат действителен, имя совпадает с адресом
Предупреждение о недоверенном соединении или несовпадении имени
В просмотре сертификата виден полный путь до корневого УЦ
Цепочка обрывается, промежуточный сертификат отсутствует
Соединение устанавливается без предупреждений
Ошибка проверки сертификата сервера
IIS/Apache и агент сервера 1С работают, журналы без ошибок SSL
Служба не стартует, в журнале ошибки загрузки сертификата
Частые вопросы
Можно ли использовать самоподписанный сертификат для сервера 1С?
Можно для внутреннего контура, но его корневой сертификат придётся установить в доверенные корневые на каждом клиентском компьютере, иначе пользователи будут получать предупреждения. Для доступа извне лучше использовать сертификат публичного удостоверяющего центра.
Нужно ли перезапускать сервер 1С после установки сертификата на веб-сервер?
Нет, если сертификат устанавливался только на IIS или Apache — достаточно перезапуска веб-сервера. Агент сервера 1С перезапускается только при настройке шифрования соединения с самим кластером.
Где взять промежуточные сертификаты удостоверяющего центра?
Обычно они приходят вместе с сертификатом от УЦ в виде отдельного файла цепочки (chain, bundle) или доступны для скачивания на сайте удостоверяющего центра. Устанавливать их нужно вместе с основным сертификатом.
База открывается по HTTPS на сервере, но не открывается у пользователей. В чём причина?
Чаще всего отсутствует промежуточный сертификат в цепочке или корневой сертификат УЦ не установлен на клиентских машинах. Проверьте цепочку в свойствах сертификата и повторите проверку с клиентского компьютера, а не с самого сервера.
Как узнать, когда истекает установленный сертификат?
Откройте адрес базы в браузере, нажмите на значок замка и просмотрите свойства сертификата — там указаны даты начала и окончания действия. На Windows срок также виден в оснастке управления сертификатами локального компьютера.
Подходит ли один сертификат для нескольких баз на одном сервере?
Да, если все базы опубликованы на одном доменном имени — сертификат привязывается к имени сервера, а не к конкретной базе. Для разных доменных имён потребуется отдельный сертификат на каждое имя либо сертификат с несколькими именами (SAN).
Что важно запомнить
Сначала определите компонент: HTTPS-публикация настраивается на веб-сервере, шифрование канала — на кластере 1С. Всегда устанавливайте полную цепочку сертификатов, проверяйте права на закрытый ключ и перезапускайте службы только в нерабочее время. После установки проверьте соединение с клиентской машины и настройте напоминание о продлении.