ForgeVPSGuides & notesOpen ForgeVPS
The ForgeVPS guides8 min read

What is a VPS? Set up your first one with Hetzner

Learn what a VPS is and what you can do with one. Create a Hetzner server, then connect with a terminal, Termius, or ForgeVPS.

On this page

Want a place to run your website or app?

A VPS gives you a small computer on the internet. You rent it. You choose what it runs.

This guide will help you:

  • Learn what a VPS does.

  • Create one with Hetzner.

  • Connect from a laptop, a phone, or ForgeVPS.

What is a VPS?

VPS stands for virtual private server.

Think of it as a computer you rent far from home. It has its own system, memory, and files.

It lives inside a larger physical server. Other people can rent parts of that server too. Your VPS runs in its own space.

You control it over the internet. You do not need a screen or keyboard plugged into it.

Learn more in AWS's guide to VPS hosting.

Why would you use a VPS?

Your laptop goes to sleep. A VPS can keep your app online when it does.

Here are a few things you can do:

  • Host a website. Give people a place to visit.

  • Run an app. Keep your project online.

  • Run agents. Let it do tasks on a schedule.

  • Store data. Use a database for your project.

  • Learn Linux. Try commands on a fresh server.

You also choose which tools to install.

There is some work to do. You must keep the software up to date. You also need backups for files you care about.

Just need a basic web page? A website builder or static host may be simpler.

Before you start

You will need:

  • A Hetzner account and a way to pay.

  • A laptop or phone with internet access.

  • A few minutes to choose your server and login key.

You do not need a domain name yet. We will use the server's IP address. That is its address on the internet.

Hetzner charges for the VPS. ForgeVPS is a separate service. Termius also has its own plans.

Pick how you want to connect

Choose one path and follow it from creating your server to your first connection. ForgeVPS is selected below so you can set up a full browser workspace. The other paths take you to a command-line connection.

All three use SSH for encrypted connections. You can add another way to connect later.

Set up your VPS with ForgeVPS

Get a workspace for your server: browse files, edit code, deploy apps, manage databases, and open a terminal—all in your browser.

  • See your files and edit code in the browser without switching between a separate SSH client, file browser, and editor.

  • Deploy apps and manage databases from the same workspace, with a terminal ready for commands and your server-side AI tools.

  • Let ForgeVPS generate the SSH key and guide you through connecting. No local SSH client setup is needed for this path.

  • Sign in from another device to reach the same machines without configuring a new SSH client there.

Step 1: Open Hetzner Cloud

  1. Go to Hetzner Console.

  2. Create an account, or sign in.

  3. Complete any account checks Hetzner asks for.

  4. Open a project, or create one called My first VPS.

  5. From your project dashboard, open Create Resource and choose Servers.

Hetzner project dashboard with Create Resource expanded and Servers circled.
From your project dashboard, open Create Resource and choose Servers.

A project is a group for your servers. You only need one for this guide.

Step 2: Choose your server

The form has a lot of choices. Start with these.

Location

Pick a place near you or the people who will use your app.

Image

Choose a plain Ubuntu LTS image.

Ubuntu is the server's operating system. LTS means it gets support for a long time.

Skip images with apps already installed for this walkthrough.

Hetzner location and operating-system choices, with Hillsboro and the Ubuntu OS image selected.
Choose a location near you or your users, then select a plain Ubuntu LTS image under OS Images.

Type and size

For a first small project, I would start with a shared x86 plan and 4 GB of RAM.

x86 is a common CPU type.

This is a starting point. A large app may need more.

  • vCPU: the server's processing power.

  • RAM: memory for the work it is doing now.

  • Disk: space for your code and files.

A shared plan shares CPU time with other servers. It costs less than dedicated CPU time.

Use Hetzner's server overview to compare the types.

Hetzner server types with Regular Performance selected and plan rows showing CPU, RAM, disk space and prices.
Compare the RAM and CPU for each plan. This screenshot has 2 GB selected; the 4 GB option recommended in this guide is the next row. Review current prices in your account.

Networking

Turn on Public IPv4. Leave IPv6 on too if you want.

This guide uses IPv4. ForgeVPS also needs it for setup.

Leave extra storage and private networks alone for now.

Hetzner's server creation guide explains the form.

Step 3: Add your SSH key

