quantumsheep / sshs

Terminal user interface for SSH
MIT License
963 stars 32 forks source link
cli command-line-tool ssh tui

sshs

Packaging status

Terminal user interface for SSH.
It uses ~/.ssh/config to list and connect to hosts.



example

Requirements

You need to have ssh installed and accessible from your terminal.

How to install

Homebrew

brew install sshs

Chocolatey

Thanks to Jakub Levý for maintaining this package on Chocolatey.

choco install sshs

Arch Linux

Pacman

Vote for the package to be added to the official repository.
In the meantime you can manually install it by cloning the repository and running makepkg:

pacman -S --needed git base-devel
git clone https://aur.archlinux.org/sshs.git
cd sshs
makepkg -si

Yay

yay -Syua --needed --noconfirm sshs

NixOS / Nix

As a Flake

nix profile install 'github:quantumsheep/sshs'

In your NixOS configuration

environment.systemPackages = with pkgs; [ sshs ];

In your Home Manager configuration

home.packages = with pkgs; [ sshs ];

From releases

Releases contains prebuilt binaries for Linux, macOS and Windows. You can download them at https://github.com/quantumsheep/sshs/releases.

From sources

Building sshs from sources requires Rust compiler and Cargo to be installed. You can install them with rustup.

cargo install --git https://github.com/quantumsheep/sshs

Be sure to have ~/.cargo/bin in your PATH environment variable.

You can also clone the repository and build it manually:

git clone https://github.com/quantumsheep/sshs.git
cd sshs
cargo build --release

The binary will be located at ./target/release/sshs once the build is complete.

Troubleshooting

[...]/.ssh/config: no such file or directory

If you want to use another SSH config file, you can use the --config option.

Here's a sample ~/.ssh/config file:

Host *
  AddKeysToAgent yes
  UseKeychain yes
  IdentityFile ~/.ssh/id_rsa

Host "My server"
  HostName server1.example.com
  User root
  Port 22

Host "Go through Proxy"
  HostName server2.example.com
  User someone
  Port 22
  ProxyCommand ssh -W %h:%p proxy.example.com

You can check the OpenBSD ssh_config reference for more information on how to setup ~/.ssh/config.