• Post category:Настройки
  • Запись изменена:03.10.2024

Актуально для сервера документов от версии 7.3.3 и выше

Если вы используете самоподписные сертификаты и в логах nodejs имеется ошибка как в примере:

[ERROR] [localhost] [conv_66bfef92-aeec-47ae-b4e4-aff37ff3d619_pdfa] [userId] nodeJS - error downloadFile:url=https://s9500ldztweb01.domain.local/LanDocs.Convert.Api/api/v1/convert/jobs/e5dc77ca-9805-4be0-abd8-642ef11e71ce/source/e5dc77ca-9805-4be0-abd8-642ef11e71ce.docx;attempt=1;code:SELF_SIGNED_CERT_IN_CHAIN;connect:undefined Error: self signed certificate in certificate chain
at TLSSocket.onConnectSecure (_tls_wrap.js:1514:34)
at TLSSocket.emit (events.js:400:28)
at TLSSocket._finishInit (_tls_wrap.js:936:8)
at TLSWrap.ssl.onhandshakedone (_tls_wrap.js:708:12)

То необходимо выполнить ряд действий.

Документ сервер по умолчанию использует свой список доверенных сертификатов, который создаётся в момент сборки платформы NodeJS.

Чтобы добавить свой корневой сертификат в доверенные для Р7-Офис сервер документов, необходимо выполнить следующие действия:

1. Корневой сертификат, в формате pem, разместите в доступном для DS каталоге, например /var/www/r7-office/Data/certs/rootCA.pem

2. Измените файлы конфигурации, добавьте в environment параметр NODE_EXTRA_CA_CERTS=/var/www/r7-office/Data/certs/rootCA.pem

2.1 Откройте конфигурационный файл /usr/lib/systemd/system/ds-docservice.service

Внутри файла добавьте через пробел запись:

NODE_EXTRA_CA_CERTS=/var/www/r7-office/Data/certs/rootCA.pem

Пример:

Environment=NODE_ENV=production-linux NODE_CONFIG_DIR=/etc/r7-office/documentserver NODE_DISABLE_COLORS=1 APPLICATION_NAME=R7-Office NODE_EXTRA_CA_CERTS=/var/www/r7-office/Data/certs/rootCA.pem

2.2. Аналогично необходимо внесите изменения в конфигурационный файл ds-converter.service

/usr/lib/systemd/system/ds-converter.service

Добавьте через пробел запись:

NODE_EXTRA_CA_CERTS=/var/www/r7-office/Data/certs/rootCA.pem

Пример:

Environment=NODE_ENV=production-linux NODE_CONFIG_DIR=/etc/r7-office/documentserver NODE_DISABLE_COLORS=1 APPLICATION_NAME=R7-Office NODE_EXTRA_CA_CERTS=/var/www/r7-office/Data/certs/rootCA.pem

3. Выполните перезапуск служб:

systemctl daemon-reload
systemctl restart ds-*

Так же рекомендуется установить полную цепочку сертификатов для nginx, для этого:

Добавьте в файл /var/www/r7-office/Data/certs/r7-office.crt цепочку сертификатов, пример:

----BEGIN CERTIFICATE-----
(Your Primary SSL certificate: your_domain_name.crt)
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
(Your Intermediate certificate: DigiCertCA.crt)
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
(Your Root certificate: TrustedRoot.crt)
-----END CERTIFICATE-----

Для проверки конфигурации nginx:

nginx -t

После выполните команду:

service nginx restart