This page contains affiliate links. If you make a purchase through one, we may earn a commission at no extra cost to you.
A VPS hands you a blank server and root access — genuinely powerful, and genuinely intimidating the first time, since nothing is pre-configured the way shared hosting is. Here’s the actual first-hour setup that gets a VPS from blank to usable. See Contabo’s VPS plans.

The First Thing to Do Isn’t Install Software
Before installing anything, secure the server: change the default SSH port away from 22, disable root password login in favor of SSH key authentication, and set up a basic firewall allowing only the ports you actually need. A freshly provisioned VPS is scanned by automated bots within minutes of coming online — this isn’t paranoia, it’s a baseline that should happen before any application gets installed, not after.
SSH Keys, Specifically
SSH key authentication is worth understanding concretely rather than just doing on faith. A key pair consists of a private key (stays on your own computer, never shared) and a public key (uploaded to the server, safe to share since it can’t be used to log in without the matching private key). Generating one is a single command on Mac/Linux (ssh-keygen) or a quick tool download on Windows, and once the public key is added to the server, password login can be disabled entirely — meaning even a leaked or guessed password can’t get anyone in, since the login now requires possessing the actual private key file.
The one real risk worth flagging: back up the private key somewhere safe before disabling password login. A lost private key with password login already disabled means locking yourself out of your own server, recoverable only through your provider’s rescue console rather than a normal login.

Choosing an OS Image
Most providers offer a choice of Linux distributions at setup — Ubuntu and Debian are the most common starting points for beginners, both well-documented with large communities, meaning any problem you hit has almost certainly already been asked and answered somewhere online. Ubuntu leans toward newer software versions and a larger default package set; Debian favors stability and a more minimal starting install. For a first VPS, either is a reasonable, well-supported choice — the specific distribution matters less than picking one with strong community documentation and sticking with it rather than switching between distributions on later servers, since command syntax and file locations vary enough between them to be a real source of beginner confusion.
Choosing What Actually Goes on the Server
A basic web stack (a web server like Nginx, a database like MySQL, and whatever runtime your application needs) covers most personal projects and small websites. Resist the temptation to install everything you might eventually need in one sitting — start with what the current project actually requires, and add components as real needs come up rather than guessing in advance.
Pick a Contabo VPS sized for your actual project rather than over-provisioning for hypothetical future needs.
The Mistake That Causes the Most Beginner Headaches
Running the website, the database, email, and every experimental side project on the same single VPS means one misconfigured service or resource spike can take down everything else at once. Separating concerns — even just running the database as a separate managed service, or keeping experiments on a second cheap VPS — prevents an unrelated mistake from becoming a full outage.
Setting Up Backups From Day One
A VPS has no automatic backup unless you set one up — unlike managed shared hosting, where backups are often handled invisibly. Scheduling automated snapshots or file-level backups in the first setup session, before there’s anything important to lose, avoids the much more common mistake of setting it up only after a problem has already happened.
Monitoring Without Overcomplicating It
A simple uptime monitor that emails or texts you if the server goes down is enough for most personal projects — full monitoring dashboards and alerting systems are worth adding later if the project grows into something that actually needs them, not something to set up preemptively on day one.
Bottom Line
Security basics first, a minimal stack sized to the actual project, separated concerns, and backups from day one — in that order — turns a blank VPS into a genuinely manageable server rather than an intimidating one.
Frequently Asked Questions
Do I need to know Linux command line to use a VPS?
Basic comfort with the command line is genuinely necessary for a raw VPS — there’s no graphical control panel by default. Many providers offer optional control panel software as an add-on if a command-line-only environment feels like too much of a jump.
How long does initial VPS setup actually take?
Basic security hardening and a minimal web stack install typically takes under an hour for someone following a standard setup guide, though comfort level with the command line affects this significantly.
What happens if I misconfigure something and lock myself out?
Most providers offer a web-based console or rescue mode accessible outside of SSH specifically for this situation, letting you fix a misconfiguration even if normal remote access is broken.
Ubuntu or Debian — which should a beginner actually pick?
Either is a reasonable first choice with strong community documentation. Ubuntu tends to run newer software versions by default; Debian favors stability and a leaner base install. The bigger factor for a beginner is picking one and sticking with it across projects, since command syntax and file locations differ enough between distributions to add real confusion when switching.
Should I disable password login entirely, or just add SSH keys?
Disable password login once SSH keys are confirmed working — leaving both enabled means a weak or leaked password still provides a way in, which defeats much of the security benefit of setting up keys in the first place. Just confirm key-based login works before disabling the password fallback, not after.
