Setting up the C2
Installation and Quick Start
To install the Client and Server docker on the same host and set everything up, simply:
Or if you prefer shorter curl:
CLI Autocomplete
The setup will also install shell tuoni autocomplete for bash and zsh. You need to source the autocomplete script to enable it in the setup shell:
All the new shell sessions will have the autocomplete enabled.
After running the installation script and sourcing the relevant rc file, just execute:
This will start the client on port 12702 and server on port 8443 by default using snakeoil certificates. You can change the server port and certificates by editing the config/tuoni.yml file.
The client docker uses nginx docker proxy on port 12702 by default using snakeoil certificates. You can change the port and certificates by editing the docker-compose.yml file.
Configuration File Example
The default configuration file is located at config/tuoni.yml after initialization:
Operating System Support
- Works on Debian-based systems.
 - Tested on Ubuntu 24.04 and Kali 2025.2.
 
CLI Commands
Tuoni CLI Commands
tuoni <start|stop|restart|logs>
C2 interactions
- Start: Starts client and server docker.
  
 - Stop: Stops client and server dockers.
  
 - Restart: Restarts client and server dockers.
  
 - Logs: Tails client and server dockers logs.
  
 
tuoni <clean-configuration|update|update-silent>
Maintenance interactions
- Clean Configuration: Prompts which configuration files to remove and resets them to default.
  
 - Update: Perform git and docker pull.
  
 - Update Silent: Perform git and docker pull silently.
  
 
tuoni <update-docker-images|export-docker-images|import-docker-images>
Docker image interactions
- Update Docker Images: Updates the docker images.
  
 - Export Docker Images: Exports the docker images to 
/srv/tuoni/transfer/tuoni-docker-images.tarfile. - Import Docker Images: Imports the docker images from 
/srv/tuoni/transfer/tuoni-docker-images.tarfile. 
tuoni <transfer-tuoni-package|export-tuoni-package|import-tuoni-package>
Tuoni package transferring interactions
- Transfer Tuoni Package: Transfers the Tuoni package to remote host via rsync. More details on Offline Mode page.
  
 - Export Tuoni Package: Exports the Tuoni package - git and docker images to 
/srv/tuoni/transferfolder. - Import Tuoni Package: Imports the Tuoni package - git and docker from 
/srv/tuoni/transferfolder. 
Tuoni Server CLI Commands
tuoni server
- Start: Starts server docker.
  
 - Stop: Stops server docker.
  
 - Restart: Restarts server docker.
  
 - Logs: Tails the server docker logs.
  
 
Tuoni Client CLI Commands
tuoni client
- Start: Starts client dockers.
  
 - Stop: Stops client dockers.
  
 - Restart: Restarts client dockers.
  
 - Logs: Tails the client docker logs.
  
 
Tuoni Client CLI Commands
tuoni docs
- Start: Starts docs dockers.
  
 - Stop: Stops docs dockers.
  
 - Restart: Restarts docs dockers.
  
 - Logs: Tails the docs docker logs.