Managing Hosts
Learn about all host management features in Xermius - from creating new hosts to editing, duplicating, and deleting them.
Overview
Xermius provides comprehensive host management capabilities through an intuitive interface. Each host represents a complete SSH connection configuration including server details, authentication credentials, and organizational metadata.
Core Operations:
- Create new host connections
- Edit existing host details
- Delete hosts you no longer need
- Duplicate hosts for similar servers
- Connect to hosts with one click
- Open SFTP file manager for any host
- Test connections before saving
Hosts Management Tabs
The Hosts section is organized into multiple tabs, each providing specialized functionality:
🏠 Dashboard
Your main workspace for managing SSH connections:
- Host cards: Visual representation of all your servers
- Groups & tags: Organize hosts by project, environment, or client
- Quick actions: Connect, SFTP, edit, duplicate, delete
- Search & filter: Find hosts quickly by name, tag, or group
- Import/Export: Migrate from other SSH clients (PuTTY, MobaXterm, Termius, SecureCRT)
- Bulk operations: Manage multiple hosts at once
🔑 Keychain
Centralized SSH key management:
- Generate keys: Create new SSH key pairs (RSA, ED25519, ECDSA)
- Import keys: Import existing private/public keys
- Deploy keys: Push public keys to servers automatically
- Key details: View fingerprints, comments, and usage
- Export keys: Backup keys in various formats
- SSL tools: Create CSR, check SSL certificates, read certificate details
- Key types: Support for private keys, public keys, and certificates
🔀 Port Forwarding
SSH tunnel management:
- Local forwarding: Access remote services on local ports
- Remote forwarding: Expose local services to remote servers
- Dynamic forwarding: SOCKS proxy for secure browsing
- Tunnel monitoring: Track active tunnels, bandwidth, and uptime
- Auto-reconnect: Automatic tunnel restoration on disconnect
- Common ports: Pre-configured templates for popular services
☁️ Cloudflare Tunnels
Cloudflare Tunnel integration:
- Tunnel management: Create and manage Cloudflare tunnels
- Secure access: Expose services without opening ports
- Zero Trust: Integrate with Cloudflare Access
- Monitoring: Track tunnel status and traffic
🛠️ Web Tools
Utility tools for server management:
- SSL Checker: Verify SSL certificate validity and expiration
- Certificate Reader: Parse and display certificate details
- Port Scanner: Check open ports on remote hosts
- DNS Lookup: Resolve hostnames and check DNS records
📝 Snippets
Command snippet library:
- Snippet categories: Organize commands by purpose
- Variables: Use placeholders for dynamic values
- Quick execution: Run snippets on one or multiple hosts
- Snippet library: Pre-built snippets for common tasks
- Copy & paste: Insert snippets into terminal without execution
- Multi-host execution: Run same command across multiple servers
🔒 Known Hosts
SSH host key management:
- Fingerprint verification: View and verify SSH host keys
- Key changes: Detect and handle host key changes
- Import/Export: Backup and restore known_hosts
- Security warnings: Alert on suspicious key changes
- Bulk management: Remove or update multiple entries
📊 Logs
Activity and connection logs:
- Activity logs: Track all application activities
- Connection logs: Monitor SSH connection attempts
- Error logs: Debug connection issues
- Filter & search: Find specific log entries
- Export logs: Save logs for analysis or support
- Log levels: Filter by error, warning, info, debug
⚙️ Settings
Application preferences and configuration:
- General settings: App behavior and appearance
- Terminal settings: Font, cursor, scrollback, bell sound
- Notification settings: Configure notification preferences
- Sync settings: Cross-device synchronization options
- Security settings: Master password, auto-lock, session timeout
- Advanced settings: Debug mode, log level, performance options
Creating Hosts
New Host Dialog
The New Host dialog provides a comprehensive form for configuring SSH connections. Access it through:
- NEW HOST button in the action bar
- NEW HOST dropdown → New Host option
- Keyboard navigation
Form Organization: The dialog uses a two-tab layout:
- Connection Tab: Essential connection and authentication details
- Advanced Tab: Organization and metadata
Connection Details
Host Name: Display name for the server in your dashboard. This is what you'll see on the host card and search by.
Examples:
✓ Production Web Server
✓ staging-db-01
✓ Dev API Gateway
✓ Client XYZ - WordPress
Host Address: IP address or hostname of the server.
Supported formats:
✓ 192.168.1.100
✓ example.com
✓ subdomain.example.com
✓ server.internal.network
Port: SSH port number. Default is 22 (standard SSH port).
Common ports:
• 22 - Standard SSH (default)
• 2222 - Alternate SSH
• Custom ports for security through obscurity
Username: SSH login username for authentication.
Common usernames:
• ubuntu - Ubuntu servers
• ec2-user - Amazon Linux
• root - Root access (not recommended for production)
• admin - Administrative accounts
• Custom usernames per your setup
Authentication Methods
Xermius supports two authentication methods:
Password Authentication
How It Works: Standard password-based SSH login. Enter the password and it's stored securely in the application.
Password Field Features:
- Masked by default for security
- Toggle visibility with eye icon
- Optional (can be left empty)
- Stored encrypted
When to Use:
- Quick setup for development servers
- Temporary or testing environments
- Servers without SSH key support
- When key management isn't needed
Security Considerations:
- Less secure than SSH keys
- Vulnerable to brute force attacks
- Consider keys for production servers
- Regular password rotation recommended
SSH Key Authentication
How It Works: Uses public-key cryptography for authentication. Select a private key from your Keychain, and Xermius handles the connection.
Key Selector:
- Dropdown showing all keys in Keychain
- Displays key name and type (ED25519, RSA, etc.)
- Option for "No Key" (password auth)
- Link to generate new keys
Benefits:
- More secure than passwords
- Automated authentication
- No password transmission
- Industry best practice
- Required by many cloud providers
Key Types Supported:
- ED25519 - Modern, fast, secure (recommended)
- RSA - Traditional, widely supported
- ECDSA - Elliptic curve, good security
Setup Requirements:
- Generate SSH key in Keychain tab
- Deploy public key to server
- Select private key in host config
- Test connection
Related: See SSH Keys for key generation and Key Management for deployment.
Connection Testing
Test Connection Feature: Built-in connection testing verifies your configuration before saving.
What It Tests:
- Server reachability (network connection)
- Port accessibility
- Authentication credentials
- SSH handshake
- User permissions
Test Process:
- Click Test Connection button
- Xermius attempts connection
- Results displayed instantly
- Success or error message shown
Success Indicators:
✓ Connection successful
✓ Authentication verified
✓ Server accessible
✓ Ready to save and use
Common Errors:
✗ Connection timeout - Server unreachable or firewall blocking
✗ Connection refused - Wrong port or SSH not running
✗ Authentication failed - Wrong password or key not authorized
✗ Permission denied - User doesn't have SSH access
Best Practice: Always test connections before saving, especially for production servers. This catches configuration errors immediately.
Advanced Settings
Group Assignment
Assign the host to a group for organization:
- Select from existing groups
- Default group selected automatically
- Change group anytime after creation
- Helps filter and find hosts
Group Strategy: Choose groups based on your organizational needs:
- Environment (Production, Staging, Development)
- Project (Project A, Project B, Internal)
- Location (US East, EU West, Asia)
- Client (if managing multiple client servers)
Operating System Selection
Select the OS running on the server:
Available Options:
- Ubuntu - Orange icon, most popular
- CentOS - Purple icon, enterprise
- Debian - Red icon, stable
- Amazon Linux - Orange icon, AWS
- Fedora - Blue icon, cutting edge
- RHEL - Dark red icon, enterprise
- SUSE - Green icon, enterprise
- Other - Gray icon, generic Linux
Why It Matters:
- Visual identification with colored icons
- Quick recognition in dashboard
- Terminal optimizations per OS
- Default shell detection
Tip: Select the correct OS for best experience, but it's not critical - you can always change it later.
Tags
Add multiple tags to categorize hosts:
Tag Features:
- Multi-select from predefined tags
- Create custom tags on-the-fly
- Add as many as needed
- Colored badges on host cards
- Search by tags later
Predefined Tags:
- Production
- Development
- Staging
- Web Server
- Database
- API Server
- Cache Server
- Backup
Custom Tags: Type new tag name and add it. Tags are shared across all hosts and persist for future use.
Tagging Strategy: Use tags for flexible, multi-dimensional organization:
Environment: production, staging, development
Service Type: web, database, cache, api, queue
Priority: critical, standard, low
Maintenance: weekly-patch, monthly-patch
Projects: project-a, project-b, client-xyz
Comment Field
Optional text field for notes:
Use Cases:
- Server purpose or role
- Maintenance windows
- Special configuration notes
- Contact information
- Deployment instructions
- Known issues or quirks
Example Comments:
"Production web server - Auto-deploys from main branch"
"Database primary - Nightly backup at 2 AM UTC"
"API gateway - Rate limited to 1000 req/min"
"Client staging - Deploy from develop branch only"
Save Options
Two ways to complete host creation:
Save:
- Saves host configuration
- Returns to dashboard
- Host appears in card grid
- Click later to connect
Save & Connect:
- Saves host and immediately connects
- Opens terminal tab automatically
- Start working right away
- Convenient for immediate use
Editing Hosts
Edit Host Dialog
Modify any aspect of an existing host through the Edit Host dialog.
Access Edit:
- Three-dot menu → Edit
- Right-click host → Edit
- Keyboard navigation
What You Can Edit:
- All connection details (name, host, port, username)
- Authentication (switch password/key, update credentials)
- Group assignment
- Operating system
- Tags (add, remove, modify)
- Comments
Form Layout: Identical to New Host dialog:
- Connection tab with all connection details
- Advanced tab with organization fields
- Test Connection button available
- Update button to save changes
Editing Connection Details
Change Host Address or Port: Useful when:
- Server IP changes
- Moving to different server with same role
- Port configuration changes
- DNS hostname updates
Update Username: Needed when:
- Account credentials change
- Switching to different user (e.g., from root to regular user)
- Security policy changes
Note: Changing connection details may require re-testing the connection.
Changing Authentication
Switch Authentication Method: You can change between password and SSH key authentication:
- From password to key (recommended upgrade)
- From key to password (if needed)
- Update existing password
- Select different SSH key
Password Update:
- Enter new password in field
- Test connection to verify
- Save changes
Key Update:
- Select different key from Keychain
- Ensure public key deployed on server
- Test connection to verify
- Save changes
Updating Organization
Reassign Group: Move hosts between groups anytime:
- Select different group from dropdown
- Useful when reorganizing structure
- Affects filtering and display
- Immediate effect after saving
Modify Tags:
- Add new tags to host
- Remove tags no longer relevant
- Update tag strategy over time
- Flexible categorization
Update OS Selection: Change if you selected wrong OS initially or if server OS was upgraded.
Edit Comments: Keep comments up-to-date with server changes, new responsibilities, or updated contact information.
Live Updates
Changes take effect immediately after saving:
- Host card updates in dashboard
- Search and filters reflect changes
- Group assignments update
- Tags display updated
- No restart or refresh needed
Deleting Hosts
Delete Confirmation
Xermius requires confirmation before deleting hosts to prevent accidental data loss.
Delete Process:
- Select Delete from actions menu
- Confirmation dialog appears
- Review host name being deleted
- Confirm or cancel
Confirmation Dialog:
Are you sure you want to delete this host?
Host: Production Web Server (192.168.1.100)
This action cannot be undone.
Active sessions will be closed.
[Cancel] [Delete]
What Happens
When you delete a host:
Immediate Effects:
- Host removed from dashboard
- No longer appears in search
- Cannot be recovered (permanent)
- Active terminal sessions closed
- SFTP sessions terminated
What's NOT Affected:
- Server itself (only local config deleted)
- Groups remain (even if empty)
- Tags remain for other hosts
- Import/export history
When to Delete
Appropriate Times:
- Server decommissioned
- No longer managing that server
- Duplicate entry created by mistake
- Moving to different SSH client
- Cleanup of unused connections
Consider Before Deleting:
- Export hosts first for backup
- Close active sessions gracefully
- Note any unique configuration
- Verify you have connection details elsewhere
Alternative to Deletion: If you might need the host later, consider:
- Moving to an "Archive" group
- Adding "inactive" tag
- Keeping but not connecting
Duplicating Hosts
Duplicate Feature
Create a copy of existing host with all settings pre-filled, perfect for setting up similar servers.
Access Duplicate:
- Three-dot menu → Duplicate
- Right-click host → Duplicate
What Happens:
- New Host dialog opens
- All fields pre-filled from source host
- Modify fields as needed
- Save as new host
What Gets Copied:
- Connection details (host, port, username)
- Authentication method (password or key)
- Group assignment
- OS selection
- Tags
- Comment
What You Should Change:
- Host name (make it unique)
- Host address/IP (different server)
- Any server-specific details
Use Cases
Load-Balanced Servers:
Source: web-01 (192.168.1.10)
Duplicate → web-02 (192.168.1.11)
Duplicate → web-03 (192.168.1.12)
Same config, different IPs
Environment Copies:
Source: Production API (api.prod.com)
Duplicate → Staging API (api.staging.com)
Duplicate → Dev API (api.dev.com)
Same setup across environments
Similar Client Servers:
Source: Client A - WordPress
Duplicate → Client B - WordPress
Duplicate → Client C - WordPress
Same WordPress setup for each client
Testing Different Credentials:
Source: prod-db (root user, key auth)
Duplicate → prod-db-readonly (app user, password)
Same server, different access levels
Duplicate Workflow
Efficient Setup:
- Create first host with complete config
- Test and verify it works
- Duplicate for similar hosts
- Change only hostname and IP
- Test each duplicate
- Save time vs creating from scratch
Batch Server Setup: When setting up multiple similar servers:
- Configure one completely
- Duplicate for each additional server
- Update specific details
- Maintain consistency across servers
- Reduce configuration errors
Connecting to Hosts
Connection Methods
Single-Click Connect:
- Click any host card in dashboard
- Terminal tab opens automatically
- Connection established
- Start working immediately
From Actions Menu:
- Three-dot menu → Connect
- Right-click → Connect
- Same result as clicking card
Multiple Tabs: You can open multiple terminal tabs to the same host:
- Each click opens new tab
- Independent terminal sessions
- Parallel work in different tabs
- All contribute to "online" status
Connection Process
What Happens When Connecting:
- New terminal tab created
- SSH connection initiated
- Authentication performed
- Terminal ready for commands
- Host status updates to "online"
Session Independence: Each tab is an independent SSH session:
- Separate working directories
- Independent command history
- Different running processes
- Can disconnect individually
Connection Status
Online Status (Green Badge):
- At least one active terminal session
- Ready for additional connections
- Click to open another tab
- Disconnect from terminal tabs
Offline Status (Gray Badge):
- No active sessions
- Normal when not in use
- Click to connect
- Status updates automatically
Real-time Updates: Host status reflects actual connection state:
- Changes when you connect/disconnect
- Updates across all views
- No manual refresh needed
Connection Failures
If Connection Fails:
- Error message displayed in terminal
- Check connection details
- Verify server is running
- Test network connectivity
- Review authentication credentials
Common Issues:
Connection timeout - Server down or unreachable
Permission denied - Wrong credentials
Port closed - Firewall or wrong port
Host key changed - Server reinstalled (security warning)
Troubleshooting:
- Edit host to verify settings
- Use Test Connection feature
- Check server status
- Verify firewall rules
- Confirm credentials haven't changed
Opening SFTP
SFTP Access
Every host can open an SFTP file manager for file transfer operations.
Access SFTP:
- Three-dot menu → Open SFTP
- Right-click → Open SFTP
What Opens:
- Dedicated SFTP tab
- File manager interface
- Connected to same host
- Ready for file operations
SFTP Features:
- Browse remote file system
- Upload files and folders
- Download files and folders
- Delete, rename, move files
- Create directories
- View file properties
- Dual-pane interface
Relationship to Terminal:
- SFTP uses same connection details
- Independent from terminal sessions
- Can have terminal + SFTP open simultaneously
- Both show host as "online"
Related: See SFTP File Manager for detailed SFTP features.
Host Card Elements
Visual Components
Each host card displays comprehensive information at a glance:
OS Icon:
- Colored background per OS type
- Brand icon (Ubuntu, CentOS, etc.)
- Quick visual identification
- 8 different color schemes
Host Name:
- Large, prominent display
- Primary identifier
- Searchable
- Click to connect
Connection Details:
- IP address or hostname
- Username shown
- Port (if not default 22)
- Quick reference
Status Badge:
- Green: Online (active sessions)
- Gray: Offline (no sessions)
- Real-time updates
- Visual indicator
Tags:
- Colored badge pills
- Multiple tags displayed
- Visual categorization
- Click to view all
Comment:
- Icon: message bubble
- Truncated if long
- Shows server notes
- Optional display
Card Interactions
Primary Action (Click):
- Anywhere on card connects
- Opens terminal tab
- Quick access to server
Actions Menu (Three Dots):
- Connect
- Edit
- Delete
- Open SFTP
- Duplicate
Context Menu (Right-Click):
- Same options as actions menu
- Quick access without dropdown
- Keyboard navigable
Hover Effects:
- Shadow increases
- Visual feedback
- Smooth animation
- Indicates clickable
Best Practices
Naming Strategy
Consistent Patterns: Use predictable naming for easy identification:
✓ [environment]-[service]-[number]
prod-web-01, prod-web-02
staging-db-01
dev-api-01
✓ [project]-[role]-[location]
clienta-web-useast
clientb-db-euwest
✓ [service]-[env]-[identifier]
wordpress-prod-main
magento-staging-backup
Avoid Ambiguity:
✗ server1, server2 (meaningless)
✗ test, production (too vague)
✗ backup, old (temporary names becoming permanent)
Authentication Security
Production Servers:
- Use SSH keys, not passwords
- ED25519 keys recommended
- Rotate keys periodically
- One key per purpose
Development Servers:
- Passwords acceptable for convenience
- Still consider keys for automation
- Different credentials than production
- Test key authentication setup
Key Management:
- Generate keys in Keychain tab
- Deploy public keys properly
- Keep private keys secure
- Document key purposes
Organization
Group Assignment:
- Assign during creation
- Use consistent group names
- Don't create too many groups
- Balance between organization and complexity
Tagging:
- Tag during creation
- Use consistent tag names
- Multiple tags per host OK
- Tag strategy across team
Comments:
- Add during setup
- Keep updated
- Note special configs
- Document quirks
Configuration Management
Document Everything:
- Use comments field
- Note special settings
- Document dependencies
- Record contact info
Test Before Saving:
- Use connection testing
- Verify credentials
- Confirm network access
- Catch errors early
Regular Maintenance:
- Review host list periodically
- Delete unused hosts
- Update changed details
- Keep information current
Efficiency Tips
Duplicate for Speed:
- Set up one host completely
- Duplicate for similar servers
- Modify only differences
- Maintain consistency
Batch Operations:
- Create multiple hosts at once
- Use import for many hosts
- Organize as you create
- Save time vs one-by-one
Quick Access:
- Pin frequently used hosts
- Use consistent naming for search
- Leverage status filters
- Group by access frequency
Common Workflows
Setting Up Production Server
- Click NEW HOST button
- Enter server details carefully
- Select SSH key authentication
- Assign to PRODUCTION group
- Add "production" and service tags
- Add comment with purpose
- Test connection thoroughly
- Save (not Save & Connect for production)
- Verify in dashboard
- Connect when ready
Creating Development Environment
- Duplicate production host
- Change name to dev-[service]
- Update IP to dev server
- Change group to DEVELOPMENT
- Update tags (remove "production", add "development")
- Update comment for dev notes
- Test connection
- Save & Connect (OK for dev)
Migrating Server
- Create new host for new server
- Duplicate old host settings
- Update IP to new server
- Test connection
- Connect and verify services
- Update group/tags if needed
- Keep old host temporarily
- Delete old after migration verified
Organizing Existing Hosts
- Review all hosts in dashboard
- Create appropriate groups
- Edit each host to assign group
- Add tags for categorization
- Update names if needed
- Add comments for clarity
- Verify organization works
Next Steps
- Group Management - Organize hosts with groups
- Search & Filters - Find hosts quickly
- Import & Export - Migrate from other tools
Related Features:
- SSH Keys - Generate SSH keys
- Key Management - Deploy keys to servers
- Terminal - Using SSH terminal
- SFTP - File transfer operations
- Transfer Management - Monitor cross-host transfers
- Port Forwarding - SSH tunnels
- Snippets - Command snippets library
- Notifications - Stay informed
Pro Tip: Use the duplicate feature when setting up multiple similar servers. Configure one completely, then duplicate and modify just the unique details (name, IP) for each additional server!