sshManager - client app for https://sshm.io
sshManager is a terminal-based application for managing SSH connections, file transfers, and credentials with an intuitive user interface and cloud synchronization capabilities.
Web panel with cloud api on Github: sshm.io
Web panel hosted by me: sshm.io
- Secure storage of SSH credentials and keys
- File transfer capabilities (SFTP/SCP)
- Cloud synchronization (optional)
- Multiple color themes
- Interactive terminal sessions
- Local and remote file browsing
- Password and SSH key authentication
# Clone the repository
git clone https://github.com/kofany/sshmanager.git
# Build the application
cd sshmanager
go build -o sshm↑/↓orw/s- Navigate through listsTab- Switch between panelsESC- Go back/Cancelq- Quit applicationSpace- Switch color theme
h- Add new hosteorF4- Edit selected hostdorF8- Delete selected hostcorEnter- Connect to selected host
p- Open password managementa- Add new passworde- Edit selected passwordd- Delete selected password
k- Open SSH key managementa- Add new SSH keye- Edit selected keyd- Delete selected key
t- Enter file transfer mode when host is selectedTab- Switch between local and remote panelsF5orc- Copy file/directoryF6orr- Rename file/directoryF7orm- Create new directoryF8ord- Delete file/directorys- Select/deselect item for batch operationsEnter- Enter directory
Additionally, for function key operations like in Midnight Commander:
ESC + [number]also triggers the corresponding function key (e.g.,ESC + 5forF5).
- All standard terminal shortcuts work in SSH sessions
- Session automatically handles terminal resize
- Keep-alive functionality to maintain connection
The application stores its configuration in:
- Linux/Mac:
~/.config/sshm/ssh_hosts.json - Windows:
%USERPROFILE%\.config\sshm\ssh_hosts.json
- Register at https://sshm.io to get an API key
- Enter the API key when prompted on first run
- Press
ESCto work in local mode without synchronization
- AES-256-GCM encryption for sensitive data
- Secure storage of passwords and private keys
- Automatic backup before sync operations
- Support for SSH key authentication
- Connect to host:
c/Enter - Add new host:
h - Edit host:
e/F4 - Delete host:
d/F8 - Password management:
p - SSH key management:
k - File transfer mode:
t - Switch theme:
Space - Quit:
q/Ctrl+c
- Switch panels:
Tab - Copy:
F5/c - Rename:
F6/r - Make directory:
F7/m - Delete:
F8/d - Select item:
s - Open directory:
Enter - Return to main view:
q
- Verify host information
- Check network connectivity
- Ensure correct credentials
- Verify API key
- Check internet connection
- Ensure backup is available
- Check SSH key permissions (should be 600)
- Verify user permissions on remote host
The application is built using:
- Go programming language
- Bubble Tea TUI framework
- Lip Gloss styling
- Crypto/SSH for SSH functionality
- SFTP/SCP for file transfers
For support, please:
- Report issues on GitHub
- Contact support at [email protected]
This project is licensed under the GNU GPL v3 License - see the LICENSE file for details.