SSH Keys
Manage SSH keys for server access
SSH Keys
SSH keys provide secure, passwordless access to your servers. Fugoku supports key management through both the Console and the API.
Key Formats
Fugoku supports the following SSH key formats:
| Format | Key Size | Notes |
|---|---|---|
| RSA | 2048-bit or 4096-bit | Most widely compatible |
| Ed25519 | 256-bit | Modern, recommended |
| ECDSA | 256-bit or 521-bit | Good balance of security and performance |
Creating SSH Keys
Generate a New Key Pair
# Ed25519 (recommended)
ssh-keygen -t ed25519 -C "your-email@example.com"
# RSA 4096-bit
ssh-keygen -t rsa -b 4096 -C "your-email@example.com"Upload Public Key
Via Console
- Navigate to SSH Keys
- Click Add Key
- Paste your public key
- Name the key
- Click Save
Via API
curl -X POST "https://api.fugoku.com/v1/ssh-keys?providerId=prov-lagos" \
-H "Authorization: Bearer $FUGOKU_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "laptop",
"publicKey": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAI..."
}'Default Users by OS
When you connect to a server, use the default user for the OS image:
| OS | Default User |
|---|---|
| Ubuntu 24.04 | ubuntu |
| Ubuntu 22.04 | ubuntu |
| Debian 12 | debian |
| Rocky 9 | rocky |
| AlmaLinux 9 | almalinux |
| Proxmox 8.3 | root |
Using Keys with Servers
When creating a server, specify the SSH key to use:
Via API
curl -X POST https://api.fugoku.com/v1/servers \
-H "Authorization: Bearer $FUGOKU_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"data": {
"type": "servers",
"attributes": {
"name": "web-1",
"site": "lagos-1",
"plan": "vm-standard",
"operating_system": "ubuntu-22.04",
"billing": "hourly",
"role": "VirtualMachine",
"ssh_keys": ["my-laptop"]
}
}
}'Connecting
ssh -i ~/.ssh/id_ed25519 ubuntu@102.89.45.178Rotating Keys
- Generate a new key pair
- Upload the new public key to Fugoku
- Add the new key to your server's
~/.ssh/authorized_keys - Test the new key works
- Remove the old key from Fugoku and the server
Listing SSH Keys
curl "https://api.fugoku.com/v1/ssh-keys?providerId=prov-lagos" \
-H "Authorization: Bearer $FUGOKU_API_TOKEN"Deleting SSH Keys
curl -X DELETE "https://api.fugoku.com/v1/ssh-keys/key-abc123?providerId=prov-lagos" \
-H "Authorization: Bearer $FUGOKU_API_TOKEN"Response: 204 No Content
Security Best Practices
- Use Ed25519 keys for new deployments
- Never share private keys
- Rotate keys quarterly
- Use different keys for different environments
- Disable password authentication on servers