SSH Key Configuration
Configure SSH keys for secure access to your virtual machines
SSH keys provide secure access to your virtual machines. SSH key management requires user authentication.
SSH Key Requirements
SSH Key Prerequisites:
- At least one SSH key is required for VM deployment
- SSH key management requires user authentication
- Keys are automatically distributed to all regions upon creation
- Private keys are only available for download during creation
Managing SSH Keys
Access your SSH keys through the platform interface:
Automatic Loading
Seamless Integration
- SSH keys are automatically loaded when authenticated
- Keys are displayed in the deployment interface
- Multiple keys can be selected for team access
- Regional distribution is handled automatically
Key Selection
Flexible Key Assignment
- Keys are automatically selected if you have only one available
- Multiple keys can be selected for single VM
- Team members can use different keys
- Keys remain associated with VMs after deployment
Creating SSH Keys
Generate new SSH key pairs directly through the platform interface.
Key Generation Process
Access SSH Keys
Navigate to SSH Keys section
Initiate Creation
Click “Create Key” in the SSH key management interface
Name Your Key
Enter a unique name for the key (1-50 characters):
- Use descriptive names like “my-project-key” or “development-server”
- Names must contain only letters, numbers, underscores, hyphens, and periods
- Choose names that help identify the key’s purpose
Generate and Download
Click “Create Key” to generate the keypair:
- System generates a secure 2048-bit RSA public/private key pair
- Private key file automatically downloads to your computer
- Public key is stored in your account
Key Generation Features
Automatic Generation
Automatic Generation
Secure Key Creation
- 2048-bit RSA encryption for strong security
- Cryptographically secure random generation
- Industry-standard key format
- Compatible with all SSH clients
Instant Download
Instant Download
Secure Key Delivery
- Private key automatically downloads during creation
- Download happens only once for security
- File is named with your chosen key name
- Ready to use immediately
Platform Integration
Platform Integration
Seamless Platform Integration
- Public key automatically stored in your account
- Key distributed to all regions
- Available for immediate VM deployment
- No additional configuration required
Critical Security Notice
Private Key Security:
• The private key is only available for download once during creation • Store it securely as it cannot be retrieved later from our servers • The private key file is automatically downloaded for security reasons • Never share your private key with anyone or upload it to version control • Back up your private key in a secure location
Importing Existing SSH Keys
Import SSH keys that you already use for other services.
Import Process
Access Import Function
Navigate to SSH Keys and click “Import Key”
Name Your Key
Enter a descriptive name for the key (maximum 50 characters):
- Use names like “github-key” or “laptop-ssh-key”
- Names must contain only letters, numbers, underscores, hyphens, and periods
- Choose names that identify the key’s source or purpose
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
Import Key
Click “Import Key” to add it to your account:
- System validates key format
- 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:
Common Public Key Locations
Your public key is typically located at:
Display and copy your public key:
Common Public Key Locations
Your public key is typically located at:
Display and copy your public key:
Windows Key Locations
With Git Bash or WSL:
Display with Git Bash:
With PowerShell:
Common Windows locations:
C:\Users\YourUsername\.ssh\id_rsa.pub
C:\Users\YourUsername\.ssh\id_ed25519.pub
Public Key Format Requirements
Understanding the correct format for import:
Valid public key requirements:
- Must begin with key type:
ssh-rsa
,ssh-ed25519
, orssh-dss
- Contains a long base64-encoded string of characters
- Optionally ends with a comment (usually email address or description)
- Must be on a single line with no line breaks
Setting Private Key Permissions
After downloading your private key file, you must set the correct permissions for security:
Set Secure Permissions
Example:
This command ensures only you can read and write the file, which is required for SSH security.
Set Secure Permissions
Example:
This command ensures only you can read and write the file, which is required for SSH security.
PowerShell Permission Setting
Example:
This removes inheritance and grants only the current user read/write access.
SSH Key Limits and Restrictions
Key Limits
Account Restrictions
- Maximum of 25 SSH keys per region
- Key names must be unique within your account
- Generated keys use 2048-bit RSA encryption
- Keys are automatically distributed to all regions upon creation
Naming Requirements
Key Naming Rules
- 1-50 characters maximum length
- Letters, numbers, underscores, hyphens, periods only
- Must be unique within your account
- Use descriptive names for easy identification
Supported Key Types
The platform supports industry-standard SSH key types:
RSA Keys
RSA Keys
RSA Key Support
- Format: ssh-rsa
- Recommended Size: 2048+ bits (4096 bits preferred)
- Compatibility: Universal compatibility with all SSH clients
- Generation: Default type for platform-generated keys
Ed25519 Keys
Ed25519 Keys
Ed25519 Key Support
- Format: ssh-ed25519
- Security: Modern, highly secure elliptic curve cryptography
- Performance: Faster than RSA with equivalent security
- Recommended: Best choice for new key generation
ECDSA Keys
ECDSA Keys
ECDSA Key Support
- Formats: ecdsa-sha2-nistp256/384/521
- Curves: NIST P-256, P-384, P-521
- Compatibility: Supported by modern SSH clients
- Use Case: Good balance of security and performance
SSH Connection Examples
Once your keys are configured, use them to connect to your VMs:
Basic SSH Connection
Parameter explanations:
/path/to/private_key
- Path to your downloaded private key fileusername
- Default user for your OS (ubuntu, centos, admin, etc.)vm_ip_address
- Public IP address of your VM
Username by Operating System
Default Username: ubuntu
All Ubuntu-based OS images use the ubuntu
user by default.
Default Username: ubuntu
All Ubuntu-based OS images use the ubuntu
user by default.
Common Default Usernames
SSH Config File (Recommended)
For easier connections, add entries to your SSH config file (~/.ssh/config
):
After adding this configuration, you can connect simply with:
Key Selection During VM Deployment
During VM deployment, you can configure SSH key access:
Single Key Selection
Automatic Selection
If you have only one SSH key, it’s automatically selected
Manual Selection
If you have multiple keys, choose the appropriate one for the VM
Key Validation
System validates key availability and format
VM Integration
Selected keys are automatically installed on the VM during provisioning
Multiple Key Selection
Team Access
Multiple Key Benefits
- Allow access by different team members
- Each person uses their own SSH key
- Individual access control and auditing
- No shared credentials needed
Backup Access
Redundant Access
- Multiple keys provide backup access
- Different keys for different purposes
- Reduced risk of lockout
- Flexible access management
Regional Key Distribution
SSH keys are automatically distributed across all available regions when created or imported:
Seamless Regional Access
- Keys automatically available in all regions
- No manual distribution required
- Consistent access across deployments
- Simplified multi-region operations
Seamless Regional Access
- Keys automatically available in all regions
- No manual distribution required
- Consistent access across deployments
- Simplified multi-region operations
Regional Coverage
- Norway Region: NORWAY-1
- Canada Region: CANADA-1
- US Region: US-1
All keys work in all regions automatically.
SSH Key Best Practices
Security Best Practices
Key Generation
Key Generation
Secure Key Creation
- Generate separate keys for different projects or environments
- Use descriptive names that identify the key’s purpose
- Prefer Ed25519 keys for new generations (more secure and faster)
- Use minimum 2048-bit RSA keys (4096-bit recommended for high security)
Key Storage
Key Storage
Secure Key Management
- Store private keys securely and never share them
- Use passphrase protection for your private keys
- Back up private keys in encrypted storage
- Set correct file permissions (600 for private keys)
Key Maintenance
Key Maintenance
Ongoing Key Management
- Regularly audit and rotate your SSH keys
- Remove unused or unnecessary keys promptly
- Monitor key usage and access patterns
- Keep an inventory of where keys are deployed
Access Control
Access Control
Team Key Management
- Use separate keys for different team members
- Implement key rotation policies
- Revoke access immediately when team members leave
- Consider using SSH certificates for large teams
Operational Best Practices
Plan Key Strategy
- Determine key naming conventions
- Plan for different environments (dev, staging, prod)
- Consider team access requirements
- Plan key rotation schedule
Implement Key Management
- Create keys with descriptive names
- Set up secure key storage
- Document key purposes and usage
- Train team on key security practices
Monitor and Maintain
- Track key usage and access patterns
- Regular security audits of key access
- Remove unused keys promptly
- Update key documentation regularly
Scale Security
- Implement automated key rotation where possible
- Use configuration management for key distribution
- Monitor for unauthorized key usage
- Plan for emergency key replacement procedures
Use descriptive key names that indicate their purpose, such as “production-web-servers” or “ml-development-team”, to make key management easier as your infrastructure grows.