An SSH key helps prove that you may use the server.

It has two parts:

  • Public key: goes on the server.

  • Private key: stays with the tool that connects.

Only paste the public part into Hetzner.

Get your ForgeVPS key

Want to work in your browser? ForgeVPS can make a key for you.

How access works: ForgeVPS uses SSH for encrypted connections. It stores its private key encrypted on its backend. The backend can unlock it to connect as root. Root means full control of the VPS. This access lasts until you revoke it.

Read how ForgeVPS handles access before adding the key.

  1. Open Connect your machine and sign in.

  2. Name it my-first-vps. Leave the SSH port at 22.

  3. Click Continue.

  4. Choose New VPS, then Hetzner.

  5. Follow the steps to the public key. Copy it.

ForgeVPS Connect your machine form with demo-box entered and the Continue button below.
Give the machine a name inside ForgeVPS, then click Continue. The example here uses demo-box.
ForgeVPS public SSH key field showing an ssh-ed25519 key and its copy button.
Copy the public key from your own ForgeVPS setup screen. The key pictured here belongs to the example machine; do not use it for your server.

Keep this ForgeVPS tab open. We will come back to it.

Keep your own SSH key too, if you have one. It gives you another way in.

Select your key in Hetzner

Back on the Hetzner form:

Hetzner SSH keys section showing the Add SSH key button and a warning that no SSH key is selected.
Open Add SSH key to add your public key. No key is selected in this screenshot; make sure yours is selected before creating the server.
  1. Find SSH keys and add a key.

  2. Paste the public key you copied.

  3. The name will auto fill in from the copied key.

  4. Check that it is selected for this server.

Hetzner Add an SSH key dialog with empty SSH key and Name fields.
Paste your own public key into SSH key, give it a recognizable name, and click Add SSH key. Then select the saved key on the server form.

You can select more than one key.

Do this before creating the VPS. Adding a key to Hetzner later does not put it on an existing server. See Hetzner's SSH key FAQ.

Step 4: Review the cost and create it

Give the server a name, such as my-first-vps.

Hetzner server Name section with an automatically generated name in the Server name field.
Replace the generated name with a label you recognize, such as my-first-vps.

Check these items before you buy:

  • Ubuntu LTS is selected.

  • Public IPv4 is on.

  • Your SSH key is selected.

  • The plan has enough RAM and disk space.

  • You have reviewed extras such as backups.

  • You are happy with the total price shown.

Then use the create and buy button.

Wait for the server to start. Open its page and copy the public IPv4 address.

About billing: A powered-off VPS still costs money. Deleting it stops future server charges. Save any files you need first. Check for paid items left behind, such as IPs, volumes, and snapshots.

See Hetzner's billing FAQ for the current rules.

Step 5: Connect your VPS to ForgeVPS

Return to the ForgeVPS tab you kept open while creating your server.

  1. Return to the same machine in ForgeVPS.

  2. Finish the guide, or choose I already added the key.

  3. Paste the server's public IPv4 address.

  4. Click Check connection.

  5. Wait for ForgeVPS to install its tools.

  6. Open Terminal and run whoami.

The terminal check confirms that you are connected. You can now use the file browser and code editor, work on app deployments, and manage databases from the same workspace.

Stuck? Try these checks

Permission denied

Check the username and selected key. Use root for this first login.

The matching public key must be on the VPS. Saving a key in Hetzner after creation is not enough.

The connection times out

Check the IPv4 address. Check that the VPS is running.

Then check the firewall. It must allow SSH from the device or service that connects.

Your password does not show as you type

That is normal in a terminal. Type it and press Enter.

You cannot get in at all

Try Hetzner's browser console.

Do not rebuild the VPS just to fix a login. A rebuild can erase your files.

Your ForgeVPS workspace is ready

Your server is connected. Open Files to browse and edit your code, use Apps & websites for your projects, or open Terminal to run a command. Your databases are in the same workspace.

Start with a small project and keep backups of anything you cannot lose. You can return to this workspace from another device by signing in to ForgeVPS.

Set up your VPS with a laptop terminal

This path gets you a command prompt on your VPS. You will use commands or install your own tools for editing files, deploying apps, and managing databases.

