- Hetzner server
Handleiding: Het opzetten van een server bij Hetzner (inclusief DNS A en MX records)
Overzicht
Deze handleiding beschrijft stap‑voor‑stap hoe je:
- Een cloud server aanmaakt bij Hetzner
- Via SSH inlogt op de server
- Basis beveiliging uitvoert
- DNS instelt (A-records)
- Mail DNS instelt (MX, SPF, DKIM, DMARC)
- Reverse DNS instelt
De stappen zijn gebaseerd op een typische Linux server (bijvoorbeeld Ubuntu of Debian).
1. Account aanmaken bij Hetzner
Ga naar:
https://www.hetzner.com
Maak een account aan en verifieer je identiteit.
Daarna ga je naar:
Cloud Console
https://console.hetzner.cloud
2. Nieuwe server aanmaken
Klik:
Create Server
Aanbevolen instellingen:
Location: - Falkenstein (Duitsland)
Image: - Ubuntu 24.04 LTS of - Debian 12
Type: - CX22 of CX32 (voor kleine projecten ruim voldoende)
Authentication: - SSH key (aanbevolen) - of tijdelijk password
Server name: bijvoorbeeld:
mail.public-risk.org
Klik daarna op:
Create & Buy
De server start nu automatisch.
3. Eerste login via SSH
Op macOS of Linux:
ssh root@SERVER_IP
voorbeeld:
ssh root@89.167.39.46
4. Server updaten
Na eerste login:
apt update
apt upgrade -y
5. Nieuwe gebruiker maken
Gebruik liever geen root login.
adduser admin
usermod -aG sudo admin
Daarna:
su - admin
6. Firewall installeren
Ubuntu / Debian:
apt install nftables
Minimale regels:
nft add table inet filter
nft add chain inet filter input { type filter hook input priority 0 \; policy drop \; }
nft add rule inet filter input ct state established,related accept
nft add rule inet filter input iif lo accept
nft add rule inet filter input tcp dport 22 accept
nft add rule inet filter input tcp dport 80 accept
nft add rule inet filter input tcp dport 443 accept
7. DNS zone aanmaken bij Hetzner
Ga naar:
Hetzner Console → DNS
Maak een nieuwe zone:
voorbeeld:
public-risk.org
8. A record instellen
Een A record koppelt een domein aan een IP adres.
voorbeeld:
Type Name Value
A @ 89.167.39.46 A www 89.167.39.46 A mail 89.167.39.46 A dev 89.167.39.46
Betekenis:
@ = hoofddomein\ www.public-risk.org\ mail.public-risk.org\ dev.public-risk.org
Alle verwijzen naar dezelfde server.
9. MX record instellen
MX records bepalen welke server email ontvangt.
voorbeeld:
Type Name Value Priority
MX @ mail.public-risk.org 10
Belangrijk:
mail.public-risk.org moet een A record hebben.
10. Reverse DNS instellen
Ga in Hetzner naar:
Servers → jouw server → Networking
Klik op:
rDNS
Stel in:
mail.public-risk.org
Dit voorkomt dat mailservers je email weigeren.
11. SPF record
Voeg een TXT record toe:
Type Name Value
TXT @ v=spf1 mx -all
Betekenis:
alleen servers uit het MX record mogen mail versturen.
12. DKIM
DKIM wordt meestal automatisch ingesteld door mailsoftware (bijv. OpenDKIM of rspamd).
Na installatie krijg je een TXT record zoals:
Type Name Value
TXT default._domainkey DKIM_KEY
13. DMARC
Aanbevolen record:
Type Name Value
TXT _dmarc v=DMARC1; p=quarantine; rua=mailto:postmaster@public-risk.org
14. DNS controleren
Controleer met:
dig public-risk.org
dig mx public-risk.org
dig mail.public-risk.org
Of online:
https://mxtoolbox.com
15. SSL certificaten (Let's Encrypt)
Installeer nginx:
apt install nginx
Daarna:
apt install certbot python3-certbot-nginx
Certificaat aanvragen:
certbot --nginx -d public-risk.org -d www.public-risk.org
16. Samenvatting DNS records
Voor een typische server:
Type Name Value
A @ SERVER_IP A www SERVER_IP A mail SERVER_IP MX @ mail.domain TXT @ SPF record TXT _dmarc DMARC record
17. Veelgemaakte fouten
MX zonder A record
mail.domain moet bestaan als A record.
Reverse DNS ontbreekt
Veel mailservers weigeren mail zonder rDNS.
SPF ontbreekt
Zonder SPF wordt mail vaker als spam gezien.
18. Nuttige tools
DNS controle:
https://mxtoolbox.com
SSL controle:
https://www.ssllabs.com/ssltest/