SSHTron is a multiplayer lightcycle game that runs through SSH. Just run the command below and you'll be playing in seconds:
$ ssh sshtron.zachlatta.com
Controls: WASD or vim keybindings to move (do not use your arrow keys). Escape or Ctrl+C to exit.
Code quality disclaimer: SSHTron was built in ~20 hours at BrickHack 2. Here be dragons.
Want to choose color yourself?
There are total 7 colors to choose from: Red, Green, Yellow, Blue, Magenta, Cyan and White
$ ssh [email protected]
If the color you picked is already taken in all open games, you'll randomly be assigned a color.
Running Your Own Copy
Clone the project and cd into its directory. These instructions assume that you have your GOPATH setup correctly.
# Create an RSA public/private keypair in the current directory for the server # to use. Don't give it a passphrase. $ ssh-keygen -t rsa -f id_rsa # Download dependencies and compile the project $ go get && go build # Run it! You can set PORT to customize the HTTP port it serves on and SSH_PORT # to customize the SSH port it serves on. $ ./sshtron
Running under a Docker container
Clone the project and cd into its directory.
# Build the SSHTron Docker image $ docker build -t sshtron . # Spin up the container with always-restart policy $ docker run -t -d -p 2022:2022 --restart always --name sshtron sshtron
For Raspberry Pi, use the following to build the Docker image:
$ docker build -t sshtron --build-arg BASE_IMAGE=resin/raspberry-pi-golang:latest .
CVE-2016-0777 revealed two SSH client vulnerabilities that can be exploited by a malicious SSH server. While SSHTron does not exploit these vulnerabilities, you should still patch your client before you play. SSHTron is open source, but the server could always be running a modified version of SSHTron that does exploit the vulnerabilities described in CVE-2016-0777.
If you haven't yet patched your SSH client, you can follow these instructions to do so now.
License