SimplisticNode

Getting started with a VPS

Your first hour with a new VPS: log in over SSH, update the system, add a user, set up SSH keys and a firewall, then install your first app.

VPS & Servers6 min read

Your VPS is ready within seconds of ordering. This guide takes you from the welcome email to a secured server that is ready for your website, app, bot or game. The commands below are for Ubuntu and Debian, with notes for Rocky Linux and AlmaLinux where they differ. If you chose Windows Server, skip to the Windows section.

Before you order: region and operating system

  • Region: choose Salt Lake City for users in North America, or Newcastle for the UK and Europe.
  • Operating system: Ubuntu and Debian are the most widely documented and a good default if you are new to Linux. Rocky Linux and AlmaLinux suit people used to Red Hat style systems. Windows Server is there if your software needs it.
  • Size: 2 GB is enough for a bot or a small site. 8 GB is a comfortable all-rounder for apps and databases. You can scale up later.

1. Find your login details

After checkout, your server's IP address, username and password appear in your client area and welcome email. Keep these safe. You can reinstall the operating system from your panel at any time, and the panel also gives you console access, which is handy if you ever lock yourself out of SSH.

2. Connect over SSH

SSH gives you a secure command line on your server. Windows 10 and 11 include an SSH client, so you can open PowerShell or Windows Terminal, or use a tool like PuTTY. On macOS and Linux, open Terminal. Then run ssh root@your-server-ip, type yes the first time to trust the server's fingerprint, and enter your password when prompted. Nothing appears as you type the password, which is normal.

Cannot connect?

  • Connection timed out: double-check the IP address, and give a brand new server a minute to finish booting.
  • Permission denied: the password is case-sensitive. Copy and paste it rather than typing it.
  • Still stuck: log in through the console in your panel to check the server is running, then ask us.

3. Update the system

Install the latest security fixes before anything else. On Ubuntu or Debian run apt update followed by apt upgrade -y. On Rocky Linux or AlmaLinux run dnf upgrade -y. If the kernel was updated, reboot with the reboot command and reconnect.

4. Create a normal user

Working as root all the time makes mistakes more costly. Create your own user and give it admin rights with sudo:

  1. Run adduser yourname and set a strong password.
  2. On Ubuntu or Debian, run usermod -aG sudo yourname. On Rocky Linux or AlmaLinux, run usermod -aG wheel yourname.
  3. Open a new terminal and check you can log in with ssh yourname@your-server-ip, then run sudo whoami. It should reply root.

5. Set up SSH keys

SSH keys are much harder to break than passwords, and they save you typing a password every time.

  1. On your own computer, run ssh-keygen -t ed25519 and accept the defaults. Add a passphrase for extra protection.
  2. Copy your public key to the server with ssh-copy-id yourname@your-server-ip. On Windows, paste the contents of your .pub file into ~/.ssh/authorized_keys on the server instead.
  3. Log in again. You should get in without your account password.
  4. Once keys work, edit /etc/ssh/sshd_config and set PasswordAuthentication no and PermitRootLogin no, then restart SSH.
  5. Keep your current session open and test a fresh login in a second window before you log out, so a typo cannot lock you out.

6. Turn on a firewall

A firewall blocks every port you have not deliberately opened. On Ubuntu, run ufw allow OpenSSH, then ufw enable. Open other ports only when you need them, for example ufw allow 80 and ufw allow 443 for a website. On Rocky Linux and AlmaLinux, use firewalld with firewall-cmd instead. Your server also sits behind our always-on DDoS protection, but that does not replace a firewall on the server itself.

7. Keep it patched

  • On Ubuntu and Debian, install unattended-upgrades so security updates are applied automatically.
  • Install fail2ban to block IP addresses that keep guessing passwords.
  • Log in every so often to run a full update and check disk space with df -h.

8. Install your stack

From here it is your server. Some common starting points:

  • Websites: a web server such as Nginx or Caddy, plus PHP and MariaDB or MySQL if your site needs them.
  • Node.js apps and bots: install Node.js, then keep your app running with a process manager such as pm2 or a systemd service, so it restarts after a crash or reboot.
  • Python apps and bots: use a virtual environment and a systemd service.
  • Containers: install Docker to run apps packaged as images.
  • Game servers: most dedicated game server software runs well on Linux, but remember to open the game's ports in your firewall.

Prefer a control panel for websites? We can help you choose and set one up.

Handy commands for beginners

  • free -h: how much memory is in use.
  • df -h: how much disk space is left.
  • top, or htop once installed: what is using the CPU right now.
  • systemctl status name: whether a service, such as nginx, is running.
  • journalctl -u name: the logs for a service, useful when something will not start.
  • sudo reboot: restart the server.

Using Windows Server

If you chose Windows Server, connect with Remote Desktop instead of SSH. On Windows, open Remote Desktop Connection, enter your server's IP address and log in as Administrator with the password from your welcome email. Run Windows Update first, change the Administrator password, and keep the Windows firewall switched on.

Backups are your job

Because your VPS is unmanaged, you are responsible for backing up your data. Copy important files and database dumps somewhere off the server on a schedule, and test a restore at least once. A backup you have never restored is only a hope.

Growing later

When you need more RAM, CPU or storage, upgrade to a larger plan, usually with just a quick reboot. If you outgrow our biggest VPS, a dedicated server is the next step.

Stuck at any point? Our team is on live chat, Discord and tickets 24/7, even on unmanaged plans.

Still stuck?

Our team is on hand 24/7. Ask on Discord for a quick reply, or open a ticket and we'll sort it.