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

1

Access SSH Keys

Navigate to SSH Keys section

2

Initiate Creation

Click “Create Key” in the SSH key management interface

3

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
4

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

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

1

Access Import Function

Navigate to SSH Keys and click “Import Key”

2

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
3

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
4

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:

~/.ssh/id_rsa.pub
~/.ssh/id_ed25519.pub
~/.ssh/id_ecdsa.pub

Display and copy your public key:

# For RSA keys
cat ~/.ssh/id_rsa.pub

# For Ed25519 keys
cat ~/.ssh/id_ed25519.pub

# For ECDSA keys
cat ~/.ssh/id_ecdsa.pub

Public Key Format Requirements

Understanding the correct format for import:

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC0WGP1EZykEtv5YGC9nMiPFW3U3DmZNzKFO5nEu6uozEHh3JLi9bii user@example.com

Valid public key requirements:

  • Must begin with key type: ssh-rsa, ssh-ed25519, or ssh-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

chmod 600 /path/to/your_private_key.pem

Example:

chmod 600 ~/.ssh/my-barrack-key.pem

This command ensures only you can read and write the file, which is required for SSH security.

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:

SSH Connection Examples

Once your keys are configured, use them to connect to your VMs:

Basic SSH Connection

ssh -i /path/to/your-private-key.pem username@vm-ip-address

Parameter explanations:

  • /path/to/private_key - Path to your downloaded private key file
  • username - 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

ssh -i ~/.ssh/my-key.pem ubuntu@203.0.113.1

All Ubuntu-based OS images use the ubuntu user by default.

For easier connections, add entries to your SSH config file (~/.ssh/config):

Host my-vm
  HostName 203.0.113.1
  User ubuntu
  IdentityFile ~/.ssh/my_private_key.pem
  IdentitiesOnly yes

After adding this configuration, you can connect simply with:

ssh my-vm

Key Selection During VM Deployment

During VM deployment, you can configure SSH key access:

Single Key Selection

1

Automatic Selection

If you have only one SSH key, it’s automatically selected

2

Manual Selection

If you have multiple keys, choose the appropriate one for the VM

3

Key Validation

System validates key availability and format

4

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

SSH Key Best Practices

Security Best Practices

Operational Best Practices

1

Plan Key Strategy

  • Determine key naming conventions
  • Plan for different environments (dev, staging, prod)
  • Consider team access requirements
  • Plan key rotation schedule
2

Implement Key Management

  • Create keys with descriptive names
  • Set up secure key storage
  • Document key purposes and usage
  • Train team on key security practices
3

Monitor and Maintain

  • Track key usage and access patterns
  • Regular security audits of key access
  • Remove unused keys promptly
  • Update key documentation regularly
4

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.