License manager ports: FlexLM(Flexnet), DSLS, IBM LUM, LM-X, Sentinel HASP, Sentinel RMS, Reprise RLM.

General

Licensed applications communicate with license management tools over predefined ports. system administrators need to know these port numbers, verify that these ports are open and communication via these ports is kept functional.

The OpenLM Utilizer tool interfaces various license managers in order to extract license statistics and usage reports. The license manager ports are different for each tool as elaborated below, and need to be configured correctly in the OpenLM modules.

How do I know the port I need is open for communication ?

The simplest method for verifying that a port is open for communication is by ‘Telnet’. The Telnet utility comes built in Windows XP, but needs to be installed on Windows 7. Open a command line prompt, and type in the following line: telnet <Hostname or IP> <Port number>. For example:
> telnet 123.123.123.123 27000 or > telnet My_Hostname 27000
If the cmd window remains blank, the port is open. Otherwise, an error string would appear.
In such a case, it is suggested to do the following:
1. Make a port exception in FireWall, or temporarily disable it altogether, to ascertain whether the Firewall is to blame.
2. Temporarily disable the Antivirus, to ascertain the same.
3. If a hostname was inserted in the command line, try typing in an IP instead.
4. Try a different port, or ‘ping’ the server:

Specific license management tools

Flexera FlexLM ports:

The OpenLM license monitoring tool provides unique abilities for monitoring and controlling Flex-enabled applications. The FlexLM ( Flexnet ) license manager communicates through ports 2080 and 27000 to 27009. In order to verify which ports are used, please read this short post.
The ports may also be altered, and set up statically by the system administrator.

Dassault Systemes DSLS ports:

DSLS employs three ports for License management:

  1. Administration port: default 4084. Connecting the License Administration Tool GUI to the Server.
  2. Licensing Port: default 4085. Used by clients to request licenses.
  3. Failover port: default 4086.Used for communication among cluster members.

IBM LUM ports:

LUM Network Client and Server communicate over UDP protocol on Network License Server port (by default 1515).

LM-X ports:

LM-X Network Clients and Servers communicate through port 6200 (default) over TCP.

Sentinel HASP ports:

The Sentinel HASP License Manager uses port 1947 to transfer data over TCP and UDP protocols.

Sentinel RMS ports:

  • The Sentinel RMS License Manager uses port 5093 to transfer data over UDP between Servers and clients.
  • Port 5099 is used for intercommunication between servers in a Server Redundancy constellation.

Reprise RLM port:

RLM uses port 5054. It was port 9000 prior to RLM version 6.

Extracting DSLS information using command lines

OpenLM supports a wide variety of license managers for license statistics and the extraction of license usage reports. Among these license managers are Flexera Flexnet, DSLS, IBM LUM, LM-X, Sentinel RMS, and Sentinel HASP. During the development of OpenLM’s interface to Dassault Systemes’ proprietary license manager: DSLS, we needed to extract DSLS information using command lines.

The following is an account of the commands used in this process, and examples for commands’ output. The logs are typed in a manner that would fit this page, and are edited to be non-personalized.

Command:
DSLicSrv -admin [-I inputFile] [-t OutputFile]
Employ the DSLS license administrator tool in command line mode.

  • Optionally redirect the output to OutputFile
  • Optionally run the license administrator commands from a command file.

Outcome:
The DSLS administrator tool was employed in command line mode. The admin> prompt appeared.


Command:
connect <HostName> <port>
Connect the administration tool to a license server <HostName> on a specific port <port>.

Outcome:
The following was emitted on the screen:
License Administration Tool Version 6.210.0 Built on Oct 6, 2010 10:49:19 AM.
admin >connect <HostName> 4084

Software version : 6.210.0

Build date : Oct 6, 2010 10:49:19 AM

Standalone mode Ready : yes

Server name : <HostName>  

Server id : <ServerId>

Command:
getConfig
Get license server configuration

Outcome:
The following was emitted on the screen:

