OS-installatie
Deze pagina beschrijft de standaardprocedure voor het installeren en voorbereiden van het besturingssysteem voor Tulpencraft-servers.
Voor Tulpencraft wordt Rocky Linux 10 gebruikt als basis. De installatie wordt uitgevoerd als een minimale serverinstallatie, waarna alleen de benodigde software en diensten worden toegevoegd.
🖥️ Installatieomgeving
Tulpencraft-servers draaien als virtuele machines binnen Proxmox VE.
De algemene structuur is:
Proxmox VE
│
└── VM
│
└── Rocky Linux 10
│
└── Tulpencraft-dienst
Voorbeelden van servers:
| Server | Functie | OS |
|---|---|---|
mc-proxy001 | Velocity Proxy / Lobby / infrastructuur | Rocky Linux 10 |
mc-survival001 | Survival | Rocky Linux 10 |
mc-events001 | Events | Rocky Linux 10 |
mc-skyblock001 | Toekomstige SkyBlock-server | Rocky Linux 10 |
De exacte CPU-, RAM- en opslagtoewijzing wordt per VM bepaald.
1. Rocky Linux ISO
Gebruik voor nieuwe installaties de actuele Rocky Linux 10 Minimal ISO.
De ISO wordt in Proxmox als installatie-medium aan de betreffende VM gekoppeld.
Na installatie controleren we de versie met:
cat /etc/rocky-release
Bijvoorbeeld:
Rocky Linux release 10.2 (Red Quartz)
2. VM aanmaken
Maak in Proxmox een nieuwe VM aan.
Gebruik de Tulpencraft-hostnameconventie:
mc-<functie><nummer>
Voorbeelden:
mc-proxy001 mc-survival001 mc-events001 mc-skyblock001
De VM krijgt de benodigde:
- CPU;
- RAM;
- opslag;
- netwerkinterface;
- bootdisk.
De resources worden afgestemd op de functie en verwachte belasting van de server.
3. Rocky Linux installeren
Start de VM vanaf de Rocky Linux 10 ISO.
Kies tijdens de installatie voor een minimale serverinstallatie.
Er wordt geen grafische desktopomgeving geĂŻnstalleerd.
Tulpencraft-servers zijn headless servers en worden beheerd via:
- SSH;
- Proxmox console;
- command line;
- systemd.
4. Taal en toetsenbord
Gebruik bij voorkeur:
Language: English (United States)
en een passend toetsenbord voor de beheeromgeving.
Een Engelstalige serveromgeving voorkomt dat systeemmeldingen, logs en command-output onnodig worden vertaald.
5. Tijdzone
Gebruik:
Europe/Amsterdam
Controleer na installatie:
timedatectl
De systeemtijd moet automatisch worden gesynchroniseerd.
Controleer indien nodig:
chronyc tracking
Correcte tijdsynchronisatie is belangrijk voor:
- logging;
- monitoring;
- certificaten;
- authenticatie;
- backups;
- troubleshooting.
6. Software Selection
Gebruik:
Base Environment: Minimal Install
Installeer geen GUI of desktopomgeving.
De server moet zo minimaal mogelijk blijven. Extra software wordt alleen geĂŻnstalleerd wanneer deze daadwerkelijk nodig is.
7. Storage
Gebruik de virtuele disk die vanuit Proxmox aan de VM wordt gekoppeld.
De benodigde opslagcapaciteit wordt bepaald door het type server.
Voor Minecraft-servers moet rekening worden gehouden met:
- serverbestanden;
- werelddata;
- plugins;
- logs;
- backups;
- toekomstige groei.
Vooral Survival-servers kunnen aanzienlijk groeien door werelddata.
Controleer de beschikbare opslag met:
df -h
8. Hostname
De hostname wordt ingesteld volgens de Tulpencraft-naamgeving.
Bijvoorbeeld:
mc-proxy001
Controleer:
hostnamectl
De hostname moet overeenkomen met de VM-naam in Proxmox.
9. Netwerk
Controleer na installatie de netwerkconfiguratie:
ip addr
en:
ip route
Test vervolgens de verbinding met de gateway:
ping -c 4 <gateway>
Test internetconnectiviteit:
ping -c 4 1.1.1.1
Controleer DNS:
ping -c 4 google.com
De netwerkconfiguratie moet correct functioneren voordat de server verder wordt ingericht.
10. Rocky Linux repositories
Een standaard Tulpencraft-installatie gebruikt de normale Rocky Linux repositories.
Controleer:
sudo dnf repolist
De basisinstallatie hoort minimaal deze repositories te hebben:
baseos appstream extras
Bijvoorbeeld:
repo id repo name baseos Rocky Linux 10 - BaseOS appstream Rocky Linux 10 - AppStream extras Rocky Linux 10 - Extras
De overige Rocky Linux repositories worden niet standaard ingeschakeld.
Repositories zoals CRB, Devel, RT, SAP en andere gespecialiseerde repositories worden alleen ingeschakeld wanneer een specifieke toepassing dit vereist.
11. Administratieve gebruiker
Gebruik voor dagelijks beheer een normaal gebruikersaccount met sudo-rechten.
Controleer of de gebruiker lid is van de wheel-groep:
id <USERNAME>
Indien nodig:
sudo usermod -aG wheel <USERNAME>
Daarna kan verhoogde toegang worden verkregen met:
sudo -i
Root wordt niet gebruikt voor dagelijks beheer.
12. Eerste systeemupdate
Voer na de installatie direct een volledige update uit:
sudo dnf upgrade -y
Controleer vervolgens:
sudo dnf check-update
Wanneer een kernelupdate is geĂŻnstalleerd, reboot de server:
sudo reboot
Controleer na de reboot:
uname -r
en:
cat /etc/rocky-release
13. Basissoftware
Installeer de algemene hulpmiddelen die voor Tulpencraft-beheer nodig zijn:
sudo dnf install -y \ vim \ nano \ wget \ curl \ tar \ unzip \ zip \ git \ tmux \ htop \ rsync \ bash-completion
Belangrijk
Bij gebruik van meerdere regels moet de \ aan het einde van iedere regel staan.
Correct:
sudo dnf install -y \ vim \ nano \ wget \ curl
Niet:
sudo dnf install -y \ vim \ nano \ wget
De tweede vorm wordt door Bash anders geĂŻnterpreteerd en kan ertoe leiden dat dnf geen pakket met de betreffende naam kan vinden.
Niet iedere Tulpencraft-server hoeft uiteindelijk alle bovenstaande hulpmiddelen te bevatten. De server moet zo minimaal mogelijk blijven.
14. SSH
SSH wordt gebruikt voor het beheer van Tulpencraft-servers.
Controleer:
sudo systemctl status sshd
SSH moet automatisch starten:
sudo systemctl enable sshd
De beveiliging van SSH wordt beschreven op:
[[technische-infrastructuur:server-hardening|Server hardening]]
Daar worden onder andere behandeld:
- SSH keys;
- wachtwoordauthenticatie;
- root login;
- toegestane gebruikers;
- SSH-configuratie.
15. Firewall
Tulpencraft-servers gebruiken firewalld als host-based firewall.
Controleer:
sudo systemctl status firewalld
Indien noodzakelijk:
sudo systemctl enable --now firewalld
De specifieke firewallregels worden beschreven op:
[[technische-infrastructuur:firewall|Firewall]]
16. SELinux
SELinux blijft ingeschakeld.
Controleer:
getenforce
De gewenste status is:
Enforcing
SELinux wordt niet uitgeschakeld om applicatieproblemen eenvoudig op te lossen.
Wanneer een applicatie niet correct functioneert met SELinux ingeschakeld, wordt onderzocht welke policy of context noodzakelijk is.
Zie:
[[technische-infrastructuur:selinux|SELinux]]
17. Tijd en NTP
Controleer:
timedatectl
Controleer daarnaast:
chronyc tracking
De systeemklok moet correct gesynchroniseerd zijn.
De gewenste tijdzone is:
Europe/Amsterdam
18. Basiscontrole
Na de OS-installatie worden minimaal de volgende controles uitgevoerd.
Besturingssysteem
cat /etc/rocky-release
Kernel
uname -r
Hostname
hostnamectl
Netwerk
ip addr ip route
Tijd
timedatectl
SELinux
getenforce
Firewall
sudo firewall-cmd --state
Opslag
df -h
Geheugen
free -h
Gefaalde services
sudo systemctl --failed
Wanneer alle controles correct zijn, kan de server verder worden ingericht.
19. Server-specifieke installatie
Een kale Rocky Linux-installatie is nog geen Tulpencraft-server.
Na de OS-installatie wordt de VM ingericht voor zijn specifieke functie.
Bijvoorbeeld:
Rocky Linux 10
│
├── Updates
├── Basissoftware
├── SSH
├── Firewall
├── SELinux
├── NTP
├── Monitoring
│
└── Server-specifieke software
│
├── Velocity
├── Paper
├── Java
├── Database
└── overige diensten
Zie ook:
đź“‹ Installatiechecklist
- [ ] VM aangemaakt in Proxmox
- [ ] Correcte hostname ingesteld
- [ ] Rocky Linux 10 Minimal geĂŻnstalleerd
- [ ]
Europe/Amsterdamingesteld - [ ] NTP gecontroleerd
- [ ] Administratieve gebruiker aangemaakt
- [ ] Gebruiker toegevoegd aan
wheel - [ ] Systeem bijgewerkt
- [ ] Server opnieuw opgestart indien nodig
- [ ] Netwerk gecontroleerd
- [ ] DNS gecontroleerd
- [ ] SSH gecontroleerd
- [ ]
firewalldgecontroleerd - [ ] SELinux staat op
Enforcing - [ ] Geen gefaalde systemd-services
- [ ] Opslag gecontroleerd
- [ ] RAM gecontroleerd
- [ ] Server-specifieke configuratie uitgevoerd
🌷 Installatiestandaard
| Onderdeel | Standaard |
|---|---|
| OS | Rocky Linux 10 |
| Installatie | Minimal Install |
| Virtualisatie | Proxmox VE |
| Beheer | SSH + sudo |
| Firewall | firewalld |
| Security | SELinux Enforcing |
| Tijdzone | Europe/Amsterdam |
| Tijdsync | chrony / NTP |
| Repository | BaseOS + AppStream + Extras |
| GUI | Niet geĂŻnstalleerd |
Status: Actieve Tulpencraft-standaard Laatst bijgewerkt: augustus 2026