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/.
