Introductie
In deze tutorial leer je hoe je TLS / SSL-certificaten op de Nginx-webserver op Debian 9 Stretch kunt installeren. Wanneer je klaar bent, wordt al het verkeer tussen de server en de client versleuteld en beveiligd. Dit is een standaard handeling voor het online beveiligen van e-commerce websites en andere financiële diensten.
Vereisten
Voordat je begint heb je het volgende nodig.
- SSH toegang met root rechten of een gebruiker met sudo rechten
- De nginx-webserver waarop correct een domein en vhost zijn geconfigureerd
Stap 1: Installatie Let’s Encrypt certbot
De eerste stap om Let’s Encrypt te gebruiken om een SSL-certificaat te verkrijgen, is door de certbot Let’s Encrypt-client op jouw server te installeren. Voer het volgende uit om de te installeren
sudo apt-get install certbot
Stap 2: Creëer en installeer de SSL-certificaten)
Certbot zal het SSL-certificaatbeheer vrij gemakkelijk afhandelen, het zal een nieuw certificaat voor een verstrekt domein als een parameter genereren. In dit geval wordt example.com gebruikt als het domein waarvoor het certificaat wordt uitgegeven:
sudo certbot certonly --webroot -w /var/www/example -d example.com -d www.example.com
BELANGRIJK! Het eerste domein moet uw basisdomein zijn, in dit voorbeeld is dit example.com Tijdens de installatie van het certificaat krijg je een stapsgewijze handleiding te zien waarin je de certificaatgegevens kunt aanpassen. Je kunt kiezen tussen HTTPS forceren of HTTP als standaardprotocol opgeven, op voorwaarde dat een e-mailadres wordt gebruikt ( vereist voor veiligheidsdoeleinden). Je kunt dit ook doen met de automatische installatie van de certbot door het uitvoeren van:
sudo certbot --authenticator webroot --installer nginx
Stap 3: Controleer de configuratie van het SSL-certificaat (en)
In de vorige stappen worden jouw certificaten aangemaakt en geconfigureerd. Controleer nu of jouw domain virtualhost configuratiebestand met de ssl zoals hieronder is. Zo niet, plaats deze dan handmatig in de ssl-configuratie van virtualhosts:
... listen 443 ssl http2; listen [::]:443 ssl http2; server_name example.com www.example.com ssl_certificate /etc/letsencrypt/live/<your-domain>/cert.pem ssl_certificate_key /etc/letsencrypt/live/<your-domain>/privkey.pem ...
Nu gaan we testen of het goed werkt- nginx -t Start ten slotte Nginx opnieuw op en je kunt zien dat uw SSL werkt.
sudo systemctl reload nginx
Stap 4: Instellingen voor de automatische verlenging
De Certbot-pakketten op jouw systeem worden geleverd met een cron-job die jouw certificaten automatisch verlengt voordat ze verlopen. Omdat Let’s Encrypt-certificaten 90 dagen duren, is het ten zeerste aan te raden om van deze functie gebruik te maken. Je kunt automatische verlenging van uw certificaten testen door deze opdracht uit te voeren:
sudo certbot renew --dry-run
Conclusie
Gefeliciteerd, je hebt zojuist jouw Nginx-webserver beveiligd door de meest gebruikte beveiligingsfunctie te implementeren. Vanaf nu is al het verkeer tussen jouw domeinwebserver en de client beveiligd, je kunt er zeker van zijn dat niemand de communicatie kan onderscheppen en cruciale informatie kan wijzigen of stelen.
Geef een reactie