SSL encryption met LetsEncrypt
Voor een veilige verbinding met je NextCloud server is SSL codering noodzakelijk. Een paar jaar geleden werd het bedrijf LetsEncrypt opgericht zodat iedereen in staat is om een gratis certificaat te verkrijgen. Dit is nodig om de datacommunicatie via internet naar je NextCloud server te beveiligen.
Vereist voor het installeren van SSL gecodeerde toegang tot je site is een eigen domein. Ga naar een serviceprovider waarmee u een domein kunt aanvragen en hosting diensten kan huren. Er zijn vele bedrijven die dergelijke diensten leveren. Zorg ervoor dat u de DNS-eigenschappen van het domein zelf kunt instellen. Met een dergelijk domein kunt u ook uw domein verbinden met uw eigen IP-adres verkregen van uw internet provider. Deze mogelijkheid betekent ook dat u de eigenaar bent van het domein dat vereist is voor LetsEncrypt om u een certificaat te geven. Ervan uitgaande dat dit allemaal correct is ingesteld, kunnen we doorgaan met de configuratie.
Bij je hosting provider dienen het A-Record en AAAA-Record voorzien te worden van de adressen van je huisaansluiting waarvoor het certificaat word aangevraagd. Verder dient het domein yourdomain.com zonder “www” gebruikt te worden. Het subdomein www van yourdomain.com, dus www.yourdomain.com, kan bij de hosting provider naar de zelfde INv4 en IPv6 adressen worden geleid als yourdomain.com. Op de router dienen de poorten 80 en 443, van zowel het IPv4 als het IPv6 adres, geforward te worden naar het ingestelde IP van de aangesloten server.
Het installatieproces van het certificaat op uw server wordt ondersteund door een script genaamd Certbot. Dit script zorgt voor alle vereiste acties om een certificaat op uw server te verkrijgen en te installeren, inclusief het bijwerken van het certificaat elke drie maanden, geweldig!
Configuratie van LetsEncrypt
Installeer Certbot:
sudo snap install –classic certbot
Start aanvraag voor een certificaat:
sudo certbot
Geef een e-mailadres en het domein op. wanneer twee varianten van het domein worden gevraagd, met www en zonder www, kies dan voor beide. Kies ervoor een certificaat aan te vragen voor zowel yourdomain.com als www.yourdomain.com. Beantwoord de verdere vragen. Het certificaat wordt geïnstalleerd.
Om te kijken welke certificaten op het systeem aanwezig zijn:
sudo certbot certificates
Aanpassen van Apache configuratie
Voor het verbeteren van de beveiliging van de NextCloud site is het nodig aanpassingen te doen van de SSL – of site – configuratie van Apache:
sudo nano /etc/apache2/sites-available/nextcloud-le-ssl.conf
Voeg de volgende regels toe na de ServerName en/of ServerAlias regels:
<IfModule mod_headers.c> Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains" </IfModule>
Vervolgens zorgen we ervoor dat port 80 wordt doorgeleid naar poort 443. Open de http file:
sudo nano /etc/apache2/sites-available/nextcloud.conf
Juist onder alias www.yoursite.com voeg de volgende regel toe:
Redirect permanent / https://yoursite.com/
en sla de wijzigingen op. Dan herstart Apache:
sudo systemctl reload apache2
Na dit kan de server worden gevonden door yoursite.com of www.yoursite.com
Controleren van de beveiliging van de NextCloud website
Met de volgende sites kan je je NextCloud site controleren op juiste configuratie:
https://observatory.mozilla.org
https://www.ssllabs.com/ssltest/index.html
Laatst Bijgewerkt op 13 juni 2024.