Step 1: Open Hetzner Cloud

  1. Go to Hetzner Console.

  2. Create an account, or sign in.

  3. Complete any account checks Hetzner asks for.

  4. Open a project, or create one called My first VPS.

  5. From your project dashboard, open Create Resource and choose Servers.

Hetzner project dashboard with Create Resource expanded and Servers circled.
From your project dashboard, open Create Resource and choose Servers.

A project is a group for your servers. You only need one for this guide.

Step 2: Choose your server

The form has a lot of choices. Start with these.

Location

Pick a place near you or the people who will use your app.

Image

Choose a plain Ubuntu LTS image.

Ubuntu is the server's operating system. LTS means it gets support for a long time.

Skip images with apps already installed for this walkthrough.

Hetzner location and operating-system choices, with Hillsboro and the Ubuntu OS image selected.
Choose a location near you or your users, then select a plain Ubuntu LTS image under OS Images.

Type and size

For a first small project, I would start with a shared x86 plan and 4 GB of RAM.

x86 is a common CPU type.

This is a starting point. A large app may need more.

  • vCPU: the server's processing power.

  • RAM: memory for the work it is doing now.

  • Disk: space for your code and files.

A shared plan shares CPU time with other servers. It costs less than dedicated CPU time.

Use Hetzner's server overview to compare the types.

Hetzner server types with Regular Performance selected and plan rows showing CPU, RAM, disk space and prices.
Compare the RAM and CPU for each plan. This screenshot has 2 GB selected; the 4 GB option recommended in this guide is the next row. Review current prices in your account.

Networking

Turn on Public IPv4. Leave IPv6 on too if you want.

This guide uses the public IPv4 address for your SSH connection.

Leave extra storage and private networks alone for now.

Hetzner's server creation guide explains the form.

Step 3: Add your SSH key

An SSH key helps prove that you may use the server.

It has two parts:

  • Public key: goes on the server.

  • Private key: stays with the tool that connects.

Only paste the public part into Hetzner.

Make a key on your laptop

Open Terminal on Mac or Linux. On Windows, open PowerShell.

Run this on your computer:

ssh-keygen -t ed25519

When it asks where to save the key, press Enter.

If a key already exists, do not overwrite it. Cancel with Ctrl+C. Use that key if it is yours and you can unlock it.

Set a passphrase when asked. It is a password for the key. Keep it somewhere safe.

Now show the public key.

Mac or Linux:

cat ~/.ssh/id_ed25519.pub

Windows PowerShell:

Get-Content "$env:USERPROFILE\.ssh\id_ed25519.pub"

Copy the whole line. It starts with ssh-ed25519.

These paths use the default file name. If you saved it elsewhere, use that path instead.

On Windows, a missing ssh-keygen command may mean you need OpenSSH Client. You only need the client to connect.

More detail: Hetzner's SSH key guide.

Select your key in Hetzner

Back on the Hetzner form:

Hetzner SSH keys section showing the Add SSH key button and a warning that no SSH key is selected.
Open Add SSH key to add your public key. No key is selected in this screenshot; make sure yours is selected before creating the server.
  1. Find SSH keys and add a key.

  2. Paste the public key you copied.

  3. Give it a clear name and save it.

  4. Check that it is selected for this server.

Hetzner Add an SSH key dialog with empty SSH key and Name fields.
Paste your own public key into SSH key, give it a recognizable name, and click Add SSH key. Then select the saved key on the server form.

You can select more than one key.

Do this before creating the VPS. Adding a key to Hetzner later does not put it on an existing server. See Hetzner's SSH key FAQ.

Step 4: Review the cost and create it

Give the server a name, such as my-first-vps.

Hetzner server Name section with an automatically generated name in the Server name field.
Replace the generated name with a label you recognize, such as my-first-vps.

Check these items before you buy:

  • Ubuntu LTS is selected.

  • Public IPv4 is on.

  • Your SSH key is selected.

  • The plan has enough RAM and disk space.

  • You have reviewed extras such as backups.

  • You are happy with the total price shown.

Then use the create and buy button.

Wait for the server to start. Open its page and copy the public IPv4 address.

About billing: A powered-off VPS still costs money. Deleting it stops future server charges. Save any files you need first. Check for paid items left behind, such as IPs, volumes, and snapshots.

See Hetzner's billing FAQ for the current rules.