admin >getConfig
Server configuration Standalone mode
Computer name : <HostName>

Computer ID : <ServerId>

Licensing port : 4085

Administration port 4084

Password protected : no

Remote administration enabled : no

License usage statistics enabled : no

Command:
getLicenseInfo
Get license information

Outcome:

The following was emitted on the screen:

admin >getLicenseInfo

Status active

Editor Dassault Systemes

Model ConcurrentUser

Feature <Feature name>

Quantity 50

StartDate 2011-08-17.00:01.UTC

EndDate 2012-08-31.23:59.UTC

MaxReleaseNumber 1

MaxReleaseDate 2012-08-31.23:59.UTC

MaxUsageDuration 0

MaxUsagePeriod 0

LicenseType Floating

CommercialType STD

LicenseId <LicenseID>

RepGroupIndex 1

RepFileIndex 1

RepFileQuantity 2

ComputerId <ComputerID>

ComputerName unknown

CustomerSite <CustomerSite>

CustomerCountry USA

CustomerId <CustomerId>

GenerationDate 2011-08-18.20:20.UTC

GenCompany Dassault Systemes

GeneratorId <GeneratorId>

EditorId <EditorId>                             


Command:
getLicenseUsage -all
Show current license usage

Outcome:

The following was emitted on the screen:

admin >getLicenseUsage -all
Dassault Systemes <EditorId>

// 1st Feature
<FeatureName 1>  release : 1

type : ConcurrentUser

count : 50

inuse : 2

      // 1st usage table:

      consolidation : <HostName>/<HostName>

      granted since : Nov 28 2011 11:38:14

      <HostName> (<identifier>)  <UserName> <draftsighthelper directory>

      // 2nd usage table
      .
      .
      .

// 2nd Feature …
.
.
.
Command:
disconnect
Disconnect the DSLS administration tool from the license server.

 

 

How do I obtain a DSLS license key ?

OpenLM interfaces the Dassault Systemes license management tool, to obtain license statistics reports for Dassault applications (e.g: CATIA,  SOLIDWORKS).

In order to operate a Dassault Systemes license application, one must obtain a license key. Please refer to the Dassault Server License Keys page; there is a video tutorial and an abundance of PDFs to enjoy.

Where can I download Sentinel HASP and Sentinel RMS license managers ?

The Sentinel HASP and Sentinel RMS license management tools may be downloaded from the Products section on Safenet’s web site, under the “Licensing and Management” title.

The OpenLM server seamlessly interfaces both tools, in order to extract comprehensive license statistics reports.

Application Note 1029: LDAP (Active Directory) Synchronization

General

The OpenLM Server is capable of synchronizing users and groups with an organization’s LDAP to combine license management, license statistics, and report extraction with other company information. LDAP synchronization provides automatic maintenance of Users’ and Groups’ data.

LDAP Synchronization holds many advantages, for different levels of decision makers in the organization. On an administrative and managerial standpoint, it can be applied for enforcing license usage permissions, implementing usage chargeback (usage billing), analysis of usage trends etc. Administrators may gain in automating FlexLM Option file management, thus streamlining FlexLM reporting. From the end-user point of view, this information may be applied to easily locate other users holding a required license.

The Groups synchronization functionality is part of the Users and Groups extension, and requires additional licensing.

Additional information

Please refer to the video tutorial section on the OpenLM site, for a demonstration of Active Directory synchronization.

Users and groups presentation

The Users and User groups which exist in the OpenLM Database are apparent in the EasyAdmin web application, in the Users and Groups windows respectively. Initially, upon installation of the OpenLM server, the Users and Groups windows are only populated by the logged user (e.g. ‘Orik’ – that’s me), the default ‘generaluser’ user, and the “OpenLM Users” default group.

The Active directory tab – Interfacing the LDAP

This tab is the OpenLM Server’s interface to LDAP (Active directory) synchronization. The 1st thing to do is to connect to the LDAP Database. Type in the LDAP server details:

  • Domain name: the IP Address of the server which is your organization’s domain controller (e.g: 102.101.100.106)

  • Username (e.g: administrator)

  • Password, and

  • LDAP server type: (e.g. “Active Directory”)

