Команда cert — Настройка HTTPS (сервис)
Эта команда создаёт или обновляет файл Java KeyStore (JKS), который необходим для работы веб-интерфейса приложения по протоколу HTTPS. В процессе используются предоставленные файлы: сертификат сервера, приватный ключ и цепочка сертификатов. Также команда читает и обновляет указанный JSON-файл конфигурации.
Пример вызова команды:
bash ./install.sh cert [ОПЦИИ] <server_cert> <private_key> <chain_cert>
Примеры использования:
Пример 1:
bash ./install.sh cert "certificate.crt" "certificate.key" "certificate_ca.crt"
Пример 2:
bash ./install.sh cert \
-o "${PWD}" -c "${PWD}/configuration.json" --password PASSWORD \
"domain.crt" "29442.key" "GlobalSign GCC R6 AlphaSSL CA 2023.crt"
Аргументы:
Опции:
-o, --output <путь>
Назначение: путь для сохранения JKS-файла.
Если не указан, используется путь по умолчанию.
-c, --configuration <путь>
Назначение: путь к JSON-файлу конфигурации, который будет обновлён.
После выполнения команды в этот файл запишутся путь к JKS и пароль.
--password <пароль>
Назначение: пароль для защиты хранилища JKS.
Результат выполнения команды
После успешного выполнения команды в JSON-файл конфигурации добавляются или обновляются параметры HTTPS. Пример обновлённого фрагмента конфигурации:
{
"web": {
"port": 80,
"https": {
"path": "/path/cert.jks",
"password": "password"
}
}
}
Пояснение к параметрам:
"web.port": порт, на котором работает веб-сервер (в данном случае 80 — HTTP, но HTTPS обычно на 443).
"web.https.path": путь к JKS-файлу, созданному командой.
"web.https.password": пароль для доступа к хранилищу.
Важно:
Убедитесь, что у приложения есть права на чтение JKS-файла.
Храните приватный ключ и JKS в безопасности - они содержат чувствительные данные.
Рекомендации:
Используйте надёжный пароль для JKS.
Убедитесь, что цепочка сертификатов полная (включает промежуточные CA).
Проверьте корректность сертификатов с помощью команды:
openssl x509 -in certificate.crt -text -noout