Skip to main content

Import from SecureCRT

Complete guide to import your SecureCRT sessions into Xermius.

Overview

SecureCRT is a popular enterprise SSH client that stores sessions in INI format files. Xermius can import these session files directly.

What Gets Imported:

  • ✅ Session names → Host names
  • ✅ Hostname/IP addresses
  • ✅ Port numbers
  • ✅ Usernames
  • ✅ Description field → Group
  • ✅ SSH2 protocol sessions
  • ❌ Passwords (encrypted in SecureCRT)
  • ❌ SSH keys (will need re-configure)
  • ❌ Terminal colors/fonts
  • ❌ Port forwarding rules
  • ❌ Firewall settings

Note: Only SSH2 protocol sessions are imported. Telnet, serial, and other protocols are skipped.

SecureCRT Session Format

INI File Structure

[Session]
SessionName=production-web
Description=Production Web Server
Protocol=SSH2
Host=192.168.1.100
Port=22
Username=admin
Emulation=Xterm

[Session]
SessionName=staging-server
Description=Staging Environment
Protocol=SSH2
Host=staging.example.com
Port=2222
Username=ubuntu
Emulation=Xterm

[Session]
SessionName=database-server
Description=MySQL Database
Protocol=SSH2
Host=db.example.com
Port=3306
Username=dbadmin
Emulation=Xterm

Key Fields

SecureCRT FieldXermius FieldNotes
SessionNameHost NameDirect mapping
Host/HostnameHost AddressIP or hostname
PortPortDefault: 22
UsernameUsernameSSH username
DescriptionGroupBecomes group name
ProtocolFilterOnly SSH2 imported

Export from SecureCRT

Locate Session Files

Windows:

C:\Users\YourUsername\AppData\Roaming\VanDyke\Config\Sessions\

macOS:

~/Library/Application Support/VanDyke/SecureCRT/Config/Sessions/

Linux:

~/.vandyke/SecureCRT/Config/Sessions/

Session File Types

SecureCRT stores sessions as:

  1. Individual .ini files - One per session

    production-web.ini
    staging-server.ini
    database-server.ini
  2. Folders with subfolders - Organized structure

    Sessions/
    ├── Production/
    │ ├── web-server.ini
    │ └── database.ini
    ├── Staging/
    │ └── staging-server.ini
    └── Development/
    └── dev-server.ini

Option 1: Export Single File

Manually combine sessions:

  1. Open each session .ini file
  2. Copy all [Session] blocks
  3. Paste into one combined file
  4. Save as securecrt-sessions.ini

Example combined file:

[Session]
SessionName=prod-web
Protocol=SSH2
Host=192.168.1.100
Port=22
Username=admin
Description=Production

[Session]
SessionName=stag-web
Protocol=SSH2
Host=192.168.1.101
Port=22
Username=admin
Description=Staging

Option 2: Export via Script

PowerShell script (Windows):

$sessionsPath = "$env:APPDATA\VanDyke\Config\Sessions"
$outputFile = "$HOME\Desktop\securecrt-sessions.ini"

Get-ChildItem -Path $sessionsPath -Filter *.ini -Recurse |
Get-Content |
Out-File -FilePath $outputFile

Write-Host "Exported to: $outputFile"

Bash script (Linux/macOS):

#!/bin/bash
SESSIONS_PATH=~/.vandyke/SecureCRT/Config/Sessions
OUTPUT_FILE=~/Desktop/securecrt-sessions.ini

find "$SESSIONS_PATH" -name "*.ini" -exec cat {} \; > "$OUTPUT_FILE"

echo "Exported to: $OUTPUT_FILE"

Import to Xermius

Step 1: Prepare Session File

Ensure your file has valid [Session] blocks with SSH2 protocol.

Step 2: Open Import Dialog

  1. Open Xermius
  2. Click NEW HOST dropdown
  3. Select Import Hosts
  4. Click SecureCRT tab

Step 3: Select File

  1. Click Browse File
  2. Navigate to your session file
  3. Select the .ini file
  4. Click Open

Step 4: Preview & Confirm