Click the ‘Check’ button, and receive an authentication status notification, as depicted below:

 

Organizations may have multiple domain controllers (for example, if different departments or subsidiary companies have their own servers for user authentication). In order to add a second server, select the row where the asterisk is shown above, and type in the data for the second server. In order to apply another synchronization rule to the same LDAP server, click the “Duplicate” button under the list of domain controllers.

Synchronizing Users

It is important to note that synchronizing to the LDAP is a tricky business. You may end up having taken in more users than you intended, and deleting users from the database is difficult. It is highly recommended to experiment on a separate database, NOT on the production database.

In order to synchronize user information:

  • Check the “Synchronize users” check-box. Other fields on the “Active directory” tab are activated.

  • Click the ‘Select’ button. The active directory browser opens.

  • Select a synchronization start node.In this example, We’ve selected an Organizational Unit (OU): OU_Test. Click ‘OK’ and the node path appears in the “Synchronization Start Node” text box. The LDAP would be synchronized from this node down.

 

  • Set the “Sync time interval” value. The value in this example states that the user details would be updated every 12 hours.
  • It is highly recommended to Check the “Sync only active users of licenses” in order to avoid adding users that do not actively use the application. New active users would be added to the list of users as they check out a license, and their LDAP details would be synchronized when the “Sync time interval” elapses.
  • Set the “Sync username attribute”.

    • “sAMAccountName” is good for Pre Windows server 2000 Active directory versions.

    • “userPrincipalName” is good for Post Windows server 2000 Active directory versions.

    • “cn”  should be used for any LDAP configuration other than “Active Directory”, i.e. “Novelle Directory” or “Apache DS” .

      The value of the selected field (sAMAccountName or userPrincipalName or cn) within the Active Directory would be applied as the user name recognized by OpenLM.

Synchronization of Groups

Check the “Synchronize groups” checkbox to enable a variety of options for associating users with groups in the OpenLM database, according to the data structure on the LDAP.

AD Groups:

This option goes through the list of users that populate the nodes beneath the selected node. The “AD Groups” selection should be used carefully, because it may introduce a large amount of undesired groups. This is because users who are members of groups within the selected node may also be members of groups from beyond that node, resulting in additional introduction of these external groups.

Attribute:

OpenLM groups may be created according to specific attributes their members may have. In order to do that, select the “Attribute” radio button, and pick up a suitable attribute from the adjacent drop-down list of attributes. Examples for attributes are: “Division”, “Employee ID”, “Initials” or “Cost center”. Type in a Regex expression that would articulate the required attribute.

Fixed:

This option enables the administrator to associate a particular group name to all users of a specific node within the AD tree. The ‘Fixed’ name typed in the textbox is the group name of the users that would consequently be synchronized in this method.

OUs (organizational units):

This option is in use by organizations that have an organizational hierarchy represented in the LDAP; for example departments nested inside divisions. By selecting the OU synchronization method:

  • Users would be introduced into groups in the OpenLM database. These groups would be named after the LDAP OUs under which the users have been created.

  • If the “Add full hierarchy” checkbox is ticked, the entire OU hierarchy tree descending from the start node would be introduced as groups in the OpenLM database. OUs in which no users have been defined in the LDAP, would be presented in OpenLM as empty groups.

  • If the “Add full hierarchy” checkbox is not ticked, OpenLM would flatly create groups named after the LDAP OUs, and populate these groups by the users which have been defined under these OUs. No empty groups would be created.

Case study

In order to demonstrate the different group synchronization methods, I have created the following OU structure, and enabled all users. Note that Users U_A1 & U_AB2 are members of more than one group:

Case 1: Synchronize users only

Procedure: OU_AB was selected as the start node.

Outcome: All Users were synchronized. No Groups or OUs synchronized.

Case 2: Synchronize AD Groups (1)

