2025-08-13 10:39:40 +01:00
|
|
|
|
# lazyssh
|
|
|
|
|
|
|
2025-08-14 11:51:07 +01:00
|
|
|
|
**lazyssh** is a terminal-based, interactive SSH manager inspired by tools like **lazydocker** and **k9s** — but built
|
|
|
|
|
|
for managing your fleet of servers directly from your terminal.
|
2025-08-13 10:39:40 +01:00
|
|
|
|
|
2025-08-14 11:51:07 +01:00
|
|
|
|
With **lazyssh**, you can quickly **navigate**, **connect**, **manage**, and **transfer files** between your local
|
|
|
|
|
|
machine and any server defined in your `~/.ssh/config`.
|
2025-08-13 10:39:40 +01:00
|
|
|
|
No more remembering IP addresses or running long `scp` commands — just a clean, keyboard-driven UI.
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## ✨ Features
|
|
|
|
|
|
|
2025-08-14 11:51:07 +01:00
|
|
|
|
### Server Management
|
|
|
|
|
|
|
2025-08-13 10:39:40 +01:00
|
|
|
|
- 📜 **Read & display** servers from your `~/.ssh/config` in a scrollable list.
|
|
|
|
|
|
- ➕ **Add** a new server entry from the UI by specifying:
|
2025-08-14 11:51:07 +01:00
|
|
|
|
- Host alias
|
|
|
|
|
|
- HostName / IP
|
|
|
|
|
|
- Username
|
|
|
|
|
|
- Port
|
|
|
|
|
|
- Identity file
|
2025-08-13 10:39:40 +01:00
|
|
|
|
- ✏ **Edit** existing server entries directly from the UI.
|
|
|
|
|
|
- 🗑 **Delete** server entries safely.
|
|
|
|
|
|
|
|
|
|
|
|
### **Quick Server Navigation**
|
2025-08-14 11:51:07 +01:00
|
|
|
|
|
2025-08-13 10:39:40 +01:00
|
|
|
|
- 🔍 **Fuzzy search** through servers by alias or IP.
|
|
|
|
|
|
- ⏩ Instant SSH into selected server with a single keypress.
|
|
|
|
|
|
- 🏷 Grouping/tagging of servers (e.g., `prod`, `dev`, `test`) for quick filtering.
|
|
|
|
|
|
|
|
|
|
|
|
### **Remote Operations**
|
2025-08-14 11:51:07 +01:00
|
|
|
|
|
2025-08-13 10:39:40 +01:00
|
|
|
|
- 🖥 **Open Terminal**: Start an SSH session instantly.
|
|
|
|
|
|
- 📤 **Copy from server → local**: Select remote file/folder, choose local destination.
|
|
|
|
|
|
- 📥 **Copy from local → server**: Select local file/folder, choose remote destination.
|
|
|
|
|
|
|
|
|
|
|
|
### **Port Forwarding**
|
2025-08-14 11:51:07 +01:00
|
|
|
|
|
2025-08-13 10:39:40 +01:00
|
|
|
|
- 📡 Easily forward local ports to remote services (and vice versa) from the UI.
|
|
|
|
|
|
- Save & reuse common port forwarding setups.
|
|
|
|
|
|
|
2025-08-14 11:51:07 +01:00
|
|
|
|
### **SSH Key Management**
|
|
|
|
|
|
|
|
|
|
|
|
- 🔑 **Deploy public keys** to selected servers directly from the UI.
|
|
|
|
|
|
- Choose one of three modes:
|
|
|
|
|
|
- Use your default local public key (`~/.ssh/id_ed25519.pub` or `~/.ssh/id_rsa.pub`)
|
|
|
|
|
|
- Paste a custom public key manually
|
|
|
|
|
|
- Generate a new keypair and deploy it
|
|
|
|
|
|
- Automatically append the key to `~/.ssh/authorized_keys` with correct permissions.
|
|
|
|
|
|
|
2025-08-13 10:39:40 +01:00
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 🎯 Use Cases
|
|
|
|
|
|
|
|
|
|
|
|
- Developers switching between dozens of dev/test/staging/production VMs
|
|
|
|
|
|
- Sysadmins managing multiple environments and needing quick access
|
|
|
|
|
|
- Anyone who wants **fast, zero-hassle SSH management** without memorizing IPs
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
2025-08-14 11:51:07 +01:00
|
|
|
|
## 🚀 Usage
|
|
|
|
|
|
|
|
|
|
|
|
- Launch TUI (default):
|
|
|
|
|
|
- ./lazyssh
|
|
|
|
|
|
- Show version:
|
|
|
|
|
|
- ./lazyssh -v
|
|
|
|
|
|
- ./lazyssh --version
|
|
|
|
|
|
- ./lazyssh version
|
|
|
|
|
|
- List servers in terminal:
|
|
|
|
|
|
- ./lazyssh list
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|