Skip to content
VPS.net

Initial Login

SSH keys are considerably more secure than passwords:

  • They can’t be guessed or brute-forced. Servers on the public internet receive constant automated password-guessing attempts. A modern SSH key is far too long to guess, and with password login disabled those attacks have nothing to target.
  • Your secret never leaves your computer. When you log in with a key, your computer proves it holds the private key without ever sending it to the server. A password, by contrast, is sent to the server every time you log in.
  • No shared or emailed credentials. There is no generated root password to store, copy, or send around. Only someone holding your private key can log in.
  • Easy to revoke. If a device is lost or a team member leaves, you remove their public key from the server without changing anyone else’s access.
  • Convenient. Once set up, you log in without typing a password (optionally protecting the key itself with a passphrase).

An SSH key comes as a pair: a private key that stays on your computer and must never be shared, and a public key (ending in .pub) that you upload to the control panel and which is installed on your server.

If you already have an SSH key pair you’d like to use, skip to Step 2. RSA and Ed25519 keys are supported; we recommend Ed25519.

  1. Open a terminal and run:

    Terminal window
    ssh-keygen -t ed25519 -C "you@example.com"

    The -C comment is just a label to help you identify the key later.

  2. Press Enter to accept the default location (~/.ssh/id_ed25519).

  3. Enter a passphrase when prompted. This is optional but strongly recommended, as it protects the key if your computer is ever compromised.

  4. Display your public key so you can copy it:

    Terminal window
    cat ~/.ssh/id_ed25519.pub

    It will look similar to:

    ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGq4... you@example.com

Step 2: Add your public key to the control panel

Section titled “Step 2: Add your public key to the control panel”

Add your public key to your account so it can be selected when deploying a server. You can do this through the Console, API or CLI.

Then select the key in the SSH Key step when you deploy your SSD VPS.

Step 3: Find your server’s login details

Section titled “Step 3: Find your server’s login details”

Once your server is deployed, retrieve its username and public IP address.

  1. Navigate to Services -> SSD VPS.

  2. Click the FQDN/Hostname of the server you wish to access. On the Server Information tab, note the Username and Public IP address.

The username is the default non-root user for your operating system, for example debian on Debian or ubuntu on Ubuntu. Always use the username shown for your server.

The examples below use ubuntu as the username and 203.0.113.10 as the server IP. Replace them with your own details.

If your key is in the default location (~/.ssh/id_ed25519 or ~/.ssh/id_rsa), SSH will find it automatically:

Terminal window
ssh ubuntu@203.0.113.10

If your key is stored elsewhere, point to it with -i:

Terminal window
ssh -i ~/.ssh/my_vps_key ubuntu@203.0.113.10

The first time you connect you will be asked to confirm the server’s fingerprint. Type yes to continue.

On macOS, Linux and Windows (PowerShell) you can add an entry to your SSH config file (~/.ssh/config) to avoid typing the username, IP and key path every time:

Host my-vps
HostName 203.0.113.10
User ubuntu
IdentityFile ~/.ssh/id_ed25519

You can then connect with:

Terminal window
ssh my-vps

The default user has sudo privileges. Run individual administrative commands with sudo, or open a root shell:

Terminal window
# Run a single command as root
sudo apt update
# Switch to a root shell
sudo -i

Permission denied (publickey)

  • Check you are using the username shown in the control panel (for example ubuntu), not root.
  • Make sure you are using the private key that matches the public key selected at deployment. Use -i to specify it explicitly.
  • On macOS and Linux, your private key must not be readable by other users. Fix its permissions with chmod 600 ~/.ssh/id_ed25519.

I’ve lost my private key

  • A lost private key cannot be recovered. Generate a new key pair, then use Recovery Reboot to add the new public key to the default user’s ~/.ssh/authorized_keys file on your server’s disk. If you need help, please contact our support team.

Adding more keys or users

  • To grant access to additional people or devices, append their public keys to ~/.ssh/authorized_keys on the server (one key per line).

If you are still unable to connect, please contact our support team.