Procedure: OU_AB was selected as the start node.

Outcome: All groups and users beneath OU_AB were synchronized. The Hierarchical tree was not preserved.

Case 3: Synchronize AD Groups (2)

Procedure: OU_B was selected as the start node.

Outcome:

  • Users B1 & AB2 have been synchronized.
  • Group B1 was synchronized.
  • Group A1 was synchronized, with only user AB2.

Case 4: Synchronize AD Groups (3)

Procedure: OU_A was selected as the start node.

Outcome: Mirror image of the previous case:

  • Users A1, A2, A3 & AB2 were synchronized.
  • Groups  A1, A2, A3 & B1 were synchronized. Group B1 only contains user AB2.

Case 5: Fixed

Procedure: Start node = OU_A. The “Fixed” name was named “The_A_Team”.

Outcome: All of OU_A’s users were gathered in “The_A_Team” group.

Case 6: Attribute

Reminder: Users A1 & B1 are the only users to have been defined owning “division” attributes with the value “my_division” (See LDAP diagram).

Procedure: OU_AB was selected as the start node. The “Attribute” synchronization method was chosen. The ‘division’ attribute with the value “my_division” was configured in the Active directory configuration form.

Outcome: All Users in OU_AB were synchronized. Users A1 & B1 were gathered in the “my_division” group.

Case 7: OU

Procedure: OU_AB was selected as the start node. “Add Full Hierarchy” was not checked.

Reminder: Users  AB1 & B1 were created under the OU_AB Operational Unit. All other users, i.e. A1, A2, A3, AB2 were created under OU_A.

Outcome: All users under OU_AB were synchronized. OpenLM has flatly created groups named OU_AB, and OU_A. Each of these two groups contain the users which have been created under the respective LDAP’s OUs:

  • Group “OU_AB” contains the users AB1 & B1 (see image below).
  • Group “OU_A” contains all other users, i.e. A1, A2, A3, AB2.

Case 8: OU (2)

Procedure: OU_AB was selected as the start node. “Add Full Hierarchy” was checked.

Outcome: This time the OU hierarchy was preserved, so OU_A and OU_B appear under OU_AB. The users are again grouped according to the position in which they were created:

  • Group “OU_AB” contains the users AB1 & B1.
  • Group “OU_A” contains all other users, i.e. A1, A2, A3, AB2 (see image below).
  • Group “OU_B” is empty.

Application Note 1001_b: Configuring OpenLM to interface the Sentinel RMS license manager

Scope:

OpenLM supports the monitoring of a wide variety of license managers such as Flexera FlexLM ( Flexnet ), Beta LM, IBM LUM, DSLS, Sentinel HASP, Sentinel RMS, RLM, and LM-X. This application note elaborates the steps required to configure OpenLM to interface the Sentinel RMS License Manager, and obtain reliable license reports and usage statistics.

Enabling the OpenLM server to work with RMS

In order to configure OpenLM to work with  Sentinel RMS, please follow this procedure:
1. Download lsmon.exe and lsapiw32.dll . These files aren’t included in the OpenLM installation package. For information on how to obtain these files, please contact OpenLM on support@openlm.com.
2. Copy these files to “C:\Program Files\OpenLM\OpenLM Server\LM”
3. Enter the OpenLM Server Configuration Form. Select the LM Tools tab → RMS.
4. Type in the full path of the executable file, i.e.:  “C:\Program Files\OpenLM\OpenLM Server\LM\lsmon.exe” in the “RMS executable file” text box.

See the following image for further clarification:

Introducing a new Sentinel RMS server

After configuring the OpenLM configuration tool to work with Sentinel RMS as elaborated above, the user may introduce an new  Sentinel RMS server under the License Servers tab:
1. Select the “License Servers” tab.
2. Select the RMS type from the “Type” dropdown list.
3. Type in a meaningful description in the “Description” text box.
4. Type in the appropriate “Hostname” and “Port” numbers. The Sentinel RMS default port is 5093.
5. Check the “Enabled” check box.
6. Click the “Apply” button. The  Sentinel RMS server is now ready to interface the OpenLM.