Step 5: Connect from your laptop

In the examples, 203.0.113.10 is a sample IP. Replace it with your server's IPv4 address.

On your computer, run:

ssh root@203.0.113.10

root is the first admin user on Hetzner's plain Ubuntu image.

If you chose a different key file, tell SSH where it is:

ssh -i /path/to/your/private-key root@203.0.113.10

Use the private key here. The .pub file is for the server.

The first time, SSH may show a host fingerprint. This is the server's ID. Use the check below before you accept it.

Enter your key's passphrase if asked.

You should now see a server prompt. Type:

whoami

For this login, it should print root.

You are in. Commands now run on the VPS.

Type exit to leave. Use the same SSH command to return.

Hetzner's connection guide covers the login details.

Check the server's fingerprint

This check is for the first Terminal or Termius login.

  1. Sign in to Hetzner Console. Open your server.

  2. Open its browser console using the console icon.

  3. Log in as root with the server's root password.

No root password? Use Rescue → Reset Root Password on the server page. Use the new password in the browser console. This is not your Hetzner account password.

In that browser console, run:

for key in /etc/ssh/ssh_host_*_key.pub; do ssh-keygen -lf "$key"; done

Find the key type shown by your SSH app, such as ED25519. Its SHA256: value must match.

If it does, return to your SSH app and accept it. If it does not, stop and check the IP and server.

See Hetzner's console guide and OpenSSH's fingerprint command.

Stuck? Try these checks

Permission denied

Check the username and selected key. Use root for this first login.

The matching public key must be on the VPS. Saving a key in Hetzner after creation is not enough.

The connection times out

Check the IPv4 address. Check that the VPS is running.

Then check the firewall. It must allow SSH from the device or service that connects.

Your password does not show as you type

That is normal in a terminal. Type it and press Enter.

The server's fingerprint has changed

Do not skip the warning. Check whether you rebuilt the server or used the wrong IP.

Use the console check above to confirm its identity.

You cannot get in at all

Try Hetzner's browser console.

Do not rebuild the VPS just to fix a login. A rebuild can erase your files.

Your server is ready for its next job

You have a VPS and a way to reach it.

Start small. Try a few commands. Then put your first project on it.

Want a place to work without jumping between tools?

Connect your VPS to ForgeVPS and bring your terminal, files, and apps into one browser workspace.

Set up your VPS with Termius on your phone

This path uses a phone SSH app to reach a command prompt on your VPS. App deployment and database setup are tasks you handle through commands or separate tools.

Step 1: Open Hetzner Cloud

  1. Go to Hetzner Console.

  2. Create an account, or sign in.

  3. Complete any account checks Hetzner asks for.

  4. Open a project, or create one called My first VPS.

  5. From your project dashboard, open Create Resource and choose Servers.

Hetzner project dashboard with Create Resource expanded and Servers circled.
From your project dashboard, open Create Resource and choose Servers.

A project is a group for your servers. You only need one for this guide.

Step 2: Choose your server

The form has a lot of choices. Start with these.

Location

Pick a place near you or the people who will use your app.

Image

Choose a plain Ubuntu LTS image.

Ubuntu is the server's operating system. LTS means it gets support for a long time.

Skip images with apps already installed for this walkthrough.

Hetzner location and operating-system choices, with Hillsboro and the Ubuntu OS image selected.
Choose a location near you or your users, then select a plain Ubuntu LTS image under OS Images.

Type and size

For a first small project, I would start with a shared x86 plan and 4 GB of RAM.

x86 is a common CPU type.

This is a starting point. A large app may need more.

  • vCPU: the server's processing power.

  • RAM: memory for the work it is doing now.

  • Disk: space for your code and files.

A shared plan shares CPU time with other servers. It costs less than dedicated CPU time.

Use Hetzner's server overview to compare the types.

Hetzner server types with Regular Performance selected and plan rows showing CPU, RAM, disk space and prices.
Compare the RAM and CPU for each plan. This screenshot has 2 GB selected; the 4 GB option recommended in this guide is the next row. Review current prices in your account.

Networking

Turn on Public IPv4. Leave IPv6 on too if you want.

This guide uses the public IPv4 address for your SSH connection.

Leave extra storage and private networks alone for now.

Hetzner's server creation guide explains the form.

