Enabling HTTPS connectivity for nodes
The default certificate presented by the application server uses localhost.localdomain
. This works only for local node installations (server and node on a single host).
Note:
When asked for the certificate/keystore password use:
changeit
.You can use the default certificate - remember that you may need to use the
./node_add_ssl_cert.sh
script after future updates to refresh the certificate on the nodeFor the default certificate - jump to the Node configuration and use the
localhost.localdomain
instead of thevprotectserver.local
exampleWhen registering the node locally over HTTPS please note that the URL you should use is
localhost.localdomain
- NOTlocalhost
This section presents the steps necessary for generating an SSL certificate, for setup vProtect to use it and how to register a remote node.
vProtect Server (when using own certificate)
This section describes certificate generation and import on the vProtect Server side. It uses a self-signed certificate. If you would like to use CSR and your own CA instead - please check for additional steps described in the next section.
SSH to vProtect Server host
Generate the key and certificate (remember to provide a valid vProtect Server DNS hostname - in our example it was
vprotectserver.local
):Create the PKCS12 bundle from the certificate and the key:
Create a keystore for the vProtect Server with the PKCS12 bundle:
Change ownership on the keystore to the
vprotect
user:Edit
/opt/vprotect/payara.properties
and change the path to the keystore:javax.net.ssl.keyStore=/opt/vprotect/keystore.jks
Restart the vProtect Server:
Make sure that your nodes resolve the host name of the vProtect Server. You also can add an entry in the
/etc/hosts
like this (example IP:1.2.3.4
):Check with your browser that
https://VPROTECT_HOST:8181
presents the certificate that you have just generated.you also can execute the
openssl
client from the node to print it (check the host name that you have provided in the certificate):
Notes on using your own certificate with CSR and your own CA
When using CSR to get a trusted certificate, you need to replace step 2 (self-signed certificate generation) with several steps including CSR generation, and download the CRT signed by your CA. The steps are as follows
Generate the CSR - answer the same set of questions as above:
openssl req -new -newkey rsa:2048 -nodes -keyout vprotect.key -out vprotect.csr
Send your CSR and have it signed by your CA
Download your CRT file and save it as
vprotect.crt
(note that you should have your working directory set to/opt/vprotect
)Download your CA certificate chain (example for a single
ca.crt
) and import it with theCA_ALIAS
of your choice as follows:keytool -import -trustcacerts -keystore /usr/lib/jvm/jre/lib/security/cacerts -storepass changeit -noprompt -alias CA_ALIAS -file ca.crt
Now continue from PKCS12 bundle generation (step 3 in the section above).
vProtect Node (any SSL certificate)
SSH to vProtect Node host
Import the server certificate using the script under the
/opt/vprotect/scripts
folder:where the defaults (if arguments have not been provided) are
SERVER_HOST
=127.0.0.1
,PORT
=8181
,KEYSTORE_PASS
=changeit
(default java keystore password), examples:Default local installation (Server and Node on the same host):
Remote Server on the custom port:
Register the node with the
NODE_NAME
of your choice, theADMIN_USER
user name which you would like to use and the URL to vProtect API, and provide the password when prompted:Syntax:
Remote server with generated certificate:
Local installation with default certificate:
Last updated