┌──────────────────────────────────────────────┐
│ Import Preview │
├──────────────────────────────────────────────┤
│ Found 8 SecureCRT sessions │
│ │
│ ✓ production-web │
│ admin@192.168.1.100:22 │
│ Group: Production │
│ │
│ ✓ staging-server │
│ ubuntu@staging.example.com:2222 │
│ Group: Staging Environment │
│ │
│ ✓ database-server │
│ dbadmin@db.example.com:3306 │
│ Group: MySQL Database │
│ │
│ ... 5 more │
├──────────────────────────────────────────────┤
│ [Cancel] [Import 8] │
└──────────────────────────────────────────────┘
  1. Review sessions
  2. Notice Description → Group mapping
  3. Click Import

Step 5: Complete Import

✓ Successfully imported 8 hosts from SecureCRT
- 8 new hosts added
- 3 groups created (Production, Staging, MySQL Database)
- 0 duplicates skipped

Your SecureCRT sessions are now in Xermius!

Configuration Mapping

What Transfers Automatically

SecureCRTXermiusExample
Session NameHost Nameproduction-web
Host/HostnameHost Address192.168.1.100
PortPort22 (or custom)
UsernameUsernameadmin
DescriptionGroupProduction Web
Protocol SSH2Imported
Protocol TelnetSkipped

What Needs Manual Setup

Passwords:

  • SecureCRT encrypts passwords with master password
  • Cannot be exported
  • Add manually or use SSH keys

SSH Keys:

  • SecureCRT uses its own key storage
  • Export keys if possible
  • Import to Xermius keychain

Terminal Settings:

  • Colors, fonts, cursor style
  • Configure in Xermius Settings

Port Forwarding:

  • Not included in session files
  • Recreate in Xermius

Firewall/Proxy:

  • Not transferred
  • Configure separately if needed

Post-Import Tasks

1. Verify Imported Hosts

Check dashboard:
- All expected hosts present?
- Names correct?
- Groups organized well?

If not:
- Re-check session file format
- Verify Protocol=SSH2 in each session

2. Reorganize Groups

Description field may create many groups:

Before (from descriptions):

├── Production Web Server
├── Production Database
├── Staging Environment
├── MySQL Database
└── Development Server

After (cleaned up):

├── Production
│ ├── Web Server
│ └── Database
├── Staging
│ └── Environment
└── Development
└── Server

How to reorganize:

  1. Select hosts
  2. Right-click → Edit
  3. Change group
  4. Use nested groups: Production/Web

3. Configure Authentication

For each host:

Option A: Password Auth

  1. Right-click host → Edit
  2. Enter password
  3. Save

Option B: SSH Key (Recommended)

  1. SSH Keys tab → Import Key
  2. Select key file
  3. Edit host
  4. Select imported key
  5. Save

4. Import SSH Keys

If you used keys in SecureCRT:

Locate keys:

  • Windows: C:\Users\YourUsername\.ssh\
  • macOS/Linux: ~/.ssh/

Import to Xermius:

  1. SSH Keys tab
  2. Click Import Key
  3. Select key files
  4. Assign to hosts

5. Recreate Port Forwarding

If you used port forwarding in SecureCRT:

  1. Document your forwarding rules
  2. For each host in Xermius:
    • Right-click → Port Forwarding
    • Add Local/Remote/Dynamic forwards
    • Save

6. Test Connections

1. Start with one host per group
2. Click Connect
3. Enter password (if prompted)
4. Verify connection works
5. Test SFTP, port forwarding if used

Advanced Migration

Preserving Folder Structure

If SecureCRT sessions are in folders:

SecureCRT:

Sessions/
├── Clients/
│ ├── ClientA/
│ │ └── web-server.ini
│ └── ClientB/
│ └── database.ini
└── Internal/
└── dev-server.ini

Import with folder names:

Create combined file with folder paths in Description:

[Session]
SessionName=clienta-web
Description=Clients/ClientA
Protocol=SSH2
Host=192.168.1.100
Port=22
Username=admin

[Session]
SessionName=clientb-db
Description=Clients/ClientB
Protocol=SSH2
Host=192.168.1.101
Port=3306
Username=dbadmin

Result in Xermius:

├── Clients
│ ├── ClientA
│ │ └── clienta-web
│ └── ClientB
│ └── clientb-db
└── Internal
└── dev-server

Batch Processing Multiple Files

Python script:

import os
import glob

sessions_dir = os.path.expanduser("~/.vandyke/SecureCRT/Config/Sessions")
output_file = os.path.expanduser("~/Desktop/all-sessions.ini")

