• Post category:Версия для Linux
  • Запись изменена:07.10.2024

Введение

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

Создание сертификата безопасности и закрытого ключа

Прежде чем начинать переключение Сервера совместной работы на протокол HTTPS, необходимо создать сертификат безопасности и закрытый ключ сертификата.

Для автоматической генерации SSL-сертификата с помощью сервиса letsencrypt вы можете обратиться к этой статье.

Когда у вас будет сертификат, переходите к последующим действиям.

Переключение Сервера совместной работы на HTTPS с помощью скрипта

Быстрее всего можно переключить Сервер совместной работы на протокол HTTPS с помощью готового скрипта. Он находится здесь:

/var/www/r7-office/Tools/default-r7-office-ssl.sh

Поместите созданные сертификаты в папку /var/www/r7-office/Data/certs/. Там должно быть два файла:

  • /var/www/r7-office/Data/certs/r7-office.crt
  • /var/www/r7-office/Data/certs/r7-office.key

Имена сертификатов обязательно должны быть r7-office.crt и r7-office.key

И запустите скрипт:

sudo bash /var/www/r7-office/Tools/default-r7-office-ssl.sh

Он выполнит все необходимые действия для переключения инсталляции Р7-Офис. Корпоративный сервер на HTTPS.

Переключение Р7-Офис. Корпоративный сервер на HTTPS вручную

Все действия, которые выполняет скрипт, вы можете выполнить вручную. Для этого сделайте следующее:

  1. Остановите сервис NGINX:
    sudo service nginx stop
  2. Скопируйте файл r7-office-communityserver-common-ssl.conf.template (находится по пути /etc/nginx/includes/r7-office-communityserver-common-ssl.conf.template) в файл r7-office (находится по пути /etc/nginx/sites-available/r7-office) с помощью следующей команды:
    sudo cp -f /etc/nginx/includes/r7-office-communityserver-common-ssl.conf.template /etc/nginx/sites-available/r7-office

    Для CentOS файл r7-office-communityserver-common-ssl.conf.template /etc/nginx/includes/r7-office-communityserver-common-ssl.conf.template необходимо скопировать в файл r7-office.conf (находится по пути /etc/nginx/conf.d/r7-office.conf). Для этого выполните следующую команду:

    sudo cp -f /etc/nginx/includes/r7-office-communityserver-common-ssl.conf.template /etc/nginx/conf.d/r7-office.conf

    Отредактируйте файл r7-office (находится по пути /etc/nginx/sites-available/r7-office), заменив все параметры в двойных фигурных скобках {{…}} на фактически используемые:

    • {{SSL_CERTIFICATE_PATH}} — путь к вашему сертификату SSL;
    • {{SSL_KEY_PATH}} — путь к закрытому ключу сертификата SSL;
    • {{SSL_VERIFY_CLIENT}} — параметр, определяющий, включена ли проверка клиентских сертификатов (допустимые значения: onoffoptional и optional_no_ca);
    • {{CA_CERTIFICATES_PATH}} — путь к клиентскому сертификату, который будет проверяться, если проверка включена в предыдущем параметре;
    • {{HTTPS_HSTS_MAXAGE}} (add_header Strict-Transport-Security «max-age=63072000; includeSubDomains; preload» always;) — дополнительный параметр настройки для задания параметра max-age HSTS в конфигурации виртуального хоста NGINX для Сервера совместной работы, применяется только в тех случаях, когда используется SSL (как правило, по умолчанию задается значение 31536000, что считается достаточно безопасным);
    • {{SSL_DHPARAM_PATH}} — путь к параметру Диффи-Хеллмана файл dhparam.pem;
    • {{APP_NGINX_KEEPLIVE}} — максимальное число неактивных постоянных соединений с серверами группы, которые будут сохраняться в кэше каждого рабочего процесса (для получения дополнительной информации об этом параметре обратитесь к документации NGINX);
    • {{SSL_OCSP_CERTIFICATE_PATH}} — путь к файлу с доверенными сертификатами CA в формате PEM, которые используются для проверки клиентских сертификатов и ответов OCSP (Online Certificate Status Protocol), если включён ssl_stapling.

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

  3. Откройте файл конфигурации /var/www/r7-office/Services/MailAggregator/ASC.Mail.Aggregator.CollectionService.exe.config и задайте для параметра mail.default-api-scheme значение https. После этого перезапустите сервис почтового агрегатора:
    sudo service restart r7-officeMailAggregator

    Когда все изменения будут внесены, можно снова запустить сервис NGINX:

    sudo service nginx start

    Для правильной работы портала должен быть открыт порт 443.

Примечание: При работе с самоподписанными сертификатами или сертификатами у которых невозможно проверить подлинность, необходимо отключить проверку.
Для этого необходимо скорректировать файл /etc/r7-office/documentserver/default.json
В строке «rejectUnauthorized«: поменять значение на false.

Для применения изменений, необходимо перезапустить сервисы Сервера Документов:

supervisorctl restart all

При использовании сервера документов версии 7.3.3 и выше:
sudo systemctl restart ds-docservice.service ds-converter.service ds-metrics.service

Мы рекомендуем, перед перезапуском сервисов, выполнить запуск скрипта  bash /usr/bin/documentserver-prepare4shutdown.sh , который завершит все сессии редактирования документов, соберет их версии и поместит документы в хранилище, что позволит избежать потери информации.