Configuring DSS Agent from CLI - DSS 6 | Data Source Solutions Documentation

Documentation: Configuring DSS Agent from CLI - DSS 6 | Data Source Solutions Documentation

Configuring DSS Agent From CLI

This section describes the steps to configure the DSS Agent service from the Command Line Interface (CLI). For steps to configure the agent service from a browser, see Configuring DSS Agent from Browser.

You can configure the agent either by directly accessing the CLI (referred to as Direct CLI in this documentation) on the agent machine or using the CLI on a remote machine (referred to as Remote CLI in this documentation). To configure the agent using the CLI on a remote machine, either the agent setup mode must be initiated or the AgentAdmin user must be used.

To configure the agent service, the DSS Agent must be installed and running.

If the configuration for an existing agent service is modified/updated, ensure to reflect those changes in all locations that use this agent service. For example, if the password of an agent user is updated, then that user's password must be updated in all locations that use this agent service.

Configuring Agent Service

Perform the following steps to configure the agent service:

Limit Agent Access

By default, the agent can be accessed by all hub system(s). However, you can also choose to allow only certain hub system(s) to access the agent service by using the client public certificate of the hub system. For this, add the client public certificate (stored in the repository property Agent_Client_Public_Certificate) of a specific hub system to the list of allowed client certificates (stored in the agent property Only_From_Client_Public_Certificates). This will enable anonymous connections from the specified hub system(s) to the agent i.e. the hub system can connect to the agent without using the agent user credentials instead the client public certificate of the hub system is used for authentication (see step 2 - agent authentication mode).

This step is optional.

To add a hub to the allowed list:

  1. Create a public certificate file of the hub system. Execute the command dssreposconfig on the hub machine that needs to be added to the allowed list:

    {% tabs %}

    {% tab label="Linux" %}

    dssreposconfig 'Agent_Client_Public_Certificate>@<em>file_name</em>.pub_cert'
    

    {% /tab %}

    {% tab label="Windows" %}

    dssreposconfig "Agent_Client_Public_Certificate>@<em>file_name</em>.pub_cert"
    

    {% /tab %}

    {% /tabs %}

  2. Copy the public certificate file (file_name**.pub_cert**) to the agent machine.

  3. Add the public certificate file of the hub system to the allowed list. Execute the command dssagentconfig on the agent machine:

    {% tabs %}

    {% tab label="Direct CLI" %}

    dssagentconfig Only_From_Client_Public_Certificates.<em>identifier</em>=@<em>file_name</em>.pub_cert
    

    {% /tab %}

    {% tab label="Remote CLI" %}

    dssagentconfig -R<em>url</em> -h<em>hub</em> -r<em>agent_host:port -</em>L<em>agent_username</em>/<em>password</em> Only_From_Client_Public_Certificates.<em>identifier</em>=@<em>file_name</em>.pub_cert
    

    {% /tab %}

    {% /tabs %}

identifier may be replaced with the actual name of the hub (e.g. myhub1) or any name/text to easily identify the allowed hub.

  1. To verify that the public certificate file of the hub system is added to the allowed list, execute the command dssagentconfig on the hub machine:

    dssagentconfig -h<em>hub</em> -r<em>agent_host:port -</em>L<em>agent_username</em>/<em>password</em> Only_From_Client_Public_Certificates
    

If the public certificate file of the hub system is successfully added to the allowed list, the command output will display the name and the certificate.

Set Agent Authentication Mode

Define the agent authentication mode for connecting a hub to the agent. For more information about agent connection authentication mode, see Agent Connection Modes.

Following are the agent connection authentication modes:

Executing this command (without configuring Limit agent access in step 1) will automatically limit agent access to specific hubs. In this case, run the commands mentioned in step 1 Limit agent access to allow specific hubs to access the agent.

When anonymous access to the agent is disabled, the agent authentication mode automatically reverts to the default mode - **All connections require an agent user**.

<details><summary>Disable Anonymous Authentication</summary>

To disable the anonymous access to the agent, use the command [**dssagentconfig**](/docs/dss6-command-line-interface-command-reference-dssagentconfig):

{% tabs %}

{% tab label="Direct CLI" %}
  
```plaintext
dssagentconfig Anonymous_Access.allow=
```

{% /tab %}
  
{% tab label="Remote CLI" %}
```shell
dssagentconfig -R<em>url</em> -h<em>hub</em> -r<em>agent_host:port -</em>L<em>agent_username</em>/<em>password</em> Anonymous_Access.allow=
```

{% /tab %}

{% /tabs %}  
  
</details>

Add Agent User

An agent user is required for authenticating the connection from the hub to the agent. And, also the agent user is required for configuring the agent service from a browser (without initiating the setup mode). For more information about agent users, see Agent Users.

The authentication method for the agent user can be defined using the option <b>-A</b> in command dssagentuserconfig. If option <b>-A</b> is not supplied, the agent user will be created with the local authentication method.

The available authentication methods are:

Command syntax for defining the user authentication method

For the advanced Kerberos authentication options, see step 4 - Set Advanced Authentication Options.

The minimum password length for Local user must be 10 characters.

For the advanced PAM authentication options, see step 4 - Set Advanced Authentication Options.

Agent Administrator

Optionally, the agent user can be granted agent administration permissions. The AgentAdmin permissions allows an agent user to configure the agent service remotely (e.g. using browser) without initiating the agent setup mode.

Set Advanced Authentication Options

This section describes the advanced authentication options/settings available for the agent (used when connecting hub to the agent service). These options affect agent's authentication system only when agent users configured with PAM or Kerberos authentication is involved in the connection.

This step is optional.

Set the required advanced authentication options.

Advanced Authentication Options for PAM

The following options are applicable only when the agent authentication involves an agent user whose Authentication is set to PAM.

The specified user must have privilege to run the following command: shell $ sudo -n -u <em>PAM_Sudo_User</em> -- $DSS_HOME/lib/dssauthpam <em>PAM_Service</em>

Advanced Authentication Options for Kerberos

The following options are applicable only when the agent authentication involves an agent user whose Authentication is set to Kerberos principal.

The Kerberos authentication is not supported on Windows. So these options are not applicable for the DSS Hub or Agent installed on Windows.