Пример настройки HTTPS

Пример настройки HTTPS приведен с генерацией самоподписанного сертификата. Однако пара ключ-сертификат может быть сгенерирован центром сертификации и использован в программе. Поддерживаемый формат - PKCS12 (расширение файла - p12).

Примечание

Необходимо обратить внимание, что если HTTPS будет включен, то войти в программу по HTTP в дальнейшем будет невозможно, даже если, в последствии HTTPS будет отключен. Это связано с различной обработкой HTTP-заголовков браузерами в режимах HTTP и HTTPS.

Для настройки HTTPS необходимо выполнить следующие шаги.

  1. Сгенерировать пару ключ-сертификат следующей командой (пример):
keytool -genkeypair -alias selfgen -keyalg RSA -keysize 2048 -storetype PKCS12 -keystore selfgen.p12 -dname "CN=test, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=UN" -validity 3650 -keypass selfgen -storepass selfgen -ext SAN=dns:localhost,ip:192.168.0.12,ip:192.168.0.200,ip:127.0.0.1

Примечание

Для linux: Утилита keytool входит в стандартный java дистрибутив и должна быть доступна. Для windows: Утилита keytool находится в директории C:\\Program Files\Network MACMonitor\macmonitor\jre\bin

image1

  1. Отредактировать файл C:\\Program Files\Network MACMonitor\macmonitor\config\custom.properties - для windows, либо /opt/macmonitor/config/custom.properties - для linux.

    Добавить следующие строки:

    security.require-ssl=true
    server.ssl.key-store-type=PKCS12
    # The path to the keystore containing the certificate
    server.ssl.key-store=file:///C:/Program%20Files/Network%20MACMonitor/macmonitor/config/selfgen.p12
    # The password used to generate the certificate
    server.ssl.key-store-password=selfgen
    # The alias mapped to the certificate
    server.ssl.key-alias=selfgen
    

    Примечание

    Необходимо обратить внимание на опцию server.ssl.key-store, вместо пробелов в пути к файлу используется %20.

Windows:

image2

Linux:

image3

  1. Обязательно сменить порт, на котором работает программа на 8443 либо 443. Для этого добавить следующую строку в файл custom.properties:

    server.port=8443
    
  2. Перезапустить программу.

  3. Зайти в программу с использованием HTTPS.