WISSH should be installed on a machine that can access the remote machines you wish to connect to. WISSH will handle SSH sessions from the machine it is installed on, allowing you to SSH through it from a web browser.
WISSH uses Node.js's HTTPS module for secure, encrypted communication. HTTPS requires a private key and the corresponding certificate. You may use a self-signed certificate to run WISSH. If you do not have a certificate, you can follow the instructions below.
- If you do not have OpenSSL installed, you can download and build it from the source, or install it with Win32/Win64 OpenSSL.
- Add OpenSSL to your system PATH.
- Open Command Prompt.
- Navigate into the WISSH folder.
- Run
mkdir ssl\certs ssl\private
- Run
openssl req -newkey rsa:4096 -noenc -keyout ssl\private\key.pem -x509 -days 365 -out ssl\certs\certificate.pem -subj "/CN=wissh"
- Open Terminal.
- If you do not have OpenSSL installed, you can install it with Homebrew. Run
brew install openssl
. - Navigate into the WISSH folder.
- Run
mkdir -p ssl/{certs,private}
- Run
openssl req -newkey rsa:4096 -noenc -keyout ssl/private/key.pem -x509 -days 365 -out ssl/certs/certificate.pem -subj "/CN=wissh"
We recommend using Docker to run WISSH.
- Download Docker Desktop if you do not already have it.
- Open Docker Desktop.
You can use the docker compose
command to start and stop WISSH.
- Navigate into the WISSH folder.
- Open
compose.yaml
. Underservices
,backend
andfrontend
,build
, make suretarget
is set toprod
. - Run
docker compose up --build -d
to start WISSH. - Run
docker compose down
to stop WISSH.
You can also quit Docker Desktop to stop WISSH.
To contribute, please follow the general outline presented by GitHub: https://docs.github.com/en/get-started/exploring-projects-on-github/contributing-to-a-project.
If you do not have Node.js v21, you can install it here: https://nodejs.org/en/download.
WISSH can also be built and run on your local machine for development.
To run the development build of WISSH:
- Navigate into the WISSH folder.
- Navigate into the backend folder.
- Run
npm install
. - Run
npm run dev
. - Navigate into the frontend folder.
- Run
npm install
. - Run
npm start
.
To run the production build of WISSH:
- Navigate into the WISSH folder.
- Navigate into the backend folder.
- Run
npm install
. - Run
node src/index.js
. - Navigate into the frontend folder.
- Run
npm install
. - Run
npm run build
. - Run
npm install -g serve
. - Run
serve -s build --ssl-cert "../ssl/certs/certificate.pem" --ssl-key "../ssl/private/key.pem"
.
You can also use Docker to run WISSH for development.
- Navigate into the WISSH folder.
- Open
compose.yaml
. Underservices
,backend
andfrontend
,build
, make suretarget
is set todev
. - Run
docker compose up -d --build
to start WISSH.