Настройка доступа по HTTPS

  • Создана: 06.07.2018
  • Обновлена: 07.06.2023

Для организации зашифрованного соединения сперва необходимо получить SSL-сертификат на домен, либо сгенерировать самостоятельно самоподписной сертификат. Полученные в результате файлы необходимо загрузить на сервер и использовать при настройке Apache.

Настройка Apache

Убедимся, что подключен модуль SSL:

a2enmod ssl

При необходимости, в конфигурационном файле Apache /etc/apache2/ports.conf открываем порт подключения по протоколу https:

Listen 80
Listen 443

В конфигурационном файле сайта приложения (например, /etc/apache2/sites-available/devprom.conf) меняем порт для виртуального каталога с 80 на 443 и добавляем в конце параметры для использования SSL:

<VirtualHost *:443>
...
    SSLEngine on
    SSLProtocol all -SSLv2
    SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5

    SSLCertificateFile /home/devprom/crt/STAR_devprom_ru.crt
    SSLCertificateKeyFile /home/devprom/crt/devprom.key
    SSLCertificateChainFile /home/devprom/crt/STAR_devprom_ru.ca-bundle
</VirtualHost>

В этом примере используется ChainFile, то есть цепочка сертификатов верхнего уровня. Если провайдер SSL-сертификата такой файл не предоставил, то вы сможете его создать самостоятельно - в него нужно просто скопировать сертификаты в обратном порядке.

Убедитесь, что у пользователя www-data (или apache) есть права на чтения файлов ключа и сертификаторв.

Чтобы перенаправлять все запросы с порта 80 на порт 443, можно использовать такую дополнительную настройку:

<VirtualHost *:80>
    ServerName <имя-сайта>
    DocumentRoot /var/www/devprom/htdocs
    Redirect permanent / https://<имя-сайта>/
</VirtualHost>

После настройки Apache необходимо перезагрузить.

Настройка приложения

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

Для этого необходимо перейти в административный раздел, в меню Настройки - Приложение. На форме в поле "Порт подключения" необходимо ввести 443 и сохранить настройки.

Настройка внешних ссылок

Отрисовка математических формул и UML-моделей осуществляется дополнительными компонентами (или сервисами). Чтобы использовать https, измените следующие параметры в файле htdocs/settings_server.php

define('PLANTUML_SERVER_URL', 'https://plantuml.myalm.ru');
define('MATH_JAX_LIB_SRC', 'https://myalm.ru:88/mathjax/MathJax.js?config=TeX-AMS_HTML');


Решения для поддержки процессов разработки Devprom Software