with open(output_file, 'w') as outfile:
for ini_file in glob.glob(f"{sessions_dir}/**/*.ini", recursive=True):
with open(ini_file, 'r') as infile:
outfile.write(infile.read())
outfile.write('\n\n')

print(f"Combined {len(glob.glob(f'{sessions_dir}/**/*.ini', recursive=True))} files")
print(f"Output: {output_file}")

Run: python3 combine-sessions.py

Troubleshooting

No Sessions Found

Problem: Import shows "No valid hosts found"

Solution:

  • Check file has [Session] headers
  • Verify Protocol=SSH2 (not Telnet, Serial, etc.)
  • Ensure Host/Hostname field exists
  • Check file is actually .ini format

Missing Hostnames

Problem: Some sessions not imported

Solution:

  • Open session file
  • Check if Host or Hostname field exists
  • Sessions without hostname are skipped
  • Add hostname manually in SecureCRT, re-export

Wrong Protocol Sessions

Problem: Telnet/Serial sessions skipped

Solution:

  • Only SSH2 protocol imported
  • This is intentional (Xermius is SSH-only)
  • Convert Telnet to SSH if possible
  • Or use SecureCRT for non-SSH

Special Characters in Names

Problem: Session names with spaces/special chars

Solution:

  • Xermius handles most characters
  • If issues, rename in SecureCRT before export
  • Or rename after import in Xermius

Large Number of Sessions

Problem: Have 100+ sessions, import slow

Solution:

  • Import in batches (25-50 at a time)
  • Split by folder/client
  • Test small batch first
  • Import rest if successful

Enterprise Tips

Team Migration

Scenario: Migrate 50 users from SecureCRT to Xermius

Approach:

1. Create standard session export script
2. Run on each user's machine
3. Collect all session files
4. Distribute import guide to team
5. Each user imports their sessions
6. IT provides SSH keys centrally
7. Users assign keys to hosts

Session Templates

Create standard templates:

[Session]
SessionName=TEMPLATE-web
Description=Production/Web
Protocol=SSH2
Host=CHANGEME
Port=22
Username=admin
Emulation=Xterm

[Session]
SessionName=TEMPLATE-db
Description=Production/Database
Protocol=SSH2
Host=CHANGEME
Port=3306
Username=dbadmin
Emulation=Xterm

Distribute to team, they fill in hostnames.

Audit Trail

Before migration:

  1. Export all sessions to CSV for audit
  2. Document server inventory
  3. Track migration progress
  4. Verify all users migrated

After migration:

  1. Keep SecureCRT backups
  2. Document new Xermius structure
  3. Update team procedures
  4. Retire SecureCRT licenses

Tips for Smooth Migration

Before Export

Clean up sessions - Remove old/unused
Organize folders - Structure becomes groups
Add descriptions - These become group names
Export keys - Save to safe location
Document special settings - Port forwards, etc.

During Export

Test small batch - 2-3 sessions first
Verify file format - Check [Session] blocks
Include all needed - Don't miss folders
Backup originals - Keep SecureCRT sessions

After Import

Verify count - All sessions imported?
Test connections - One per group
Reorganize - Clean up auto-created groups
Set up keys - Import and assign
Recreate special - Port forwards, etc.
Train team - Show Xermius features

Example: Full Enterprise Migration

Company: TechCorp, 25 users, 200+ servers

Goal: Migrate from SecureCRT (licensed) to Xermius (Freemium/Pro)

Plan:

Week 1: Preparation

1. Install Xermius on 3 test users
2. Export their SecureCRT sessions
3. Import to Xermius
4. Test for one week
5. Gather feedback

Week 2: Pilot

6. Export sessions for 10 users
7. Create import guide
8. Distribute to pilot group
9. Each user imports
10. IT helps with issues

Week 3: Full Rollout

11. Export for remaining users
12. Company-wide migration day
13. IT support available
14. All users import sessions
15. Verify SSH keys work

Week 4: Cleanup

16. Collect feedback
17. Document new processes
18. Archive SecureCRT sessions
19. Update IT procedures
20. Cancel SecureCRT licenses

Result:

  • ✅ 25 users migrated
  • ✅ 200+ sessions imported
  • ✅ $5,000/year saved on licenses
  • ✅ Better features (tunnels, snippets)
  • ✅ Team happy with Xermius

Enterprise tip: For large migrations, create a dedicated Slack channel for migration support and questions!