This document describes the configuration options in the Chariot® MQTT Server UI.

The UI can be accessed at the following URL:

http://<server-url>:8080

When installed on Linux, Windows or deployed via Azure Marketplace, the default User login credentials are:

username: admin
password: password

When deployed via AWS Marketplace, the default User login credentials are:

username: admin
password: EC2 instance ID for example: i-0049ac1e13e558b70


The Chariot MQTT Server Web UI provides multiple configuration pages on the left navigation panel.

User Accounts

The User Accounts page allows for the creating, updating and deleting of Users and Roles

Users

The Users page allows for the creating, updating and deleting of Chariot Users. A Chariot User may log into the Chariot Web UI and perform different actions based the the Roles assigned to that User. The main Chariot Users page shows a table of existing Chariot Users. Users can be added by clicking the "Add User" button, or they can be edited by clicking on the individual User in the table.


Add User

Clicking the "Add User" button will display a modal form for creating a new Chariot User.

The form contains the following fields:

By default, a User with the Username admin and Password password will be created

The "Save" button in the bottom right of the form can be clicked to create the User.

Edit User

Clicking on the edit icon on a Chariot User in the table will display a modal form for editing the Chariot User.

Leaving the password empty will retain the existing users password.

Roles

The Roles page allows for the creating, updating, and deleting of Chariot Roles.  A Chariot Role is a collection of permissions that authorized viewing, editing and/or controlling the Chariot MQTT Server. The main Chariot Roles page shows a table of existing Chariot Roles.  Roles can be added by clicking the "Add Role" button, or they can be edited by clicking on the individual Role in the table.


Add Role

Clicking the "Add Role" button will display a modal form for creating a new Chariot Role.

The form contains the following fields:

The "Save" button in the bottom right of the form can be clicked to create the Role.

Edit Role

Clicking on the edit icon on a Chariot Role in the table will display a modal form for editing the Chariot Role.

The "Save" button in the bottom right can be clicked to update the Chariot Role once all changes have been made.

User Sources

The Chariot Security Service can be configured to add an LDAP Realm to use when authenticating and authorizing access via the Chariot UI. 

This feature is available in Chariot v2.4.2 and newer

Review the LDAP and Microsoft Active Directory for Chariot UI/REST Users for configuration details

MQTT Accounts

The MQTT Accounts page contains two tabs: Credentials and LDAP

MQTT Account Credentials are the credentials that clients will use to authenticate when establishing an MQTT connection to the Chariot MQTT Server.

MQTT Account Credentials also contain the access control lists (ACLs) that control which MQTT topics a client can publish and/or subscribe on. MQTT Account Credentials can be added by clicking the "Add Credential" button, or they can be edited by clicking on the individual Credential in the table.

From Chariot release 2.5.0, to avoid manual configuration, the required ACLs can be generated from the Main Navigation → MQTT → Sparkplug → Tools. Clicking one of the available options will provide a modal that will help you automatically generate ACLS to be added to the MQTT Account Credentials.

 

Add Credential

Clicking the "Add Credential" button will display a modal form for creating a new MQTT Credential.

The form contains the following fields:

By default, two default MQTT Credentials are created:

Username admin Password changeme

Username anonymous Password changeme 


The "Save" button in the bottom right of the form can be clicked to create the Credential.

Topic Examples:


Examples of MQTT Account Credentials

Edit Credential

Clicking on the edit icon on a MQTT Account Credential in the table will display a modal form for editing the Credential.

The "Save" button in the bottom right can be clicked to update the Credential once all changes have been made.

LDAP

Chariot can be configured to use an LDAP server for MQTT client authentication and authorization instead of Chariot's MQTT Account Credentials.

This feature is available in Chariot v2.4.2 and newer

Review the LDAP for MQTT Clients for configuration details

Server Configuration

The Server Configuration page contains two tabs: Configuration and Bridging.

Configuration

The configuration tab is a simple form used to configure the MQTT Server.

The form contains the following fields:

Advanced Options >

The "Update" button in the bottom right can be clicked to update the MQTT Server configuration once all changes have been made.  An update will restart the MQTT server.

Bridging

Note MQTT bridging is not compatible with Sparkplug. Bridging should only be used for non-Sparkplug related MQTT messages.

A Bridge Client allows you to connect Chariot to another MQTT Server to share messages between the two servers. The shared messages can be restricted by topic filters to only share a subset of messages flowing through either of the servers.

A common usage is to connect edge MQTT brokers to a central or remote broker.

When enabled on Chariot, the Bridge Client becomes an MQTT client to the other MQTT Server. This client publishes messages, flowing through Chariot, to the other broker. It also subscribes on topics with the other broker to receive messages and deliver them to subscribed clients connected to Chariot.

Bridging is supported in release 2.3.0 forward


To edit an existing bridge client, select the client from the UI. To add a new bridge client click "Add Bridge Client".

The form contains the following fields:

The "Save" button in the bottom right can be clicked to update the MQTT Server Bridging configuration once all changes have been made

License

The License page allows for uploading, activating, and/or deactivating a Chariot License.

A detailed tutorial for licensing Chariot can be found here Licensing Procedure.


If you have deployed Chariot through AWS Marketplace or Azure Marketplace, then no additional steps are required - your license is already installed and activated.

Upload License

A Chariot License is represented by a text file which contains a license key. The file can either be dragged/dropped into the "Upload License" form, or the license text can be pasted directly into the form.

The Activate toggle (in the Upload License form) can be used to auto-activate the license immediately after it is uploaded. This is a convenience to prevent the need to click Activate License after uploading a license.

Online Activation

Online Activation allows the Chariot MQTT Server to remotely connect to the Chariot Licensing server for activation and deactivation of Chariot Licenses. When the "Online Activation" is selected, the License page appears with the following options:

Offline Activation

Offline Activation requires the user to generate an activation request and provide it to Cirrus Link Solutions in order to obtain an Activation Code.  The Activation Code can then be uploaded into the Chariot MQTT Server to activate the previously uploaded Chariot License.  When the "Offline Activation" option is selected, the License page appears with the following options:

Web Server

The Web Server page uses the following form to configure the web server settings:

The form contains the following fields:

Certificates

The certificates page provides the means to upload the necessary certificates and keys for setting up SSL/TLS.

A detailed tutorial for setting up SSL/TLS can be found here: Securing Chariot® MQTT Server


Self-signed certificates should not be used in a production environment on a public network.


The Certificates page contains the following fields:

Once the three files are uploaded, the "Setup SSL" button can be clicked to finish the setup.

If successful, the certificate information will now be displayed on the Certificates page:

The "Delete Certificates" button can be used to remove the certificate and key from the Chariot MQTT Server and revert to a "SSL Not Setup" state.

Backup

This page allows for the backup and restore of Chariot configuration data.

The backup does not include any SSL certificates that may have been loaded. If configured for SSL, make sure to also copy the ssl.jks keystore from <OLD_chariot_install_folder>/security directory and save the ssl.jks keystore and exported backup.tgz file in a safe, known location