SSH Key Import Process
To import an existing SSH public key:1
Navigate to SSH Keys
Navigate to the SSH Keys page from the sidebar
2
Initiate Import
Click “Import Key” button
3
Name Your Key
Enter a descriptive name for the key (maximum 50 characters):
- Names must contain only letters, numbers, underscores, hyphens, and periods
- Use descriptive names like “github-key” or “laptop-ssh-key”
- Choose names that identify the key’s source or purpose
4
Paste Public Key
Paste your public key content in the text area:
- Key must begin with ssh-rsa, ssh-ed25519, or similar
- Include the entire public key on a single line
- Include optional comment if desired
5
Import Key
Click “Import Key” to add it to your account:
- System validates key format automatically
- Key is added to your account immediately
- Available for VM deployment right away
Finding Your Public Key
Locate your existing public key on your system:- Linux/MacOS
- Windows
Common Public Key LocationsYour public key is typically located at:Display and copy your public key:
Public Key Format Requirements
Understanding the correct format for import:Valid Key Formats
Format Validation
Public Key Requirements:A valid public key must:
- Begin with a key type:
ssh-rsa
,ssh-ed25519
, orssh-dss
- Contain a long base64-encoded string of characters
- Be on a single line with no line breaks
- Optionally end with a comment (usually email address or description)
Supported Key Types
The platform supports industry-standard SSH key types:- RSA Keys
- Ed25519 Keys
- ECDSA Keys
RSA Key Support
- Format: ssh-rsa
- Recommended Size: 2048+ bits (4096 bits preferred)
- Compatibility: Universal compatibility with all SSH clients
- Security: Mature, well-tested algorithm
- Use Case: Most common, works everywhere
Importing from Popular Services
GitHub SSH Keys
1
Access GitHub SSH Keys
Go to GitHub → Settings → SSH and GPG keys
2
Copy Public Key
Copy the public key content from GitHub
3
Import to Platform
Paste the key in the import dialog
4
Use Descriptive Name
Name it something like “github-personal-key”
GitLab SSH Keys
1
Access GitLab SSH Keys
Go to GitLab → User Settings → SSH Keys
2
Copy Public Key
Copy the public key content from GitLab
3
Import to Platform
Paste the key in the import dialog
4
Use Descriptive Name
Name it something like “gitlab-work-key”
Import Validation and Errors
Common Import Issues
Format Errors
Format Errors
Invalid Key Format
- Symptoms: “Invalid key format” error message
- Causes: Line breaks, missing key type, corrupted key
- Solutions:
- Ensure key is on single line
- Verify key type prefix (ssh-rsa, ssh-ed25519)
- Copy key again from source
- Check for extra whitespace or characters
Key Type Issues
Key Type Issues
Unsupported Key Types
- Symptoms: “Unsupported key type” error
- Causes: Very old key formats, custom key types
- Solutions:
- Use supported key types (RSA, Ed25519, ECDSA)
- Generate new key with supported algorithm
- Convert key to supported format if possible
Duplicate Keys
Duplicate Keys
Key Already Exists
- Symptoms: “Key already exists” error
- Causes: Same public key already imported
- Solutions:
- Check existing keys in account
- Use different key if available
- Delete old key if no longer needed
Name Conflicts
Name Conflicts
Duplicate Key Names
- Symptoms: “Name already in use” error
- Causes: Key name already used in account
- Solutions:
- Choose different, unique name
- Check existing key names
- Use more specific naming convention
Best Practices for Key Import
Key Selection
Choose Strong Keys
Security Considerations
- Prefer Ed25519 keys for new imports
- Use RSA keys with 2048+ bits minimum
- Avoid old or deprecated key formats
- Verify key source and integrity
Organize by Purpose
Key Organization
- Import separate keys for different purposes
- Use descriptive names indicating source/purpose
- Group related keys with consistent naming
- Document key purposes for team usage
Naming Strategy
1
Identify Source
Include the source service or system in the name
2
Specify Purpose
Indicate what the key will be used for
3
Add Context
Include environment or project information
4
Use Consistent Format
Develop naming convention for consistency
github-personal-2024
gitlab-work-project-alpha
laptop-development-key
ci-cd-deployment-key
Security Considerations
Key Reuse Benefits
Simplified Management
Simplified Management
Key Management Advantages
- Fewer keys to manage and secure
- Consistent access across platforms
- Reduced risk of key loss or confusion
- Easier team collaboration
Proven Security
Proven Security
Using Existing Keys
- Keys already tested and validated
- Established security procedures
- Known key strength and format
- Existing backup and recovery procedures
Security Precautions
Security Reminders:
- Only import keys you control and trust
- Verify key integrity before import
- Use keys from secure, trusted sources
- Keep private keys secure and never share them
- Monitor key usage across all platforms
Troubleshooting Import Issues
Validation Problems
- Format Issues
- Copy-Paste Issues
Key Format ProblemsCommon Problems:
- Line breaks in the middle of key
- Missing key type prefix
- Extra whitespace or characters
- Truncated or incomplete key
- Copy key again from original source
- Verify entire key is selected
- Check for line wrapping issues
- Use text editor to verify format
Testing Imported Keys
1
Verify Import Success
Check that key appears in SSH keys list
2
Test with VM Deployment
Use imported key for new VM deployment
3
Test SSH Connection
Connect to VM using imported key
4
Validate Functionality
Confirm normal SSH operations work correctly
Import vs. Creation Comparison
- When to Import
- When to Create New
Import Existing Keys When:
- You already have secure, trusted keys
- You want consistent access across platforms
- You have established key management procedures
- You’re migrating from another platform
Importing existing SSH keys allows you to use your established keys while keeping your private key secure on your local machine. This is often the preferred method for users who already have a key management system in place.
When importing keys from services like GitHub or GitLab, use descriptive names that indicate both the source and purpose. This makes it easier to manage multiple keys and understand their intended use.