Interlok supports an integrated Java shell called CRaSH. You can use CRaSH to ssh into your running interlok instance.


To login to an interlok shell; ssh to host of the interlok instance providing the port and authentication details set in the configuration:

$ ssh localhost -p 2222 -l admin
Password authentication

      , ,
   .`//'.\\',             _____             ______   ______  ___    _       __
 .'/////\\\\',      /\   | ___ '.     /\   \_____ '.\__  __||___'. | |    .'  |
,//////  \\\\\.    //\\  \|   '. '.  //\\        '. '  ||       `.`| |   / /``
./////    \\\\\.  //  \\        ; : //  \\   ____,' ;  ||   _____;;| |   . .
.////      \\\,. //    \\       . ;//    \\ | ____.`   ||  '  ___. | |   | |
,//.---------'. //      \\  __.' .//      \\||         ||   `.`.   | |  .` .
 ,'----------. //        \\\   .'//        \\|         ||     `.`. | | ` .`
  ` -------.   ``         `` ``` ``         ```        ``       `` ``````
     `````                   Integration Anywhere

 Interlok Version: 3.4.1
             Host: localhost


Once logged in commands that are available can be viewed by using the help command:

% help
Try one of these commands with the -h or --help switch:

adapter   Interlok Adapter Management
channel   Interlok Channel Management
interlok  Interlok Management Command
local     Interlok JMX Connection Management
man       format and display the on-line manual pages
remote    Interlok (remote) JMX Connection Management
version   Display Interlok version information
workflow  Interlok Workflow Management
help      provides basic help

NOTE: Similar to normal shell commands, the interlok shell commands have manuals:

% man local
       local - Interlok JMX Connection Management

       local [-h | --help] COMMAND [ARGS]

       Provides a connection to the Local JMX MBeanServerConnection

       [-h | --help]
           Display this help message

           returns MBeanServerConnection connection

Example Command Usage

Interlok shell provides two styles of commands, a single monolithic command and a pipe style command for chaining commands together.

Both of the following examples will restart the adapter:

Monolithic interlok command

% interlok connect --local
Connected locally

% interlok adapter restart
Adapter (MyInterlokInstance) restarted

% interlok disconnect
Connection closed

Pipe style commands

% local connection | adapter restart
Adapter (MyInterlokInstance) restarted

The style of command used is down to personal preference, but some features are only available in one command style. For example: Workflow and Channel argument completion is only available in the monolithic style command.


The interlok shell libraries are not shipped by default as part of the traditional installer. You will need to download the com.adaptris:interlok-shell artefacts and dependencies manually; download them directly from our public repository or use Ant+Ivy to deploy them.

NOTE: interlok shell requires the interlok instance to be started with a jdk.


To enable interlok shell changes will need to be made to, as well an additional properties file

Bootstrap properties

The following property changes will need to be made to, see example below:

Property Description
managementComponents New management component crash needs to be added
crash.config.dir New Property - Location of the
crash.command.dir New Property - Directory for user created command (needs to exist)

Crash Properties

The new properties file has lots of options which are documented on the CRaSH website; see example below:

Property Type Description
crash.sshdev.enabled Enable noauth SSH plugin Enable the sshdev plugin which doesn’t require authentication
crash.sshdev.port noauth SSH port Specify the port for the sshdev plugin (if not specified a random is chosen)
crash.ssh.port SSH Configuration SSH Port
crash.ssh.keypath SSH Configuration SSH key path
crash.ssh.keygen SSH Configuration Boolean - Automatically generate host key (works only if ssh.keypath is specified)
crash.ssh.idle_timeout SSH Configuration The idle-timeout for ssh sessions in milliseconds
crash.ssh.auth_timeout SSH Configuration The authentication timeout for ssh sessions in milliseconds
crash.ssh.default_encoding SSH Configuration The default SSH encoding
crash.vfs.refresh_period VFS Configuration VFS refresh rate period
crash.auth Authentication Configuration Authentication type - Available options simple, jass, key
crash.auth.simple.username Authentication Configuration Type simple - The username
crash.auth.simple.password Authentication Configuration Type simple - The password
crash.auth.jaas.domain Authentication Configuration Type jass - The jaas authentication domain
crash.auth.key.path Authentication Configuration Type key - The key path

Example Configuration

Example -


# Force jboss logging to use slf4j



Example -

# SSH configuration

# Automatically generate host key (works only if ssh.keypath is specified)

# The idle-timeout for ssh sessions in milliseconds

# The authentication timeout for ssh sessions in milliseconds

# The default SSH encoding

# Telnet configuration

# VFS configuration

# Simple authentication

# Jaas authentication

# Key authentication
Tags: advanced