VPS beveiligen: de eerste 30 minuten na je bestelling
Een VPS beveiligen doe je het best direct na de oplevering, want een nieuw IP-adres wordt al snel door bots gescand op open poorten en zwakke wachtwoorden. In een half uur zet je de basis neer: updates, een eigen gebruiker, SSH-keys, wachtwoord- en root-login uit, een firewall met ufw, fail2ban en automatische beveiligingsupdates.
VPS beveiligen is jouw taak: dit moet je vooraf weten
Een VPS bij MC-Node is self-managed: je krijgt root-toegang en beheert updates en beveiliging zelf, al denkt onze support mee als je vastloopt. De stappen hieronder gaan uit van Ubuntu, dat je bij de KVM VPS en de VDS bij het bestellen kiest en bij de Premium VPS zelf installeert in het VPS-paneel. Het geldt voor elke Linux-VPS, van de goedkope VPS tot de Premium VPS met Ryzen 9. Voer de commando's uit als root, of met sudo ervoor zodra je als je eigen gebruiker werkt. Draai je Windows Server, ga dan naar het stuk over RDP.

Stap 1: updates en een eigen gebruiker
Log in met de gegevens uit je opleveringsmail (zie verbinden via SSH) en werk eerst alles bij:
apt update && apt upgrade -y
[ -f /var/run/reboot-required ] && rebootDe tweede regel herstart de VPS alleen als een update daarom vraagt, meestal na een nieuwe kernel. Verander daarna het root-wachtwoord met passwd (of via het VPS-paneel, zie root-wachtwoord veranderen) en maak een eigen gebruiker met beheerrechten:
adduser jouwnaam
usermod -aG sudo jouwnaamVanaf nu werk je als jouwnaam en zet je sudo voor beheercommando's. Root hoeft dan niet meer rechtstreeks in te loggen, en die deur sluit je in stap 3.
Stap 2: SSH-keys in plaats van wachtwoorden
Een SSH-key is een sleutelpaar: het privédeel blijft op je eigen computer, het publieke deel zet je op de server. Raden is dan onbegonnen werk, hoe vaak een bot het ook probeert. Maak het paar op je eigen computer; Windows 10 en 11, macOS en Linux hebben ssh-keygen ingebouwd:
ssh-keygen -t ed25519Kies een wachtzin, dan is een gestolen sleutelbestand alleen niet genoeg. Zet daarna het publieke deel op de VPS. Op macOS en Linux:
ssh-copy-id jouwnaam@jouw-ipOp Windows bestaat ssh-copy-id niet; in PowerShell doe je hetzelfde met:
type $env:USERPROFILE\.ssh\id_ed25519.pub | ssh jouwnaam@jouw-ip "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"Werk je liever met PuTTY, volg dan SSH-keys instellen met PuTTYgen. Test in een nieuw venster: ssh jouwnaam@jouw-ip moet nu inloggen zonder het wachtwoord van je account, alleen met de wachtzin van je sleutel.
Stap 3: wachtwoord-login en root-login uit
Nu de sleutel werkt, mag de deur voor wachtwoorden dicht. Maak een eigen instellingenbestand:
sudo nano /etc/ssh/sshd_config.d/00-beveiliging.confmet deze twee regels:
PasswordAuthentication no
PermitRootLogin noWaarom die 00- in de naam? OpenSSH gebruikt van elke instelling de eerste waarde die het tegenkomt, en de bestanden in sshd_config.d worden op alfabetische volgorde gelezen, vóór de rest van sshd_config. Op cloud-images staat er soms een bestand als 50-cloud-init.conf met PasswordAuthentication yes; met 00- ga jij voor. Controleer en herstart:
sudo sshd -t && sudo systemctl restart ssh
sudo sshd -T | grep -Ei '^(passwordauthentication|permitrootlogin)'De laatste regel hoort passwordauthentication no en permitrootlogin no te tonen. Sluit je huidige sessie pas als je in een tweede venster opnieuw hebt kunnen inloggen.
Stap 4: firewall met ufw (OpenSSH eerst!)
ufw zet alles dicht wat je niet uitdrukkelijk openzet. De volgorde is belangrijk: sta SSH toe vóórdat je de firewall aanzet, anders sluit je jezelf buiten.
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow OpenSSH
sudo ufw allow 25565/tcp
sudo ufw enable
sudo ufw status verboseDe regel met 25565 is een voorbeeld voor een Minecraft-server; zet alleen de poorten open die je echt gebruikt. Voor FiveM is dat poort 30120 over TCP en UDP (zie FiveM-server op een eigen VPS), voor Steam-games lees je de poorten in Steam-gameserver op je VPS. Een beheerpoort, zoals die van txAdmin (40120), zet je alleen open voor je eigen IP-adres: sudo ufw allow from jouw-thuis-ip to any port 40120.
Let op met Docker, en dus ook met Pterodactyl Wings: poorten die je met Docker publiceert, gaan volgens de Docker-documentatie langs de regels van ufw heen. Die poorten beheer je dus in Docker of in je gamepaneel, niet alleen in ufw. En op de goedkope VPS deel je via OpenVZ de kernel met de host: controleer daar na het aanzetten met sudo ufw status verbose of de firewall echt actief is.
Stap 5: fail2ban tegen brute force
fail2ban leest je logbestanden en blokkeert een IP-adres tijdelijk na te veel mislukte inlogpogingen. Op Ubuntu staat de bescherming voor SSH na installatie direct aan:
sudo apt install fail2ban
sudo fail2ban-client status sshdWil je strengere regels, maak dan /etc/fail2ban/jail.local aan. Pas jail.conf zelf niet aan, want dat bestand kan bij een update worden overschreven.
[sshd]
maxretry = 5
bantime = 1hDaarna sudo systemctl restart fail2ban. Met alleen SSH-keys raadt niemand je wachtwoord meer, maar fail2ban houdt je logs schoon en remt bots af. Heb je jezelf geband, bijvoorbeeld na een paar keer de verkeerde sleutel, dan haal je je IP-adres via de console weg met sudo fail2ban-client set sshd unbanip jouw-ip.
Stap 6: automatische beveiligingsupdates
Op Ubuntu Server is unattended-upgrades standaard geïnstalleerd, en het installeert beveiligingsupdates vanzelf. Controleer of het aanstaat:
cat /etc/apt/apt.conf.d/20auto-upgradesZie je APT::Periodic::Unattended-Upgrade "1";, dan zit het goed. Zo niet, installeer het met sudo apt install unattended-upgrades en zet het aan met sudo dpkg-reconfigure -plow unattended-upgrades. Een nieuwe kernel werkt pas na een herstart, en automatisch herstarten staat standaard uit. Wil je dat wel, zet dan Unattended-Upgrade::Automatic-Reboot "true"; in /etc/apt/apt.conf.d/50unattended-upgrades, met een rustig tijdstip via Automatic-Reboot-Time. Draait er een gameserver op, zorg dan dat die met systemd vanzelf weer opstart.
Windows Server: RDP dichtzetten
Op een Windows VPS is Extern bureaublad (RDP, poort 3389) de deur waar bots op kloppen. De basis:
- Een lang, uniek wachtwoord voor Administrator, en geen extra accounts met zwakke wachtwoorden.
- Windows Update aan laten staan, en updates ook echt afronden met een herstart.
- In Windows Defender Firewall de regel voor Extern bureaublad beperken tot je eigen IP-adres, via het tabblad Bereik (Scope) van die regel.
- Network Level Authentication aan laten: dan moet iemand eerst inloggen voordat er een sessie start.
Meer over de licentie, RDP en wanneer Linux slimmer is, lees je in Windows VPS huren; het inloggen zelf staat in verbinden met Extern bureaublad.
Wat de DDoS-bescherming wel en niet doet
Elke VPS bij MC-Node heeft DDoS-bescherming via het netwerk van PletX, altijd aan en bij de prijs inbegrepen (zie hoe de DDoS-bescherming werkt). Die filtert aanvallen die je verbinding met een vloed aan verkeer willen platleggen. Maar een DDoS-filter kijkt naar verkeer, niet naar wie er inlogt: een geraden wachtwoord, een gelekte token of een lek in een verouderde plugin houdt hij niet tegen. Daarvoor zijn de stappen hierboven. Voor gameservers lees je meer in wat een DDoS-aanval is en je Minecraft-server beveiligen.
Je vangnet: de console en een back-up
Ufw aangezet zonder SSH-regel, of een typfout in de SSH-instellingen? Dan is je VPS niet stuk, alleen onbereikbaar via SSH. In het VPS-paneel zit een console: je werkt dan alsof je achter het scherm van de server zit, los van SSH en de firewall. Log daar in en draai de wijziging terug, bijvoorbeeld met sudo ufw disable of door 00-beveiliging.conf te verwijderen.
Regel daarnaast back-ups, het liefst vóórdat je grote wijzigingen doet: zet een kopie van je configuratie en je data op een andere plek dan de VPS zelf, zodat een vergissing of een hack niet het einde van je project is.
Veelgestelde vragen
Hoe moet ik een nieuwe VPS beveiligen?
Werk eerst alles bij en maak een eigen gebruiker met sudo-rechten. Log daarna in met een SSH-key, zet wachtwoord- en root-login uit, sluit met ufw alle poorten behalve SSH en wat je echt gebruikt, en installeer fail2ban. Controleer tot slot of automatische beveiligingsupdates aanstaan.
Moet ik de SSH-poort veranderen?
Het mag, maar het is geen echte beveiliging. Een andere poort scheelt ruis in je logs, omdat minder bots hem vinden; wie gericht zoekt, vindt hem toch. SSH-keys, wachtwoord-login uit en fail2ban doen het echte werk. Verander je de poort, zet de nieuwe poort dan eerst open in ufw.
Wat doe ik als ik mezelf heb buitengesloten?
Gebruik de console in het VPS-paneel. Die werkt los van SSH en de firewall, dus je kunt daar inloggen en de wijziging terugdraaien, bijvoorbeeld met ufw disable of door je nieuwe SSH-instellingenbestand te verwijderen.
Beschermt de DDoS-bescherming tegen hackers?
Nee, niet tegen inbraak. De DDoS-bescherming filtert aanvallen die je verbinding met verkeer willen overspoelen, en staat bij MC-Node op elke VPS altijd aan. Tegen geraden wachtwoorden en lekken in software helpen updates, SSH-keys, een firewall en fail2ban.
Is een VPS bij MC-Node managed of unmanaged?
Self-managed: je krijgt root- of Administrator-toegang en beheert updates en beveiliging zelf. Onze support denkt mee als je vastloopt. Wil je dat beheer liever niet, dan is een kant-en-klare gameserver vaak de betere keuze.