π Hoofdstuk 2.2: De Basisdiensten van Linux
ββββββββββββββββββββββββββββββ
π‘ Introductie:
ββββββββββββββββββββββββββββββ
Linux staat bekend om zijn robuuste ondersteuning voor een aantal fundamentele internetdiensten.
Deze drie basisdiensten zijn uitgegroeid tot standaarden op het internet:
β’ Databaseservices
β’ E-mailservices
β’ Webservers
ββββββββββββββββββββββββββββββ
π Webservers:
ββββββββββββββββββββββββββββββ
β’ Apache:
Een van de populairste webservers dankzij de modulaire structuur.
Geavanceerde functies worden toegevoegd via plug-in modules.
Geschikt voor zowel eenvoudige websites als complexe webapplicaties.
β’ nginx (Engine-X):
Lichtgewicht alternatief voor Apache met ingebouwde functies zoals:
- Webproxy
- Mailproxy
- Webcache
- Load-balancing
Voordelen: Kleinere geheugendruk dan Apache en kan meer dan 10.000 gelijktijdige netwerkverbindingen aan.
β’ Lighttpd:
Ontworpen voor lage geheugen- en CPU-belasting.
Bevat een ingebouwde database.
Ideaal voor snelle, eenvoudige webtoepassingen.
ββββββββββββββββββββββββββββββ
ποΈ Databaseservers:
ββββββββββββββββββββββββββββββ
β’ PostgreSQL:
Relationele SQL-database met geavanceerde functies.
Volgt de ACID-richtlijnen (Atomiciteit, Consistentie, Isolatie en Duurzaamheid), wat zorgt voor betrouwbaarheid en stabiliteit.
Veelzijdig maar complex, geschikt voor grote systemen.
β’ MySQL:
Snelle relationele database.
Bekend als de "M" in de populaire LAMP-stack (Linux, Apache, MySQL, PHP/Python/Perl).
Veel gebruikt voor websites en webapplicaties.
β’ MongoDB:
NoSQL-database die gebruikmaakt van JSON-documenten.
Niet-relationeel, maar ondersteunt wel indexering, queryβs, load balancing en zelfs JavaScript in queryβs.
Geschikt voor dynamische, schaalbare toepassingen.
ββββββββββββββββββββββββββββββ
π§ Mailservers:
ββββββββββββββββββββββββββββββ
Een Linux-mailsysteem bestaat doorgaans uit de volgende componenten:
β’ E-maildatabase:
Opslag van e-mailberichten.
β’ Mail Delivery Agent (MDA):
Verantwoordelijk voor de bezorging van e-mails aan lokale gebruikers.
β’ Mail User Agent (MUA):
Gebruikersinterface voor het lezen en beheren van e-mails.
β’ Mail Transfer Agent (MTA):
Verzorgt het verzenden en ontvangen van e-mails tussen servers.
ββββββββββββββββββββββββββββββ
βοΈ MUA (Mail User Agent):
ββββββββββββββββββββββββββββββ
Wordt gebruikt door eindgebruikers om e-mails te lezen en beheren.
Voorbeelden: Evolution, KMail.
Draait op de clientzijde.
ββββββββββββββββββββββββββββββ
π€ MTA (Mail Transfer Agent):
ββββββββββββββββββββββββββββββ
Verantwoordelijk voor het afhandelen van inkomende en uitgaande e-mails op de server.
Voorbeelden:
- Sendmail: Zeer veelzijdig, ondersteunt virtuele domeinen, gebruikersaliassen en doorsturen van berichten.
- Postfix: Modulaire opbouw, eenvoudig te configureren met slechts twee configuratiebestanden.
- Exim: Gebaseerd op het Sendmail-model als één groot programma. Richt zich op directe bezorging van e-mails in plaats van wachtrijen.
ββββββββββββββββββββββββββββββ
π₯ MDA (Mail Delivery Agent):
ββββββββββββββββββββββββββββββ
Zorgt voor de uiteindelijke bezorging van e-mails aan lokale gebruikers.
Voorbeelden:
- binmail: Simpel en populair, kan berichten lezen uit /var/spool/mail of andere postbussen.
- procmail: Vaak standaard geΓ―nstalleerd op Linux-systemen, stelt gebruikers in staat om e-mails te filteren en te beheren via configuratiebestanden in hun persoonlijke bestand (procmailrc).
ββββββββββββββββββββββββββββββ