A step-by-step guide for Rescale customers to access their in-house licenses using the Rescale Company Administration Panel and SSH tunnel port forwarding
Many software on Rescale require licenses to run. Some ISVs provide options for on-demand licensing, while others provide some other type of short-term licensing. Even so, users of these software may choose to use their in-house licenses to optimize their utilization. This guide provides instructions to set up a connection between local (in-house) floating licenses and Rescale using the SSH tunnel port forwarding method.
- Obtaining the Hostname and Ports
- Fixing the License Ports
- Generating an SSH Private/Public Key Pair
- Starting the License Proxy from the Rescale Company Admin Page
- Setting up the Tunnel
- Testing Your Connection
- The user must have an account on rescale
- The user must be a company administrator
- The user must know the ports on which the licenses listen
- The user must know the hostname of the license server
- The user's computer must have access to the license server
- The user's computer must allow outbound ssh access (Must allow outbound on port 22)
- The following license server types are supported:
- Reprise License Manager
- Other license server types may work but have not been tested
- If your OS is Windows, ensure that it is Windows 7+ or Windows Server 2008+
To become a company administrator, please email a request to firstname.lastname@example.org
The port the license server listens on can be obtained from the license logs. For both FlexLM and RLM there are 2 processes that handle license access: the License Server (lmgrd or rlm) and the Vendor Daemon.
For FlexLM, look at the part of the log when the license server was started. It will display information in the following format. You will need to obtain the ports from this part of the log:
00:00:00 (lmgrd) FlexNet Licensing (<license manager version>) started on <hostname> 00:00:00 (lmgrd) lmgrd tcp-port <license server port> 00:00:00 (lmgrd) Started <vendor daemon> (pid <pid>) 00:00:00 (lmgrd) <vendor daemon> using TCP-port <vendor port>
Similarly, the ports as well as the hostnames for the Reprise License Manager can be parsed from the license logs. The format of the logs will look something like this:
1/1 00:00 (rlm) License server started on <hostname> 1/1 00:00 (rlm) Using TCP/IP port <license server port> 1/1 00:00 (rlm) Starting ISV server <vendor daemon> on port <vendor port>
A better approach to setting the ports is to fix them in the license file. To fix the license server ports for FlexLM, open the license file in a text editor, and edit the SERVER and VENDOR lines. These lines usually occur at the top of the license file:
Similarly, the HOST and ISV lines are changed in the license file for the Reprise License Manager:
HOST <hostname> <rlmid> <license server port> ISV <vendor daemon> port=<vendor port>
To apply the changes, the license server should be restarted once you have changed the license files.
The license proxy setup on the Company Administration Page can be accessed at https://platform.rescale.com/company/license-proxy/. The page will look similar like the screenshot below:
1) Ensure that your public key is in the SSH Key field. If you are unsure on how to do this, please check out this page on Setting up your SSH Key pair
2) Enter in your ports. For example, if you are running Abaqus and your FlexLM logs look like this:
00:00:00 (lmgrd) FlexNet Licensing (v.11.10) started on my-server 00:00:00 (lmgrd) lmgrd tcp-port 27000 00:00:00 (lmgrd) <vendor daemon> using TCP-port 28000
You would fill out the form as shown below.
Note that the hostname must be a private host name and cannot be fully qualified.
3) Enter in your inbound ssh access rules. You should make sure the ip you would like to access the proxy from should fall within the specified range. If you want to restrict inbound ssh access to both your machine's ip address which is, for example, 126.96.36.199 and your co-worker's machine's ip address which is, for example, 188.8.131.52, you would enter your information as follows:
4) Now click the Launch License Proxy button to launch your proxy.
5) Once your proxy has launched, you should see the following information on the page:
Once the license proxy has started, the License Proxy Company Administration page will show the following information at the bottom of the page:
Make sure you download plink.exe and pageant.exe and save them to the directory you created earlier on. Then click the Download for SSH from Windows button to download the tunnel batch script and save to the same directory. The batch script is named
Now open up pageant.exe to launch the key manager. pageant.exe might launch in the windows taskbar. Look for the pageant.exe icon (as above) in the taskbar and right click on it and select add key. Select the private key that you created earlier on to import it into pageant.
Now double click the batch script (
<company>_license_proxy.bat) to launch your tunnel. The command window will print out a log which shows something like this:
Looking up host "<company>.tunnel.rescale.com" ... Authenticating with public key "<key>" from agent Sending Pageant's response Access granted Requesting remote port 27000 forward to my-server:27000 Requesting remote port 28000 forward to my-server:28000 Remote debug message: Forwarding listen address "localhost" overridden by server GatewayPorts Remote port forwarding from 27000 enabled Remote debug message: Forwarding listen address "localhost" overridden by server GatewayPorts Remote port forwarding from 28000 enabled
Back on the License Proxy Company Administration page the Listening Ports / Connection section should be updated to indicate whether your tunnel is working or not:
Log in to your account on Rescale. Create a new job by clicking the + New Job button in the top left of the page. Navigate to the Software section and select your analysis (in our example case Abaqus). In the Software section select Provide Existing License:
In the appropriate field type in
<license server port>@<hostname> in our example case
27000@my-server then click Check availability the button. The connection information should be printed to the screen: