koko

module
v0.0.0-...-cb06f26 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 12, 2026 License: GPL-3.0

README

KoKo

English · 简体中文

KoKo is a connector of JumpServer for secure connections using character protocols, supporting SSH, Telnet, Kubernetes, SFTP and database protocols

Koko is implemented using Golang and Vue, and the name comes from a Dota hero Kunkka

Features

  • SSH
  • SFTP
  • Web Terminal
  • Web File Management

Installation

  1. Clone the project
git clone https://github.com/jumpserver/koko.git
  1. Build the application

Build the application in the koko project.

make

If the build is successful, the build folder will be automatically generated under the project, which contains compressed packages of various architectures of the current branch.

Usage (for Linux amd64 server)

  1. Copy the compressed package file to the corresponding server
Build the default compressed package through make, the file name is as follows:
koko-[branch name]-[commit]-linux-amd64.tar.gz
  1. Unzip the compiled compressed package
tar xzvf koko-[branch name]-[commit]-linux-amd64.tar.gz
  1. Create the file config.yml, refer to config_example.yml
touch config.yml
  1. run koko
cd koko-[branch name]-[commit]-linux-amd64

./koko

Setup development environment

  1. Run the backend server

$ cp config_example.yml config.yml # 1. Prepare the configuration file
$ vim config.yml  # 2. Modify the configuration file, edit the address and bootstrap key
CORE_HOST: http://127.0.0.1:8080
BOOTSTRAP_TOKEN: PleaseChangeMe <change to the same as core>

$ make run # 3. Run; the prebuilt libghostty-vt is downloaded on first use
  1. Run the ui frontend
$ cd ui 
$ yarn install
$ npm run serve

Docker

To build multi-platform images using Docker Buildx, you need to install Docker version 19.03 or higher and enable the Docker Buildx plugin.

make docker

For local development and testing, export the bootstrap token used by JumpServer Core and start Koko with Docker Compose:

docker compose up --build

By default, Koko connects to http://host.docker.internal:8080, exposes SSH on port 2222, HTTP on port 5050, and the Web Proxy on port 5001. Set CORE_HOST, KOKO_SSH_PORT, KOKO_HTTP_PORT, or KOKO_WEB_PROXY_PORT to override them. The Web Proxy accepts all target hosts after establishing a session with the existing Koko connect ticket and Core connection token. Unauthenticated HTTP and CONNECT requests receive 407; the deployment host allowlist has been removed. Established Web sessions use the shared Koko session registry for permission checks and administrative tasks.

Acknowledgments

This project depends on usql for database connections. We appreciate their support.

Directories

Path Synopsis
cmd
i18ntool command
koko command
internal
tui
Package tui provides the SSH screen and embedded terminal used by Koko's TUI.
Package tui provides the SSH screen and embedded terminal used by Koko's TUI.
pkg

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL