SSH Key Installatiegids: Sleutels Aanmaken, Root Wachtwoord Uitschakelen & Je VPS Beveiligen
TUTORIAL 10 min read fordnox

SSH Key Installatiegids: Sleutels Aanmaken, Root Wachtwoord Uitschakelen & Je VPS Beveiligen

Leer hoe je SSH-sleutels aanmaakt, root-wachtwoordaanmelding uitschakelt en open poorten op je VPS controleert. Stapsgewijze handleiding om je server in enkele minuten te beveiligen.


SSH Key Installatiegids: Sleutels Aanmaken, Root Wachtwoord Uitschakelen & Je VPS Beveiligen

Elke VPS die je opstart wordt onmiddellijk gescand door bots die standaardwachtwoorden uitproberen. Binnen enkele minuten. Als je nog steeds inlogt met een root-wachtwoord, ben je slechts een brute-force aanval verwijderd van een gecompromitteerde server.

SSH-sleutels lossen dit op. Ze zijn sterker dan elk wachtwoord, sneller in gebruik, en stellen je in staat om wachtwoordaanmelding volledig uit te schakelen. Hier lees je hoe je alles instelt, plus hoe je controleert welke poorten op je server zijn blootgesteld.

Stap 1: Een SSH-Sleutelpaar Aanmaken

SSH-sleutels werken in paren — een privesleutel (blijft op je computer, deel deze nooit) en een publieke sleutel (gaat naar de server).

Op macOS of Linux

Open een terminal en voer uit:

ssh-keygen -t ed25519 -C "your@email.com"

Je ziet:

Generating public/private ed25519 key pair.
Enter file in which to save the key (/home/you/.ssh/id_ed25519):

Druk op Enter om de standaardlocatie te accepteren. Stel vervolgens een wachtwoordzin in (aanbevolen) of druk op Enter om over te slaan.

Dit maakt twee bestanden aan:

BestandWat het isDelen?
~/.ssh/id_ed25519PrivesleutelNooit
~/.ssh/id_ed25519.pubPublieke sleutelJa — kopieer naar servers

Op Windows

Optie A: Windows Terminal / PowerShell

ssh-keygen -t ed25519 -C "your@email.com"

Zelfde proces als hierboven. Sleutels worden opgeslagen in C:\Users\JouwNaam\.ssh\.

Optie B: PuTTYgen

  1. Download PuTTY
  2. Open PuTTYgen
  3. Selecteer EdDSA (Ed25519)
  4. Klik op Generate en beweeg je muis
  5. Sla de privesleutel op (.ppk) en kopieer de tekst van de publieke sleutel

Waarom Ed25519?

AlgoritmeSleutelgrootteBeveiligingSnelheid
RSA 40964096-bitGoedLangzamer
Ed25519256-bitUitstekendSnelste
ECDSA256-bitGoedSnel

Ed25519 is de moderne standaard — kortere sleutels, snellere bewerkingen, sterke beveiliging. Gebruik het tenzij je RSA-compatibiliteit nodig hebt met zeer oude systemen.

Stap 2: Je Publieke Sleutel naar de Server Kopieren

Methode 1: ssh-copy-id (Makkelijkst)

ssh-copy-id root@your-server-ip

Voer voor de laatste keer je wachtwoord in. Klaar. De tool voegt je publieke sleutel toe aan ~/.ssh/authorized_keys op de server.

Methode 2: Handmatig Kopieren

Als ssh-copy-id niet beschikbaar is:

cat ~/.ssh/id_ed25519.pub | ssh root@your-server-ip \
  "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

Methode 3: Tijdens het Aanmaken van de VPS

De meeste providers laten je SSH-sleutels toevoegen bij het aanmaken van een server:

Dit is de beste aanpak — de server is beveiligd vanaf het moment dat hij opstart.

Controleer of het werkt

ssh root@your-server-ip

Je zou moeten inloggen zonder dat er om een wachtwoord wordt gevraagd (of alleen om je sleutel-wachtwoordzin als je er een hebt ingesteld).

Stap 3: Root Wachtwoordaanmelding Uitschakelen

Zodra SSH-sleutelaanmelding werkt, schakel wachtwoordauthenticatie volledig uit. Dit maakt brute-force aanvallen onmogelijk.

De SSH-configuratie Bewerken

sudo nano /etc/ssh/sshd_config

