WebLogi c Проблемы с проверкой имени хоста - PullRequest
0 голосов
/ 17 апреля 2020

У меня есть следующая настройка с использованием Weblogi c 12 c на сервере Centos8: Существует один домен, который состоит из двух машин (machine0 и machine1). Nodemanager настроен для обоих, и консоль администратора также сообщает мне, что оба менеджера узлов доступны. IP-адреса обеих машин в файле / etc / hosts установлены на machine0 и machine1. Проверка имени хоста отключена на сервере администратора, а также в файлах свойств менеджера узлов. Пока все хорошо.

Более того, я использую пользовательские сертификаты в двух хранилищах jks (ID nd Trust), которые были проверены для работы в другом сценарии (просто с использованием localhost на двух «машинах»).

Теперь я создаю новый управляемый сервер через консоль администратора (не имеет значения, для какой машины) с отключенной проверкой имени хоста на вкладке SSL (все остальные необходимые параметры SSL действительны). Если я пытаюсь запустить его сразу после создания через консоль администратора (nodemanager доступен!), Журнал сервера сообщает мне:

<BEA-090960> <The server's SSL configuration is not available. There will potentially be SSL handshake failures.> 
<BEA-090924> <JSSE has been selected by default, since the SSLMBean is not available.> 
<Security> <BEA-090908> <Using the default WebLogic SSL Hostname Verifier implementation.>

Leading to:

<Info> <Management> <BEA-141298> <Could not register with the Administration Server: java.rmi.RemoteException: [Deployer:149150]An IOException occurred while reading the input.; nested exception is: 
    javax.net.ssl.SSLKeyException: Hostname verification failed: HostnameVerifier=weblogic.security.utils.SSLWLSHostnameVerifier,

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

<Security> <BEA-090169> <Loading trusted certificates from the jks keystore file /home/iffuw/Documents/keystores/TrustStore.jks.>

Единственный способ запустить сервер сразу после создания и исправить конфигурацию описанным способом - добавить эту опцию в " Сценарий startWeblogi c "в папке домена / bin.

JAVA_OPTIONS="${JAVA_OPTIONS} -Dweblogic.security.SSL.ignoreHostnameVerification=true"

, чтобы отключить проверку имени хоста с помощью аргумента JVM. После загрузки сервера я могу снова закомментировать эту строку, так как похоже, что ВСЕ настройки SSL теперь вступили в силу.

Таким образом, похоже, что все пользовательские настройки SSL (мои пользовательские ID и хранилища доверия, в противном случае не SSL подключение к AdminServer было бы возможно) передаются при первом запуске сервера через консоль администратора и менеджер узлов, но НЕ параметр, игнорирующий проверку имени хоста. Я что-то здесь упускаю?

...