Create a RADIUS app in the portal

First log into the MIRACL Trust authentication portal, click on the ‘Apps’ link in the dashboard and create a new RADIUS app:

add app

In the portal, when you create a new app, you will be issued with your Client ID and Client Secret. Note that your Client Secret will only be issued to you once so it must be grabbed when first displayed:

client secret

Client ID can then be copied at any time from the app settings screen:

app settings page

Any end users wishing to make use of your RADIUS app must visit the OTP url displayed in the Registration Link above. This is explained in the OTP generation page.

Note also that you can configure the login methods to specify whether your users can generate One Time Passwords directly in their desktop browser, in the mobile app (QR Code), or both.

MIRACL Trust RADIUS server installation

DEB installation

Redis is a dependency, so first:

sudo apt-get update && sudo apt-get install redis-server

You can then install via the following commands when logged in as root:

wget -qO - | apt-key add -- Create a new file /etc/apt/sources.list.d/miracl.list and add the following: deb all main Save and close the file, then continue with the commands: sudo apt-get update sudo apt-get install miracl-srv-radius


The program can be uninstalled with sudo apt-get --purge remove miracl-srv-radius

RPM installation

First, the EPEL repositories need to be enabled, so:

sudo yum install epel-release

Redis is a dependency, so first:

sudo yum install redis

You can now install via the following:

Create a new repo file: /etc/yum.repos.d/miracl-rpm.repo

Then add the following:

name= Latest Release for RHEL/Centos 7Server

Save and close the file.

During initial install of any package from this repo, you will be asked to accept the key.

Finally, install with:

sudo yum install miracl-srv-radius

Docker installation

The MIRACL Trust RADIUS Docker image is available at miraclpublic/miracl-srv-radius:latest

Environment Variables

The following environment variables are available when using Docker:

SRVRADIUS_CONFIGPATH - sets the configuration file to start the service with SRVRADIUS_LOGLEVEL - sets the Log level to be one of EMERGENCY, ALERT, CRITICAL, ERROR, WARNING, NOTICE, INFO or DEBUG SRVRADIUS_DUMP - if set to JSON or YAML, outputs the full configuration, if set to SCHEMA - outputs the JSON schema

Assuming that you have Redis installed and running on your host machine (sudo apt update && sudo apt install redis-server) a simple test Docker container could be run with a command such as:

docker run --name=radius --network host -v /home/user/srv-radius-dockertest/:/etc/srv-radius miraclpublic/miracl-srv-radius:latest -c /etc/srv-radius/config.yaml

Please see the SSH Demo Setup instructions for detailed instructions on getting a Docker container running which can be used to log into a separate ssh terminal.

Configuring the application and hosts

Please see the Generic client setup info and the ssh and OpenVPN demo setup instructions for detailed guidance on configuring the product for use.

Running the service

Once your server is installed it can be started and stopped with the following commands:

sudo service srv-radius start sudo service srv-radius stop sudo service srv-radius restart