Documentation


Using HTTPS

Several properties can be used to configure the communication options. In order to enable HTTPS with TLS data encryption over the wire, you need to set the TLS property.

TLS=true

You will also need to provide the paths to the private key and the certificate files:

TLS_CERT=cert.pem
TLS_KEY=key.pem

When HTTPS is enabled, the standard HTTPS port 443 is then used as the default instead of port 80. As with the port 80, you will need to start grb_rs with elevated privileges. Otherwise, you will get a permission error. On Linux, you'd see an error message like the following:

fatal : Gurobi Remote Services terminated, listen tcp :443: bind: permission denied

As explained in the installation section, you can change the port using the PORT property. Note that you cannot mix nodes using HTTP and nodes using HTTPS in the same cluster. If you wish to use HTTPS, all the nodes must be configured in the same way. HTTPS will be used for communication between the nodes and also between the clients and the nodes.

If you enable HTTPS, you will need to specify the prefix https:// when acccessing any nodes of the cluster:

> grbcluster --server=https://server1 --password=pass nodes
ADDRESS         STATUS TYPE    LICENSE #Q #R JL IDLE   %MEM  %CPU
https://server1 ALIVE  COMPUTE VALID   0  0  2  46h59m 9.79  0.50
https://server2 ALIVE  COMPUTE VALID   0  0  2  46h46m 8.75  0.00