Implementing Security

πŸ“š Hoofdstuk 2.4: Implementeren van Beveiliging

──────────────────────────────
πŸ’‘ Inleiding:
──────────────────────────────
Beveiliging is een cruciaal aspect van Linux-serverbeheer.
Dit omvat authenticatie, encryptie, netwerkbeveiliging en monitoring.

──────────────────────────────
πŸ”‘ Authenticatie en Directory Services:
──────────────────────────────
β€’ **Authenticatieserver:**
Linux beveiligt gebruikers via een user ID en wachtwoord.
Deze gegevens worden opgeslagen in de **/etc/ shadow** (modern) of het verouderde **/passwd**-bestand.

β€’ **NIS (Network Information System):**
Directory service voor het delen van een gemeenschappelijke naamgevingsdirectory tussen clients en servers.
- NIS+ is een verbeterde versie met extra beveiligingsfuncties.
- Voorheen bekend als **Yellow Pages (YP)**, maar om juridische redenen hernoemd.

β€’ **Kerberos:**
Authenticatiesysteem op basis van symmetrische sleutelcryptografie.
Gebruikt een gecentraliseerde database om gebruikers te verifiΓ«ren, waarbij de volledige communicatie versleuteld blijft.

β€’ **LDAP (Lightweight Directory Access Protocol):**
Alternatief voor Microsoft Active Directory voor netwerkverificatie en toegangsbeheer.
- **OpenLDAP** is de meest gebruikte implementatie.
- Hiermee kun je een hiΓ«rarchische database ontwerpen om objecten te organiseren op type en locatie.

β€’ **Certificate Authority (CA):**
Wachtwoorden zijn kwetsbaar; een betere methode is certificaatgebaseerde authenticatie.
Twee-factor authenticatie (2FA) combineert:
πŸ”’ Iets wat je bezit (bijv. een certificaatbestand).
πŸ”‘ Iets wat je weet (bijv. een PIN-code).
Certificaatautoriteiten (CAs) valideren de authenticiteit van certificaten.
**OpenSSL** is een veelgebruikte tool voor certificaatbeheer op Linux-servers.

──────────────────────────────
🌐 Netwerkbeveiliging:
──────────────────────────────
β€’ **Secure Shell (SSH):**
Zorgt voor versleutelde communicatie tussen client en server.
Wordt vaak gebruikt voor veilige externe toegang tot Linux-servers.

β€’ **Virtual Private Network (VPN):**
CreΓ«ert een veilige tunnel voor externe netwerkverbindingen.
**OpenVPN** is een populaire VPN-oplossing voor Linux.

β€’ **Proxyserver:**
Interceptie en filtering van webverkeer binnen een lokaal netwerk.
Kan worden gebruikt om websites te blokkeren of inhoud in cache op te slaan.

Populaire Linux-proxyservers:
- **Squid:** Werkt als filter en cachingserver.
- **nginx:** Kan ook als webproxyserver fungeren.

──────────────────────────────
πŸ–₯️ Monitoring en Logbeheer:
──────────────────────────────
β€’ **Servermonitoring:**
Essentieel om de prestaties en logbestanden van een server in de gaten te houden.
- **Nagios** is een populaire monitoringtool voor Linux die SNMP gebruikt om serverprestaties en logbestanden te bewaken.
──────────────────────────────