Configure Node Manager to Use the SSL Certificate

To ensure a successful SSL handshake among the Administration Server, Managed Servers, and Node Manager, you should configure Node Manager to use the custom keystores and the SSL certificate.

  1. Connect to the Administration Server node with a secure shell (SSH) client, and then switch to the oracle user.
    sudo su - oracle
  2. Edit the nodemanager.properties file located in the Domain Home directory.
    vi $DOMAIN_HOME/nodemanager/nodemanager.properties
  3. Add the following lines to the end of the file.
    KeyStores=CustomIdentityAndCustomTrust
    CustomIdentityKeystoreType=jks
    CustomIdentityKeyStoreFileName=path_to_identity_keystore
    CustomIdentityKeyStorePassPhrase=keystore_password
    CustomIdentityPrivateKeyPassPhrase=server_cert_password
    CustomIdentityAlias=server_cert
    CustomTrustKeyStoreType=jks
    CustomTrustKeyStoreFileName=path_to_trust_keystore
    CustomTrustKeyStorePassPhrase=keystore_password
    For example:
    KeyStores=CustomIdentityAndCustomTrust
    CustomIdentityKeystoreType=jks
    CustomIdentityKeyStoreFileName=/u01/data/keystores/identity.jks
    CustomIdentityKeyStorePassPhrase=keystore_password
    CustomIdentityPrivateKeyPassPhrase=server_cert_password
    CustomIdentityAlias=server_cert
    CustomTrustKeyStoreType=jks
    CustomTrustKeyStoreFileName=/u01/data/keystores/trust.jks
    CustomTrustKeyStorePassPhrase=keystore_password
  4. Regenerate the Node Manager startup files.
    1. Launch the WebLogic Scripting Tool (WLST).
      $MIDDLEWARE_HOME/oracle_common/common/bin/wlst.sh
    2. Connect to the Administration Server.
      connect('admin_user','password','t3://admin_server_host:9071')
      For example:
      connect('weblogic','password','t3://myinstance-wls-1:9071')
    3. Generate the boot.properties and startup.properties files for the server(s) on this node.
      nmGenBootStartupProps('server_name')
      Both the Administration Server and the first Managed Server run on the first node in the service instance. For example:
      nmGenBootStartupProps('myinstance_adminserver')
      nmGenBootStartupProps('myinstance_server_1')
    4. Exit WLST.
      exit()
  5. Run the restart script as the oracle user.
    /opt/scripts/restart_domain.sh

    Note:

    If your instance was created before 23.3.2 (end of August 2023) you should edit the setEnv.sh file located in /opt/scripts:
    vi /opt/scripts/setEnv.sh
    Add the following properties to the WLST_PROPERTIES variable set in the file:
    -Dweblogic.security.TrustKeyStore=CustomTrust
    -Dweblogic.security.CustomTrustKeyStoreFileName=path_to_trust_keystore
    -Dweblogic.security.CustomTrustKeyStoreType=JKS
    For example, after adding the properties, WLST_PROPERTIES would be:
    export WLST_PROPERTIES="${WLST_PROPERTIES}
    -Dweblogic.security.SSL.minimumProtocolVersion=TLSv1.2 -Dpython.path=${PYTHONPATH} 
    -Dweblogic.security.SSL.ignoreHostnameVerification=true -Dweblogic.security.TrustKeyStore=DemoTrust 
    -Djava.security.egd=file:///dev/urandom -Doracle.jdbc.fanEnabled=false -Dweblogic.ssl.JSSEEnabled=true 
    -Dweblogic.security.SSL.enableJSSE=true -Dweblogic.security.TrustKeyStore=CustomTrust 
    -Dweblogic.security.CustomTrustKeyStoreFileName=/u01/data/keystores/trust.jks 
    -Dweblogic.security.CustomTrustKeyStoreType=JKS"
  6. Repeat from Step 1 for any other nodes in service instance for which you want to configure SSL.