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

При переводе Р7-Офис. Корпоративный сервер на протокол HTTPS с помощью собственного сертификата, необходимо добавить в доверенные корневой сертификат на все сервера и на все ПК пользователей, которые будут работать с данным сервером.

Для добавления корневого сертификата в доверенные на Linux:

Скопируйте корневой сертификат с расширением «crt» в папку /usr/local/share/ca-certificates/ и выполните команду

sudo update-ca-certificates -v

Для добавления корневого сертификата в доверенные на ОС Windows:

Добавление собственного сертификаты в доверенные на Корпоративном сервере

Если вы используете fullchain сертификат («полная цепочка»), проверьте порядок входящих сертификатов. Пример:

----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-----

Где

  • Основной Certificate — your_domain_name.crt
  • Промежуточный Certificate — DigiCertCA.crt
  • Корневой Certificate — TrustedRoot.crt

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

Чтобы добавить свой корневой сертификат в доверенные воспользуйтесь одним из двух вариантов:

1. Вариант — Добавьте параметры для запуска службы:

1.1. Откройте r7-officeSsoAuth.service файл

nano /lib/systemd/system/r7-officeSsoAuth.service

1.2. Добавьте следующую строку, указывающую путь к корневому сертификату, в конце блока «[Service]»:

Environment=NODE_EXTRA_CA_CERTS=/etc/rootCA.pem

Где /etc/rootCA.pem— путь до корневого сертификата, а rootCA.pem — корневой сертификат

1.3. Перезапустите службы:

systemctl daemon-reload
systemctl restart r7-officeSsoAuth

2. Вариант — Использовать системный пакет сертификатов:

2.1. Откройте r7-officeSsoAuth.service файл

nano /lib/systemd/system/r7-officeSsoAuth.service

2.2. Найдите следующую строку в блоке «[Service]»:

ExecStart=/usr/bin/node /var/www/r7-office/Services/ASC.SsoAuth/app.js R7-OFFICE.UNIX.SERVER

Замените его следующим:

ExecStart=/usr/bin/node --use-openssl-ca /var/www/r7-office/Services/ASC.SsoAuth/app.js R7-OFFICE.UNIX.SERVER

2.3. Для CentOS и RedOS дополнительно добавьте следующую строку в конце блока «[Service]», указывающую путь к пакету сертификатов

Environment=SSL_CERT_FILE=/etc/pki/tls/certs/ca-bundle.trust.crt

2.4. Перезапустите службы:

systemctl daemon-reload
systemctl restart r7-officeSsoAuth