OpenLM Broker configuration for RMS

The OpenLM Broker is an optional though highly recommended component, that should be installed and configured on the RMS license manager machine. It provides accurate license statistics, and facilitates communication between the OpenLM Server and the License manager.

First, download and install the latest OpenLM Broker version. Follow the installation and configuration instructions on the OpenLM Broker configuration Application Note.

In the License server port dialog, select the RMS license manager type from the ‘Type’ dropdown list.
In the port’s Commands list make sure the ‘status’ command is
lsmon <License Server Name>

Document Revision Table

Version Author Date Changes
0.1 Orik May1, 2012 Preliminary
1.0 Orik Jun3, 2012 Revised.
1.1 Orik Jun6, 2012 Added Broker

 

Setting FlexLM port numbers statically

Flexnet / FlexLM ports numbers may be set statically by declarations made in the FlexLM license file. When remain undeclared, these ports would be set randomly every time the license manager is started.

1. In order to set the port connecting the license manager with the installed applications:

On the server side, on the license file (<license>.lic), add a port number to the end of the SERVER line, e.g.:

SERVER <ServerName> <HostId> <PortNumber>

On the client side, on the <license>.dat file add the same number to the end of the SERVER line, e.g.:

SERVER <ServerName> ANY <PortNumber>

2. In order to set the license manager to interface the Vendor over a predefined static port number, add this number in the end of the VENDOR line, in the license file on the license server machine, e.g.:

VENDOR <VendorName> PORT=<VendorPortNumber>

In order for these changes to take affect, you would need to reread the license file. You may do that by clicking the “Reread License file” button, under the “Start/Stop/Reread” tab in Flexera’s LMTOOLS application.

The OpenLM license monitoring tool interfaces these ports in order to extract license statistics, and reliable license usage reports.

For any further information about license management, please visit the new OpenLM site, or address us directly on support@openlm.com.

How do I know the FlexLM license manager port number ?

OpenLM employs the Flexnet / FlexLM reporting mechanism to monitor and optimize concurrent license usage, and obtain license statistics. The FlexLM license manager interfaces licensed applications via predefined ports. You can verify that a port number is set correctly by:

1. Using Flexera’s LMTOOL utility: Select the “Server Status” tab, and click the “Perform Status inquiry” button. the port number would appear on the line that begins with “License server status:” e.g.:

License server status: 27000@My_server

2. You can also find the server name and port number (If defined as static) directly in the license file, in the SERVER line e.g.:

SERVER <ServerName> <hostId> <PortNumber>

USE SERVER

The path and name of the license file is set in the LMTOOLS, under the “Config Services” tab.

OpenLM Version 1.8 Preview

The upcoming OpenLM release version 1.8 is a major milestone in the development process of the OpenLM license management system. This version has been in preparation since October 2011, when version 1.7 was released, and is expected to be officially released by the end of 2012.

Version 1.8 incorporates many bug fixes, performance improvements and new features that were required by our expanding circle of trusted customers. These changes have increased OpenLM’s robustness and made it less prone to errors.

Version 1.8 also integrates some architectural changes that have expanded OpenLM’s ability to further develop license usage control and monitoring. Here are some of the main highlights of this new version.

Database manipulation

Version 1.8 enhances the administrator’s capabilities to manipulate the OpenLM database:

  • Archive or delete old data,

  • Extract irrelevant users, delete unnecessary groups, or even

  • Use multiple OpenLM servers on a single Database. This is a prerequisite for providing support for cloud – computing license management environments.

EasyAdmin

Many changes have been made to the EasyAdmin administrative interface, making the presentation of usage reports more efficient, robust and better designed. Here are some of these enhancements:

  • Support of the Apple Safari Browser
  • License Expiration date filtering
  • License Manager Up-time logging
  • Improvements in License usage reporting (e.g: Flexnet / FlexLM reporting).
  • Improvements Feature usage reporting: accessible from every workstation.

