Import & Export Overview
Xermius makes it easy to migrate from other SSH clients and backup your host configurations with comprehensive import/export functionality.
Why Import/Export?
Import Benefits
✅ Quick Migration - Switch from other SSH clients in minutes
✅ No Manual Entry - Import hundreds of hosts at once
✅ Preserve Settings - Keep your existing configurations
✅ Multiple Formats - Support for popular SSH clients
Export Benefits
✅ Backup - Create regular backups of your hosts
✅ Share - Share configurations with team members
✅ Multiple Devices - Move configs between computers
✅ Version Control - Track changes with Git
Supported Import Formats
Xermius can import from these formats. Click on each for detailed guide:
1. SSH Config Files
- Format: OpenSSH configuration files
- Location:
~/.ssh/config - Use Case: Linux/macOS users with existing SSH configs
- 📖 Complete SSH Config Guide
2. CSV & JSON Files
- Format: Comma-separated values or JSON arrays
- Use Case: Bulk imports, spreadsheet management, backups
- Columns: name, host, port, username, password, sshKeyId, group
- 📖 Complete CSV & JSON Guide
3. Termius Copy Links
- Format: Termius sharing URL format
- Use Case: Quick import from Termius app
- Best for: Mobile to desktop migration
- 📖 Complete Guide
4. PuTTY Sessions
- Format: Windows Registry export (.reg)
- Source: PuTTY SSH client (Windows)
- Use Case: Migrating from PuTTY on Windows
- Includes: PPK key conversion guide
- 📖 Complete Guide
5. MobaXterm Bookmarks
- Format: INI configuration file (MobaXterm.ini)
- Source: MobaXterm installation folder
- Use Case: Migrating from MobaXterm
- Special: SubRep folders → Groups (preserves folder structure!)
- 📖 Complete Guide
6. SecureCRT Sessions
- Format: INI session files (.ini)
- Source: SecureCRT session folder
- Use Case: Enterprise migration from SecureCRT
- Special: Description field → Groups
- 📖 Complete Guide
Supported Export Formats
Export your hosts to:
1. SSH Config Format
Best for:
- Using with OpenSSH command line
- Linux/macOS terminal users
- Native SSH client compatibility
Output:
Host production-server
HostName 192.168.1.100
Port 22
User admin
IdentityFile ~/.ssh/id_rsa
Host dev-server
HostName 192.168.1.101
Port 2222
User developer
2. CSV Format
Best for:
- Excel/Google Sheets editing
- Bulk operations
- Non-technical users
- Reporting
Output:
name,host,port,username,password,sshKeyId,group
Production Server,192.168.1.100,22,admin,,,Production
Dev Server,192.168.1.101,2222,developer,,,Development
Staging Server,staging.example.com,22,ubuntu,,,Staging
Note: sshKeyId refers to keychain SSH key IDs, not file paths
3. JSON Format
Best for:
- Backups
- Version control (Git)
- Programmatic access
- Automation scripts
Output:
[
{
"name": "Production Server",
"host": "192.168.1.100",
"port": 22,
"username": "admin",
"password": "",
"sshKeyId": "key-abc-123",
"group": "Production"
},
{
"name": "Dev Server",
"host": "192.168.1.101",
"port": 22,
"username": "developer",
"password": "dev_pass",
"sshKeyId": null,
"group": "Development"
}
]
Note: sshKeyId refers to keychain SSH key IDs, not file paths
Accessing Import/Export
From Dashboard
Click the "NEW HOST" dropdown button:
┌─────────────────────────┐
│ ▼ NEW HOST │
├─────────────────────────┤
│ Create New Host │
│ ───────────────────────│
│ Import Hosts 📥 │
│ Export Hosts 📤 │
└─────────────────────────┘
From Menu Bar
File Menu:
- File → Import Hosts
- File → Export Hosts
Keyboard Shortcuts:
- Import:
Ctrl/Cmd + I - Export:
Ctrl/Cmd + E
Import Process
Step 1: Open Import Dialog
- Click "NEW HOST" dropdown
- Select "Import Hosts"
- Import dialog opens
Step 2: Choose Format
┌──────────────────────────────────────────────┐
│ Import Hosts [X] │
├──────────────────────────────────────────────┤
│ [SSH Config] [CSV] [JSON] [PuTTY] [More ▼] │
├──────────────────────────────────────────────┤
│ │
│ Drop file here or click to browse │
│ │
│ Supported: .config, .txt │
│ Max size: 10 MB │
│ │
├──────────────────────────────────────────────┤
│ Format Information: │
│ │
│ SSH Config files contain Host entries │
│ with connection details. Typically found │
│ at ~/.ssh/config │
│ │
│ Example: │
│ Host myserver │
│ HostName 192.168.1.100 │
│ Port 22 │
│ User admin │
│ │
│ [Browse File...] │
└──────────────────────────────────────────────┘
Step 3: Select File
Drag & Drop:
- Drag file to import area
- Or click "Browse File"
- Select file from your computer
File Validation:
- Format is checked automatically
- File size must be < 10 MB
- Invalid files show error message
Step 4: Preview Imports
┌──────────────────────────────────────────────┐
│ Import Preview [X] │
├──────────────────────────────────────────────┤
│ Found 25 hosts in file │
│ │
│ ┌────────────────────────────────────────┐ │
│ │ ✓ Production Web Server │ │
│ │ admin@192.168.1.100:22 │ │
│ │ Group: Production │ │
│ │ │ │
│ │ ✓ Database Server │ │
│ │ root@192.168.1.101:3306 │ │
│ │ Group: Production/Databases │ │
│ │ │ │
│ │ ✓ Dev Server │ │
│ │ developer@dev.example.com:22 │ │
│ │ Group: Development │ │
│ │ │ │
│ │ ... 22 more │ │
│ └────────────────────────────────────────┘ │
│ │
│ Options: │
│ [✓] Create groups from structure │
│ [✓] Skip duplicates │
│ [ ] Overwrite existing hosts │
│ │
│ [Cancel] [Import] │
└──────────────────────────────────────────────┘
Review Items:
- Host name and details
- Connection information
- Group assignments
- Potential duplicates
Step 5: Confirm Import
- Review preview
- Select import options
- Click "Import"
- Hosts are added to dashboard
Success Message:
✓ Successfully imported 25 hosts
- 20 new hosts added
- 5 duplicates skipped
Export Process
Step 1: Open Export Dialog
- Click "NEW HOST" dropdown
- Select "Export Hosts"
- Export dialog opens
Step 2: Choose Format
┌──────────────────────────────────────────────┐
│ Export Hosts [X] │
├──────────────────────────────────────────────┤
│ Select export format: │
│ │
│ [●] SSH Config │
│ Standard OpenSSH configuration format │
│ Compatible with: ssh, scp, sftp │
│ │
│ [ ] CSV │
│ Comma-separated values │
│ Compatible with: Excel, Google Sheets │
│ │
│ [ ] JSON │
│ JavaScript Object Notation │
│ Compatible with: Scripts, APIs │
│ │
├──────────────────────────────────────────────┤
│ Options: │
│ [✓] Include passwords (encrypted) │
│ [✓] Include SSH keys paths │
│ [✓] Include groups │
│ [✓] Include tags │
│ │
│ Export: [●] All hosts [ ] Selected only │
│ │
│ [Copy to Clipboard] [Download File] │
└──────────────────────────────────────────────┘
Step 3: Preview Export
Preview Area:
┌──────────────────────────────────────────────┐
│ Preview (SSH Config format) │
├──────────────────────────────────────────────┤
│ # Xermius SSH Config Export │
│ # Generated: 2024-10-17 14:30:00 │
│ # Total hosts: 25 │
│ │
│ Host production-server │
│ HostName 192.168.1.100 │
│ Port 22 │
│ User admin │
│ IdentityFile ~/.ssh/id_rsa │
│ │
│ Host database-server │
│ HostName 192.168.1.101 │
│ Port 22 │
│ User root │
│ IdentityFile ~/.ssh/db_key │
│ │
│ ... (23 more hosts) │
└──────────────────────────────────────────────┘
Step 4: Export
Copy to Clipboard:
- Click "Copy to Clipboard"
- Content copied
- Paste anywhere you need
Download File:
- Click "Download File"
- Choose save location
- File saved with timestamp:
xermius-export-2024-10-17.configxermius-export-2024-10-17.csvxermius-export-2024-10-17.json
Import Options Explained
Create Groups from Structure
[✓] Create groups from structure
Enabled:
- Automatically creates groups based on imported data
- Preserves folder/group hierarchy
Example:
Import data has: "Production/Web Servers/Server1"
Result: Creates groups:
📁 Production
📁 Web Servers
🖥️ Server1
Skip Duplicates
[✓] Skip duplicates
Enabled:
- If host already exists (same name or host address)
- Skip importing it
- Keeps existing configuration
Disabled:
- Import anyway
- May create duplicate hosts
Overwrite Existing
[ ] Overwrite existing hosts
Enabled:
- Update existing hosts with new data
- Useful for bulk updates
Disabled:
- Keep existing hosts unchanged
Export Options Explained
Include Passwords
[✓] Include passwords (encrypted)
Enabled:
- Passwords exported (encrypted)
- Requires master password to decrypt
Disabled:
- Passwords omitted from export
- More secure for sharing
Security Note: Only enable if exporting for your own backup.
Include SSH Keys Paths
[✓] Include SSH keys paths
Enabled:
- SSH key file paths included
- Example:
~/.ssh/id_rsa
Disabled:
- Keys paths omitted
Note: Actual key files are NOT exported, only paths.
Include Groups
[✓] Include groups
Enabled:
- Group information included
- Preserves organization
Include Tags
[✓] Include tags
Enabled:
- Tags included in export
- Useful for filtering
Export Selection
All Hosts:
- Export all hosts in database
Selected Only:
- Only export hosts you've selected in dashboard
- Useful for partial exports
Troubleshooting
Import Failed - Invalid Format
Error: "Failed to parse file"
Solutions:
- Check file format matches selected type
- Verify file isn't corrupted
- Try opening in text editor
- Re-export from source application
Import Shows No Hosts
Error: "No hosts found in file"
Causes:
- Empty file
- Wrong format selected
- No valid entries
Solutions:
- Open file in text editor
- Verify content exists
- Try different format option
Duplicate Hosts Created
Problem: Multiple identical hosts
Solutions:
- Enable "Skip duplicates" option
- Delete duplicates manually
- Re-import with correct options
Missing Passwords After Import
Expected Behavior:
- Security reasons
- Passwords rarely exported by other tools
- Must add manually
Solution:
- Edit each host
- Add passwords
- Or use SSH keys instead
SSH Keys Not Working
Problem: Key paths are wrong
Causes:
- Paths are from different computer
- Keys don't exist at that location
Solutions:
# Find your keys
ls ~/.ssh/
# Common key names:
# id_rsa, id_ed25519, id_ecdsa
# Update key paths in Xermius
# Edit host → Change key file path