Step 3: Add your SSH key

An SSH key helps prove that you may use the server.

It has two parts:

  • Public key: goes on the server.

  • Private key: stays with the tool that connects.

Only paste the public part into Hetzner.

Make a key on your phone

Install Termius for iPhone or Android. Open it and finish its account setup.

  1. Open Vaults, then Keychain.

  2. On iPhone, tap +, then Generate Key.

  3. On Android, tap +, New SSH Key, then Generate new SSH Key.

  4. Name it My first VPS. Choose Ed25519.

  5. Set a passphrase, then save or generate the key.

  6. Open the saved key and copy its public key.

Keep the private key in Termius. Do not paste it into Hetzner.

The Termius key guide shows both phone layouts.

Select your key in Hetzner

Back on the Hetzner form:

Hetzner SSH keys section showing the Add SSH key button and a warning that no SSH key is selected.
Open Add SSH key to add your public key. No key is selected in this screenshot; make sure yours is selected before creating the server.
  1. Find SSH keys and add a key.

  2. Paste the public key you copied.

  3. Give it a clear name and save it.

  4. Check that it is selected for this server.

Hetzner Add an SSH key dialog with empty SSH key and Name fields.
Paste your own public key into SSH key, give it a recognizable name, and click Add SSH key. Then select the saved key on the server form.

You can select more than one key.

Do this before creating the VPS. Adding a key to Hetzner later does not put it on an existing server. See Hetzner's SSH key FAQ.

Step 4: Review the cost and create it

Give the server a name, such as my-first-vps.

Hetzner server Name section with an automatically generated name in the Server name field.
Replace the generated name with a label you recognize, such as my-first-vps.

Check these items before you buy:

  • Ubuntu LTS is selected.

  • Public IPv4 is on.

  • Your SSH key is selected.

  • The plan has enough RAM and disk space.

  • You have reviewed extras such as backups.

  • You are happy with the total price shown.

Then use the create and buy button.

Wait for the server to start. Open its page and copy the public IPv4 address.

About billing: A powered-off VPS still costs money. Deleting it stops future server charges. Save any files you need first. Check for paid items left behind, such as IPs, volumes, and snapshots.

See Hetzner's billing FAQ for the current rules.

Step 5: Connect from your phone

  1. Open Termius and add a Host.

  2. Name it My first VPS.

  3. Enter your server's public IPv4 address.

  4. Use port 22 and username root.

  5. Choose the key you made in Step 3.

  6. Save the host, then tap it to connect.

Check the host fingerprint before you accept it. Enter your key's passphrase if asked.

Run whoami. If it prints root, you are connected.

You can now use server commands from your phone.

See Termius's connection guide for more help.

Check the server's fingerprint

This check is for the first Terminal or Termius login.

  1. Sign in to Hetzner Console. Open your server.

  2. Open its browser console using the console icon.

  3. Log in as root with the server's root password.

No root password? Use Rescue → Reset Root Password on the server page. Use the new password in the browser console. This is not your Hetzner account password.

In that browser console, run:

for key in /etc/ssh/ssh_host_*_key.pub; do ssh-keygen -lf "$key"; done

Find the key type shown by your SSH app, such as ED25519. Its SHA256: value must match.

If it does, return to your SSH app and accept it. If it does not, stop and check the IP and server.

See Hetzner's console guide and OpenSSH's fingerprint command.

Stuck? Try these checks

Permission denied

Check the username and selected key. Use root for this first login.

The matching public key must be on the VPS. Saving a key in Hetzner after creation is not enough.

The connection times out

Check the IPv4 address. Check that the VPS is running.

Then check the firewall. It must allow SSH from the device or service that connects.

Your password does not show as you type

That is normal in a terminal. Type it and press Enter.

The server's fingerprint has changed

Do not skip the warning. Check whether you rebuilt the server or used the wrong IP.

Use the console check above to confirm its identity.

You cannot get in at all

Try Hetzner's browser console.

Do not rebuild the VPS just to fix a login. A rebuild can erase your files.

Your server is ready for its next job

You have a VPS and a way to reach it.

Start small. Try a few commands. Then put your first project on it.

Want a place to work without jumping between tools?

Connect your VPS to ForgeVPS and bring your terminal, files, and apps into one browser workspace.