- De leerlingen kunnen een paswoordmanager installeren en configureren voor veilig wachtwoordbeheer
- De leerlingen kunnen SSH-client installeren en een SSH-sleutelpaar genereren voor veilige serververbindingen
- De leerlingen kunnen een account aanmaken bij een cloud-provider en het dashboard navigeren
- De leerlingen kunnen firewallregels configureren voor netwerkbeveiliging
- De leerlingen kunnen verbinding maken met een VPS via SSH en een webserver opzetten
- De leerlingen kunnen bestanden overzetten naar een server via SFTP
- De leerlingen kunnen een website hosten en testen via HTTP en IP-adres
- Dit lespakket maakt gebruik van de leerstof die jullie gezien hebben in het sleutelboek Computernetwerken 3.0 en de cursus Linux (Yves Van Hal).
Cheat sheets kan je terugvinden op de pagina Cheat sheets
Overzicht: stappenplan voor het hosten van een website zonder domein en zonder certificaat
Je vindt hieronder een overzicht van de te volgen stappen voor het hosten van een website zonder domein en zonder certificaat. In de beschrijving van de meeste stappen herken je begrippen die we de voorbije maanden geleerd hebben.
| Stap | Beschrijving |
|---|---|
| 1 | Een paswoord manager installeren |
| 2 | SSH-client op onze eigen laptop installeren en configureren |
| 3 | Een SSH key registreren |
| 4 | Een account aanmaken bij een cloud-provider |
| 5 | Een firewall configureren |
| 6 | Een VPS (virtual private server) huren |
| 7 | Verbinden met de server via SSH en de server configureren als webserver |
| 8 | De firewall configuratie aanpassen voor http |
| 9 | SFTP client op onze eigen laptop installeren en configureren |
| 10 | HTML-bestanden overzetten naar de webserver |
| 11 | De website testen via http en het ip-adres |
Voorbereidende werken
Voor we een server huren bij een cloud-provider moeten er enkele voorbereidende werken gebeuren. Deze vind je hieronder.
Stap 1: Een paswoord manager installeren
Uitdaging: leer op 2 minuten 10 verschillende paswoorden van buiten. Ze moeten aan volgende voorwaarden voldoen:
- Minstens 14 tekens
- Minstens 1 hoofdletter
- Minstens 1 kleine letter
- Minstens 1 cijfer
- Minstens 1 speciaal teken
- Ze moeten grondig van elkaar verschillen
Als je naar bovenstaande uitdaging kijkt, dan slik je meestal even. Je hebt vast al heel wat gebruikers-accounts in je leven moeten aanmaken waarbij je telkens een paswoord moest aanmaken. En zoals velen gebruikte je vast vaak hetzelfde paswoord, of een variatie van hetzelfde paswoord.
Om een eigen website te hosten zullen we ook regelmatig nieuwe accounts moeten aanmaken. Aangezien het hier gaat over een publieke website stellen we ons bloot aan alle gevaren van het internet. Net zoals er bij andere beroepen veiligheidsvoorzorgen genomen worden (veiligheidshelm in de bouw bijvoorbeeld) zullen wij dit ook doen. We gaan volgende veiligheidsmaatregelen dus strikt moeten volgen:
- We gebruiken een paswoordmanager
- Voor elke account maken we een uniek paswoord
- We kiezen dit paswoord niet zelf, maar laten het genereren door de paswoordmanager
- Indien de account 2FA beveiliging toelaat, stellen we dit in
- Sommigen onder jullie gebruiken misschien al een paswoordmanager. Deze mag je ook gebruiken voor deze lessen.
- Gebruik je nog geen paswoordmanager, doe dan als volgt:
- Naar de Store: Ga in Google Chrome naar de Chrome Web Store (of Google naar "Bitwarden Chrome Extension").
- Toevoegen: Klik op de blauwe knop "Toevoegen aan Chrome" en bevestig met "Extensie toevoegen".
- Vastpinnen (Belangrijk!): Klik rechtsboven in de browserbalk op het Puzzelstukje (🧩). Zoek Bitwarden in de lijst en klik op de Punaise (📌). Het blauwe schildje staat nu altijd in je balk.
- Account aanmaken: Klik op het Bitwarden schildje en kies "Account aanmaken". Vul je school-email in.
- Het Hoofdwachtwoord: Bedenk nu een Master Password.
- Instructie: Dit is het enige wachtwoord dat je nog moet onthouden. Maak er een zin van (Passphrase), bijvoorbeeld: MijnGroeneFietsHeeft3Wielen!.
- Inloggen & Gebruiken: Log in met je nieuwe account. Als je nu op een inlogpagina komt, zal Bitwarden vragen of hij het wachtwoord moet opslaan.
Stap 2: SSH-client op onze eigen laptop installeren en configureren
Als we een server gaan huren, dan hebben we een manier nodig om commando's op deze server uit te voeren. Met deze commando's kunnen we software installeren op de server en de server configureren. Hiervoor zullen we het SSH protocol gebruiken. Om dit te kunnen gebruiken hebben we een programma op onze laptop nodig die commando's via het SSH protocol kan doorsturen naar een onze server.
1: Terminal openen
- Druk op de
Windows-toets - Typ
terminalen druk op Enter
2: Controleren of SSH al geïnstalleerd is
- Typ in Terminal:
ssh -V - Druk op Enter
- Indien je een versienummer ziet (bijv.
OpenSSH_for_Windows_8.1), is SSH al geïnstalleerd
3: SSH installeren (indien nodig) Indien het commando hierboven niet werkt, volg je deze stappen:
- Open Settings → Apps → Optional features
- Klik op Add a feature
- Zoek naar
OpenSSH Clienten selecteer het - Klik Install
- Start Terminal opnieuw op
Stap 3: Een SSH key registreren
Bij het verbinden met een server via SSH is het belangrijk om een veilige manier te hebben om je identiteit te verifiëren. Daarom gaan we een SSH-sleutelpaar genereren. Een sleutelpaar bestaat uit twee delen: een privésleutel en een publieke sleutel.
- Privésleutel: Dit is een geheim bestand dat je op je eigen computer bewaart. Het moet nooit met iemand gedeeld worden.
- Publieke sleutel: Dit bestand kan veilig met anderen gedeeld worden, en het wordt op de server geplaatst. Het stelt de server in staat om te verifiëren dat jij de eigenaar bent van de bijbehorende privésleutel.
Waarom een sleutelpaar boven een wachtwoord?
- Veiligheid: Sleutels zijn veel moeilijker te kraken dan wachtwoorden. Een goed gegenereerd sleutelpaar biedt een veel hogere beveiliging.
- Geen wachtwoordbeheer: Je hoeft geen complexe wachtwoorden te onthouden of te beheren. De privésleutel is alles wat je nodig hebt.
- Automatisering: SSH-sleutels maken het eenvoudiger om scripts en geautomatiseerde taken uit te voeren zonder dat je telkens een wachtwoord hoeft in te voeren.
Door gebruik te maken van een SSH-sleutelpaar, zorgen we voor een veiligere en efficiëntere manier om verbinding te maken met onze server.
1: Terminal openen
- Druk op de
Windows-toets - Typ
terminalen druk op Enter
2: SSH-sleutelpaar genereren
- Typ in Terminal:
ssh-keygen -t ed25519 - Druk op Enter
- Wanneer gevraagd wordt waar de sleutel opgeslagen moet worden, druk je op Enter (standaardlocatie:
C:\Users\<jouw_gebruikersnaam>\.ssh\id_ed25519) - Wanneer gevraagd wordt om een passphrase in te voeren, typ je een sterke passphrase (of druk Enter voor geen passphrase)
- Je krijgt nu twee bestanden:
id_ed25519(privésleutel - geheim!) enid_ed25519.pub(publieke sleutel)
De server huren
Stap 4: Een account aanmaken bij een cloud-provider
Voor het huren van een cloud server gaan we gebruik maken van de Europese cloudprovider Hetzner. Dit platform biedt betrouwbare en betaalbare oplossingen met goede performantie en uitstekende uptime. Je kan ook servers per uur huren i.p.v. per maand.
- De leraar nodigt jullie uit om deel te nemen aan een project. Jullie krijgen daardoor een mail met een uitnodigings-link.
- Klik op deze link en maak een nieuwe account aan.
- Vul je emailadres in en genereer een sterk wachtwoord via Bitwarden
- Accepteer de voorwaarden en klik Create account
- Bevestig je email via de verificatiemail
Je account is nu gereed voor het huren van een server. Lees onderstaande regels:
- Jullie account heeft het recht om nieuwe servers te huren.
- Hier is een kost aan verbonden. Huur nooit op eigen initiatief een server.
- Vraag steeds bevestiging aan de leraar.
- Ik herhaal ...
- Hier is een kost aan verbonden. Huur nooit op eigen initiatief een server.
- Vraag steeds bevestiging aan de leraar.
Na het inloggen bij Hetzner kom je meestal op je account scherm. Het huren en configureren van servers doen we via het Console/Dashboard scherm.
Jullie hebben toegang tot één project. Kies dit project. Daarna zien jullie het dashboard.
De verschillende menu's in en delen van het dashboard zullen we stapje voor stapje verkennen.
Stap 5: Een firewall configureren
Onze server zal een publiek IP-adres krijgen. Van zodra deze aan ons toegewezen wordt, zal deze onder vuur komen te liggen. Het is daarom belangrijk om eerst de firewall functionaliteit van Hetzner te configureren.
Open het firewall configuratie scherm
- Kies
Firewallsin het linker menu - Klik op de toets
Create Firewall - Je komt nu in het configuratiescherm
Er zijn standaard 2 regels ingesteld.
- Weet je waarom?
- Welke protocollen worden toegelaten?
- Werken we volgens het 'alles behalve' of het 'niets behalve' principe?
Conventie Alle resources die we aanmaken geven we een naam. De naam die we geven wordt laten we steeds voorafgegaan door je initialen en een koppelteken. firewall-1 wordt dus bijvoorbeeld ldr-firewall-1
- Klik nu op
Create Firewallom de firewall aan te maken.
Let op! We hebben enkel een firewall configuratie aangemaakt. We mogen deze configuratie straks bij het aanvragen van onze te huren server niet vergeten.
Stap 6: Een VPS (virtual private server) huren
1: Wat is IaaS Cloud?
IaaS staat voor "Infrastructure as a Service". Dit is een cloudservice waarbij je computing-resources (servers, opslag, netwerk) huurt in plaats van ze zelf aan te schaffen.
Hoe werkt IaaS?
- De cloudprovider beheert de fysieke hardware
- Jij beheert het besturingssysteem, applicaties en data
- Je betaalt per gebruik (pay-as-you-go model)
- Je kunt resources flexibel uitbreiden of verkleinen
Hetzner als IaaS provider: Hetzner is een IaaS-provider. Ze stellen hun fysieke serverinfrastructuur beschikbaar. Jij huurt daaruit een VPS en kunt deze volledig naar je hand zetten.
2: Wat is een VPS? Een VPS (Virtual Private Server) is een virtuele server die je huurt bij een cloudprovider. In plaats van een fysieke server te kopen, krijg je een gedeelte van de computerkracht van een grote fysieke server toegewezen. Dit gedeelte is volledig van jou en werkt als een eigen private server.
Voordelen van een VPS:
- Je hebt volledige controle over je server
- Je kunt software installeren en configureren naar je wens
- Je betaalt alleen voor wat je gebruikt
- De server is altijd online (24/7 uptime)
- Je kunt websites en applicaties hosten
3: Beslissingen bij het huren van een VPS
Wanneer je een VPS huurt, moet je verschillende keuzes maken. Hieronder vind je een overzicht van de belangrijkste beslissingen:
| Beslissing | Opties | Uitleg |
|---|---|---|
| Server type | Shared vs Dedicated | Bij Shared deel je resources met anderen (goedkoper). Bij Dedicated heb je alles voor jezelf (sneller, duurder). |
| Performance niveau | Cost-optimized vs Regular vs High | Cost-optimized is voordelig maar trager. Regular biedt een goed evenwicht. High is het snelst maar het duurste. |
| Processor (vCPU) | 1, 2, 4, 8+ cores | Meer cores = betere prestaties. Voor een eenvoudige website volstaat 1-2 cores. |
| RAM geheugen | 512 MB tot 128+ GB | Meer RAM = sneller. Voor een eerste website: 1-2 GB volstaat. |
| Opslagruimte (SSD) | 20 GB tot 1+ TB | Kies op basis van je website-inhoud. Voor HTML/CSS/JS: 20-50 GB volstaat. |
| Locatie | Europa, USA, Azië, etc. | Kies dicht bij je bezoekers voor lagere latency. Voor Belgische bezoekers: Europa (Duitsland of Finland). |
| Besturingssysteem | Ubuntu, Debian, CentOS, etc. | Voor beginners: Ubuntu 22.04 LTS is een goede keuze. |
| IP-adressen | IPv4 en/of IPv6 | IPv4 is standaard. IPv6 is de toekomst. Meestal heb je 1 IPv4 nodig. |
Voor deze lessen raden we aan:
- Server type: Shared (kosteneffectief)
- Performance: Cost-optimized (het volstaat voor oefendoeleinden)
- vCPU: 1 core
- RAM: 1-2 GB
- SSD: 25 GB
- Locatie: Europa (Duitsland of Finland)
- Image: Ubuntu 22.04 LTS
- IP: 1x IPv4
Wij gaan voor de CX23 configuratie.
Indien deze niet voorradig is, is de CPX11 configuratie een alternatief.
4: VPS huren via het Hetzner dashboard
- Klik op
Serversin het linker menu - Klik op de knop
Create Server - Je komt nu in het serverconfiguratieformulier. Kies volgens de configuratie die we hierboven besproken hebben.
- SSH-sleutel toevoegen
- Scroll naar beneden tot je het gedeelte "SSH keys" ziet
- Klik op
Add SSH Key - Open het bestand
id_ed25519.pub(jouw publieke sleutel) met een teksteditor. Je vindt het terug in de folderC:\Users\<jouw_gebruikersnaam>\.ssh\ - Kopieer de volledige inhoud van dit bestand
- Plak deze in het invoerveld bij Hetzner
- Geef de sleutel een naam volgens de conventie (bijv.
ldr-ssh-key)
- Firewall configuratie kiezen
- Scroll naar beneden tot je het gedeelte "Firewalls" ziet
- Selecteer de firewall configuratie die je in Stap 5 hebt aangemaakt (met jouw initialen)
- Servernaam instellen
- Geef de server een naam volgens de conventie (bijv.
ldr-webserver-1) - Laat de overige instellingen ongewijzigd
- Geef de server een naam volgens de conventie (bijv.
- Klik op
Create Serverom de server aan te maken
Je server is nu actief en krijgt een publiek IP-adres toegewezen.
- Wachtwoordbeheer implementeren via een paswoordmanager
- SSH-client configureren voor externe serververbindingen
- SSH-sleutelpaar genereren voor veilige authenticatie
- Cloud-provider account opzetten voor serverhosting
- Firewall instellingen configureren voor netwerkbeveiliging





