A zsh plugin for securely managing SSH hosts with an interactive fzf interface.
- Interactive Management: Browse and connect to SSH hosts with fzf-powered fuzzy search and live previews
- Secure Key Creation: Generate ed25519 or RSA-4096 keys with automatic SSH agent integration
- Host Organization: Pin frequently-used hosts and add descriptions for quick identification
- Non-Invasive: Separate SSH config file with automatic backups
- Minimal Dependencies: Uses native SSH tools for maximum compatibility
zsh>= 5.0fzf- Fuzzy finder for interactive selection
Oh My Zsh
- Clone the repository:
git clone https://github.com/obolientsev/ssh-host ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/ssh-host- Add to your plugins list in
~/.zshrc:
plugins=(ssh-host $plugins)- Restart your shell:
source ~/.zshrcZinit / Antigen / Znap
Add to your ~/.zshrc:
zinit load "obolientsev/ssh-host"
# or
antigen bundle obolientsev/ssh-host
# or
znap source "obolientsev/ssh-host"1. Install fzf:
# macOS
brew install fzf
# Ubuntu/Debian
sudo apt install fzf
# Arch Linux
sudo pacman -S fzf- Launch the plugin:
ssh-host- Follow the instructions to add your first host.
| Key | Action |
|---|---|
↑/↓ |
Navigate hosts |
Enter |
Connect to selected host |
Ctrl-N |
Add new host |
Ctrl-E |
Edit selected host description |
Ctrl-P |
Toggle pin status of selected host |
Esc |
Quit |
Note: This plugin manages SSH configurations in a separate file to avoid conflicts with your existing setup. All generated keys are stored in ~/.ssh/ssh_host/keys/.
