Проблема
- При доступе к ESET PROTECT On-Prem через HTTP появляется предупреждение «Используется незашифрованное соединение! Настройте веб-сервер для использования HTTPS»
- Используйте существующий сертификат
- Создайте новый сертификат и получите его подпись
Решение
Связанное решение: Пользователи Windows
Используйте существующий сертификат
При доступе к ESET PROTECT On-Prem через HTTP может появиться сообщение об ошибке «Используется незашифрованное соединение! Настройте веб-сервер на использование HTTPS». Это происходит после установки ESET PROTECT On-Prem.
Приведенные ниже инструкции касаются сертификатов для Apache Tomcat, которые используются для обеспечения безопасных HTTPS-соединений. Подробнее о сертификатах ESET PROTECT On-Prem.
-
Переместите файл сертификата (например,
certificate_file.pfx) в папку установки Apache Tomcat (например,/etc/tomcat/). -
Откройте файл
Server.xml, расположенный в папке установки Apache Tomcat, и внесите в него следующие изменения:-
Apache Tomcat 9
-
Если после
тега <Service name="Catalina">отсутствуеттег <Connector, скопируйте следующую строку и вставьте её послетега <Service name="Catalina">.Используйте свои собственные значения для
keystoreFile,keystorePassиkeystoreType:<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslEnabledProtocols="TLSv1.2,TLSv1.3" ciphers="TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_256_GCM_SHA384, TLS_RSA_WITH_AES_256_CBC_SHA" keystoreFile="/etc/tomcat/certificate_file.pfx" keystorePass="Secret_Password_123" keystoreType="PKCS12" /> -
Если после
<Service name="Catalina">присутствует<Connector, используйте свои собственные значения для перечисленных ниже параметров.keystoreFile — укажитеполный путь к файлу сертификата (.pfx,.keystoreили другому). Если вы используете сертификат, не относящийся к JKS (например, файл.pfx), удалитеkeyAlias(он присутствует вServer.xmlпо умолчанию) и добавьте соответствующийkeystoreType.keystorePass —укажитепарольную фразу сертификата.keystoreType— укажите тип сертификата.
-
-
Apache Tomcat 10
Отредактируйте тег
<Connectorследующим образом:Используйте собственные значения для перечисленных ниже параметров.
certificateKeystoreFile—укажитеполный путь к файлу сертификата.- certificateKeystorePassword —
укажитепароль хранилища сертификатов.
<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="150" SSLEnabled="true"> <SSLHostConfig> <Certificate certificateKeystoreFile=""/etc/tomcat/certificate_file.pfx" certificateKeystorePassword="admin.1234" type="RSA"/> </SSLHostConfig> </Connector>
-
-
Перезапустите службу Tomcat:
sudo systemctl restart tomcat
-
-
Если вы используете файл
.keystore, укажите путь к файлу (keystoreFile="/etc/tomcat/tomcat.keystore") и задайтеkeyAlias(keyAlias="tomcat") вместоkeystoreType. -
Если вы хотите отключить HTTP:
<!-- <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
-
Создайте новый сертификат и получите его подпись
Используйте безопасное соединение HTTPS/SSL для ESET PROTECT On-Prem.
-
Создайте хранилище ключей с SSL-сертификатом. Для этого необходимо установить Java .
Java включает утилиту keytool, которая позволяет создавать сертификаты через командную строку.
-
Для каждого экземпляра Tomcat (если у вас несколько экземпляров Tomcat) необходимо сгенерировать новый сертификат, чтобы в случае компрометации одного сертификата безопасность остальных экземпляров Tomcat оставалась обеспеченной. Ниже приведен пример команды для создания
хранилища ключей сSSL-сертификатом. -
Перейдите в папку, где находится файл keytool, например
/usr/lib/jvm/”версия Java”/jre/bin(путь зависит от ОС и версии Java), и выполните команду:sudo keytool -genkeypair -alias "tomcat" -keyalg RSA -keysize 4096 -validity 3650 -keystore "/etc/tomcat/tomcat.keystore" -storepass "yourpassword" -keypass "yourpassword" -dname "CN=Unknown, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=Unknown"Путь к файлу
/etc/tomcat/tomcat.keystoreприведён лишь в качестве примера; выберите собственное безопасное и доступное местоположение.
-
-
Экспортируйте сертификат из
хранилища ключей. Ниже приведена примерная команда для экспорта запроса на подпись сертификата изхранилища ключей:sudo keytool -certreq -alias tomcat -file "/etc/tomcat/tomcat.csr" -keystore "/etc/tomcat/tomcat.keystore" -ext san=dns:ESETPROTECT -
Получите SSL-сертификат, подписанный выбранным вами корневым центром сертификации (CA).
Вы можете перейти к шагу 6, если планируете импортировать корневой центр сертификации позже. Если вы решите действовать таким образом, ваш веб-браузер может отображать предупреждения о самоподписанном сертификате, и вам потребуется добавить исключение для подключения к ESET PROTECT On-Prem по протоколу HTTPS.
-
Импортируйте корневой сертификат и промежуточный сертификат вашего ЦС в
хранилище ключей. Эти сертификаты обычно предоставляются организацией, подписавшей ваш сертификат. Это необходимо, поскольку ответ сертификата проверяется с использованием доверенных сертификатов изхранилища ключей.sudo keytool -import -alias root -file "/etc/Tomcat/root.crt" -keystore "/etc/tomcat/tomcat.keystore"sudo keytool -import -alias intermediate -file "/etc/Tomcat/intermediate.crt.pem" -keystore "/etc/tomcat/tomcat.keystore" -
После получения подписанного сертификата с корневым центром сертификации (Root CA) импортируйте открытый ключ центра сертификации и сам сертификат (
tomcat.cer) вхранилище ключей. Ниже приведён пример команды, импортирующей подписанный сертификат вхранилище ключей:sudo keytool -import -alias tomcat -file "/etc/tomcat/tomcat.cer" -keystore "/etc/tomcat/tomcat.keystore"Если вы хотите использовать существующий сертификат (например, сертификат компании), следуйте этим инструкциям.
-
Отредактируйте файл конфигурации
server.xmlтак, чтобы тег<Connectorбыл записан аналогично приведенному ниже примеру:<Connector server="OtherWebServer" port="443" protocol="org.apache.coyote.http11.Http11NioProtocol" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="/etc/tomcat/tomcat.keystore" keystorePass="yourpassword"/>Данное изменение также отключает незащищённые функции Tomcat, оставляя включённым только HTTPS (параметр
scheme=). Из соображений безопасности вам также может потребоваться отредактироватьфайл tomcat-users.xml,чтобы удалить всех пользователей Tomcat, и изменить файл ServerInfo.properties, чтобы скрыть идентификационные данные Tomcat. -
Перезапустите службу Apache Tomcat. ESET PROTECT On-Prem может использовать имя службы
tomcat9.sudo systemctl restart tomcat