Пример настройки HTTPS¶
Пример настройки HTTPS приведен с генерацией самоподписанного сертификата. Однако пара ключ-сертификат может быть сгенерирован центром сертификации и использован в программе. Поддерживаемый формат - PKCS12 (расширение файла - p12).
Примечание
Необходимо обратить внимание, что если HTTPS будет включен, то войти в программу по HTTP в дальнейшем будет невозможно, даже если, в последствии HTTPS будет отключен. Это связано с различной обработкой HTTP-заголовков браузерами в режимах HTTP и HTTPS.
Для настройки HTTPS необходимо выполнить следующие шаги.
- Сгенерировать пару ключ-сертификат следующей командой (пример):
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
Отредактировать файл 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:
Linux:
Обязательно сменить порт, на котором работает программа на 8443 либо 443. Для этого добавить следующую строку в файл custom.properties:
server.port=8443
Перезапустить программу.
Зайти в программу с использованием HTTPS.