Packages

Software packages are automatically recognized, and populated by the software product  which are members  of these packages.

User Group monitoring

The group monitoring tool would be integrated into OpenLM v1.8, and enhance OpenLM’s ability to provide clear group-related license statistics.

Support of new License management tools

The addition of license management tools to the expanding portfolio of OpenLM’s supported license managers is an on-going task. Version 1.8 already incorporates the support of FlexLM / Flexnet, Sentinel RMS (Aspentech SLM), DSLS, IBM LUM, Sentinel HASP, LM-X (Altair), Reprise RLM, Beta LM, Mathematica LM (MathLM), and Easycopy, and the list is constantly expanding.

Version 1.8 has seen the addition of Beta-LM, Mathematica LM (MathLM), and DSLS. In addition to that, support of some license management tools was enhanced, for example – the IBM_LUM license manager has been added expiration date and license denial indications.

Application Note 1022: Products and Packaged licenses in OpenLM

Scope

This Article deals with two adjacent subjects: Renaming licensed features as products, and gathering these features into licensed packages.

The OpenLM license monitoring tool is designed to extract license usage reports, and obtain license statistics. In order for these reports not to be confusing, the following points need to be considered:

  • Many features are only named as serial or coded strings, which bear little or no meaning for the end user. Renaming features is required in order to enhance readability and improve the understanding of EasyAdmin license reports.
  • Package or Suit licenses are, as their name implies, a set of features which are licensed together as a package. These kind of licenses should be dealt differently than individual licenses, in order to avoid confusion.

The Products/Packages window

The interface for handling Product names Packages in EasyAdmin is the “Products/Packages” window. Open this window:
Click the OpenLM ‘Start’ button, and select ‘Administration’. The ‘Administration’ window opens.

Click the “Products/Packages” icon. The “Products/Packages” window opens.


Product names

The “Products/Packages” window enables users to define a meaningful product name to be displayed alongside a feature name. For example, the feature “40300MAP_5_0F” corresponds to the product “Map R5″ in the image above. In order to edit the product name, click the Product name column for the row of that feature. There the product name is editable. Click the Save icon to commit your changes. The Add and Delete buttons at the top right can be used to insert or remove feature/product name combinations.

The “Products/Packages” window provides an interface to OpenLM’s translation table between Feature Names and Product Names. If this translation table is well maintained then the data reported on the EasyAdmin screens will be more comprehensible.

Setting up a Package in EasyAdmin

Here is a frequently asked customer question:
“We subscribed our application as a design Suite / Package. Each suite license includes licenses to several products. OpenLM indicates that we have a lot more licenses than we actually have. Moreover: having drawn a certain number of licenses, OpenLM indicates a smaller percentage of license usage than expected.”
This kind of complaint directly indicates a misconfiguration of packaged licenses.

Important Note:

Prior to OpenLM Server version 1.7.1.9, deleting a populated package resulted in an error. Make sure not to mark a populated package for deletion prior to this version .

Autodesk case study

In order to organize licensed features in packages, use the “Products/Packages” window. In this example, we’ll study the case of the “Autodesk Design Product Suite Ultimate 2012” Package.

  • In  the “Products/Packages” window, select the “Autodesk Design Product Suite Ultimate 2012″ and check the “Is Package” checkbox.
  • Click the “Save” button.
  • Close and reopen the “Products/Packages” window. It is necessary to close and reopen the window after marking a product as a package.

  • Add each product in the suit to the list:
    • Select an item in the list, or click “Add” to add the product if you can’t find it there.
    • Select “Autodesk Design Product Suite Ultimate 2012″ as the “Parent Package”. In the example below, the product suit corresponds with feature # 85796PDSU_2012_0f.
    • Click the “Save” button.
    • Repeat this for each item in the Package.



Revision Table

Revision Author Date Note
0.1 – Preliminary Orik Jan05, 2012 Preliminary
 1.0  Orik  Jun06, 2012  Slight changes