Zoek en wijzig deze regels (sommige kunnen zijn uitgecommentarieerd met #):

# Wachtwoordauthenticatie uitschakelen
PasswordAuthentication no

# Lege wachtwoorden uitschakelen
PermitEmptyPasswords no

# Challenge-response uitschakelen (PAM)
KbdInteractiveAuthentication no

# Optioneel: root-aanmelding volledig uitschakelen (gebruik een gewone gebruiker + sudo)
# PermitRootLogin no

# Als je root-aanmelding wilt maar ALLEEN met sleutels:
PermitRootLogin prohibit-password

De Wijzigingen Toepassen

sudo systemctl restart sshd

⚠️ Waarschuwing: Voordat je je huidige sessie sluit, open een nieuwe terminal en test of je nog steeds kunt inloggen met je sleutel. Als je jezelf buitensluit, heb je consoletoegang nodig via het dashboard van je VPS-provider.

Testen

Vanaf een andere machine (of probeer expliciet met wachtwoord):

ssh -o PreferredAuthentications=password root@your-server-ip

Je zou moeten zien:

Permission denied (publickey).

Dat betekent dat wachtwoordaanmelding is uitgeschakeld. Alleen je SSH-sleutel werkt nu.

Stap 4: Open Poorten op Je VPS Controleren

Elke open poort is een potentieel aanvalsoppervlak. Je moet precies weten wat er is blootgesteld.

Controleren vanaf de binnenkant van je server

Alle luisterende poorten weergeven:

ss -tlnp

De uitvoer ziet er zo uit:

State   Recv-Q  Send-Q  Local Address:Port  Peer Address:Port  Process
LISTEN  0       128     0.0.0.0:22          0.0.0.0:*          users:(("sshd",pid=1234))
LISTEN  0       511     0.0.0.0:80          0.0.0.0:*          users:(("nginx",pid=5678))
LISTEN  0       511     0.0.0.0:443         0.0.0.0:*          users:(("nginx",pid=5678))
LISTEN  0       128     127.0.0.1:5432      0.0.0.0:*          users:(("postgres",pid=9012))

Wat elke kolom je vertelt:

KolomBetekenis
0.0.0.0:22Luistert op alle interfaces (publiek toegankelijk)
127.0.0.1:5432Luistert alleen op localhost (niet publiek toegankelijk)
ProcessWelk programma de poort gebruikt

Belangrijkste punt: Alles op 0.0.0.0 of [::] is bereikbaar vanaf het internet. Alles op 127.0.0.1 is alleen lokaal.

Controleren vanaf de buitenkant van je server

Dit vertelt je wat het internet daadwerkelijk ziet.

Met nmap (meest grondig):

# Installeer nmap op je lokale machine
# macOS: brew install nmap
# Ubuntu: sudo apt install nmap

# Veelgebruikte poorten scannen
nmap your-server-ip

# ALLE poorten scannen (duurt langer)
nmap -p- your-server-ip

# Scannen met servicedetectie
nmap -sV your-server-ip

Met netcat (snelle controle van een enkele poort):

nc -zv your-server-ip 22
nc -zv your-server-ip 3306

Met een online scanner:

Bezoek shodan.io en zoek naar het IP-adres van je server. Het toont alle publiek gedetecteerde poorten en diensten — precies wat aanvallers zien.

Welke poorten moeten open zijn?

Voor een typische webserver:

PoortDienstMoet open zijn?
22SSH✅ Ja (overweeg een niet-standaard poort)
80HTTP✅ Ja (stuurt door naar HTTPS)
443HTTPS✅ Ja
3306MySQL❌ Nee — bind aan localhost
5432PostgreSQL❌ Nee — bind aan localhost
6379Redis❌ Nee — bind aan localhost
27017MongoDB❌ Nee — bind aan localhost

Vuistregel: Als een dienst niet bereikbaar hoeft te zijn vanaf het internet, bind het dan aan 127.0.0.1.

Onnodige Poorten Sluiten met UFW

UFW (Uncomplicated Firewall) is de eenvoudigste manier om poorttoegang te beheren op Ubuntu/Debian:

# UFW activeren (sta SSH eerst toe!)
sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable

# Status controleren
sudo ufw status verbose

# Een specifieke poort blokkeren
sudo ufw deny 3306

# Alleen vanaf een specifiek IP toestaan
sudo ufw allow from 203.0.113.50 to any port 22

⚠️ Sta altijd SSH toe voordat je UFW activeert. Anders sluit je jezelf buiten.

Bonus: Extra SSH-Beveiliging

De Standaard SSH-Poort Wijzigen

SSH verplaatsen van poort 22 elimineert 99% van de geautomatiseerde scans:

# /etc/ssh/sshd_config
Port 2222
sudo systemctl restart sshd
sudo ufw allow 2222/tcp
sudo ufw delete allow 22/tcp

Maak vervolgens verbinding met:

ssh -p 2222 root@your-server-ip

Een SSH Config-Bestand Instellen

Stop met het typen van lange commando’s. Maak ~/.ssh/config aan op je lokale machine:

Host myserver
    HostName 203.0.113.50
    User root
    Port 2222
    IdentityFile ~/.ssh/id_ed25519

Nu typ je gewoon:

ssh myserver

Fail2Ban Inschakelen

Fail2Ban bewaakt logbestanden en blokkeert tijdelijk IP-adressen met te veel mislukte aanmeldpogingen:

sudo apt install fail2ban
sudo systemctl enable fail2ban
sudo systemctl start fail2ban

# Geblokkeerde IP's controleren
sudo fail2ban-client status sshd

Snelle Beveiligingschecklist

Doorloop na het instellen van een nieuwe VPS deze lijst:

FAQ

Ik ben mijn SSH-sleutel kwijt. Hoe kom ik weer binnen?

Gebruik de webconsole van je VPS-provider (beschikbaar in het dashboard van elke provider). Het geeft je directe terminaltoegang zonder SSH. Van daaruit kun je een nieuwe publieke sleutel toevoegen of tijdelijk wachtwoordauthenticatie weer inschakelen.

Kan ik meerdere SSH-sleutels gebruiken?

Ja. Voeg elke publieke sleutel toe op een eigen regel in ~/.ssh/authorized_keys op de server. Handig voor teamtoegang of verschillende apparaten.

Moet ik een wachtwoordzin instellen op mijn sleutel?

Ja, vooral op gedeelde of draagbare apparaten. Het voegt een tweede laag toe — zelfs als iemand je sleutelbestand steelt, kan diegene het niet gebruiken zonder de wachtwoordzin. Gebruik ssh-agent om te voorkomen dat je het elke keer moet intypen:

eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519

Is het wijzigen van de SSH-poort echt nuttig?

Het verbetert de beveiliging niet tegen gerichte aanvallen, maar elimineert ~99% van het geautomatiseerde botverkeer. Minder ruis in je logs, minder verspilde bronnen aan mislukte pogingen.

Hoe weet ik of iemand probeert in te breken?

Controleer je authenticatielog:

# Ubuntu/Debian
sudo tail -100 /var/log/auth.log | grep "Failed password"

# CentOS/RHEL
sudo tail -100 /var/log/secure | grep "Failed password"

Als je duizenden vermeldingen ziet van verschillende IP-adressen, is dat normaal botscanning. Het is precies waarom je wachtwoordauthenticatie uitschakelt.

Wat Nu?

Nu SSH is vergrendeld en je weet welke poorten open zijn, heb je de meest kritieke aanvalsvectoren afgedekt. Voor een diepere duik in VPS-beveiliging, bekijk onze VPS-beveiligingsgids en de WireGuard-installatiegids voor versleutelde tunnels tussen servers.

Een VPS nodig om te oefenen? De KVM-plannen van Hostinger beginnen bij een paar euro per maand en geven je volledige root-toegang — perfect om serverbeveiliging hands-on te leren.

~/ssh-key-management-guide/get-started

Ready to get started?

Get the best VPS hosting deal today. Hostinger offers 4GB RAM VPS starting at just $4.99/mo.

Get Hostinger VPS — $4.99/mo

// up to 75% off + free domain included

// related topics

ssh key instellen ssh sleutel aanmaken root wachtwoord ssh uitschakelen ssh key authenticatie open poorten vps controleren vps beveiliging gids

// related guides

Andrius Putna

Andrius Putna

I am Andrius Putna. Geek. Since early 2000 in love tinkering with web technologies. Now AI. Bridging business and technology to drive meaningful impact. Combining expertise in customer experience, technology, and business strategy to deliver valuable insights. Father, open-source contributor, investor, 2xIronman, MBA graduate.

// last updated: March 14, 2026. Disclosure: This article may contain affiliate links.