Quick start
This is a quick start guide to get a test server up and running in less than 5 minutes with docker-compose or Kubernetes.
▶️ Watch as Video (Docker) ▶️ Watch as Video (Kubernetes)
Warning
This setup will let any password authenticate. Only use it for testing.
Step 1: Set up a Dockerized environment¶
To run this quick start please make sure you have a working Docker environment and a working docker-compose.
To run this quick start please make sure you have a working Kubernetes environment. We recommend setting up Docker Desktop, k3s, or Kubernetes in Docker.
Step 2: Download the sample files¶
Please download the contents of the example directory from the source code repository.
Step 3: Launch ContainerSSH¶
In the downloaded directory run docker-compose up -d
.
In the downloaded directory run kubectl apply -f kubernetes.yaml
.
Step 4: Logging in¶
Run ssh foo@localhost -p 2222
on the same machine via a new terminal window. This is your test client. You should be able to log in with any password.
Alternatively you can also try the user busybox
to land in a Busybox container.
Step 5: Cleaning up¶
Once you're done, you can shut down the server using the docker-compose down
, then remove the images using docker-compose rm
.
Finally, you can also remove the guest image:
docker image rm containerssh/containerssh-guest-image
Once you're done, you can shut down the server by running kubectl delete -f kubernetes.yaml
.
Step 6: Making it productive¶
The authentication and configuration server included in the example is a dummy server and lets any password in. To actually use ContainerSSH, you will have to write your own authentication server. We recommend reading the architecture overview before proceeding.
Tip
You can pass the CONTAINERSSH_ALLOW_ALL
environment variable to the demo auth-config server to build a honeypot.