Skip to content

External Listener

The external listener enables integration with external C2 frameworks through WebSocket connections. Instead of handling agent connections directly, it manages communication with other C2 systems, allowing unified control of agents across multiple frameworks.

Plugin ID: shelldot.listener.external-ws

External listener integration diagram

Configuration

The If omitted column describes hand-written JSON sent directly to the server. The plugin's named default example is different: it explicitly supplies port 8123, contextPath /, and both Boolean options as false.

Parameter Type Required If omitted Description
host string No All interfaces Address or hostname of the interface where the listener binds.
port int Yes Invalid Port (1-65535) on which the listener accepts WebSocket connections.
contextPath string Yes Listener initialization fails URL path prefix for the WebSocket endpoint. Supply / for the root path or another explicit path for a subpath.
restrictDataToUser bool No false Restricts agents, commands, and templates to the authenticated user who created the agent. It is effective only when requireJwtAuthentication is true; otherwise the server forces it to false. This restriction does not apply to API operations.
requireJwtAuthentication bool No false Requires a Tuoni JWT authentication token for WebSocket connections. Tokens are obtained through the C2 API login.