Automatisch SSL-certificaten aanvragen en beheren met Let's Encrypt in ServBay
Voor moderne webontwikkeling is het essentieel om een productieomgeving zo goed mogelijk lokaal te simuleren, inclusief ondersteuning voor HTTPS. ServBay integreert het ACME-protocol (Automated Certificate Management Environment), waarmee je eenvoudig gratis SSL/TLS-certificaten kunt aanvragen, installeren en beheren bij een Certificate Authority (CA) zoals Let's Encrypt. In dit artikel lees je stap voor stap hoe je met Let's Encrypt certificaten uitreikt in ServBay en deze toepast op jouw lokale ontwikkelwebsite.
Voordelen van Let's Encrypt certificaten zijn: ze zijn gratis, volledig geautomatiseerd, breed vertrouwd en helpen je bij het testen van HTTPS-functionaliteiten, Service Workers, HSTS en meer in je lokale omgeving.
Vereisten
Voordat je een Let's Encrypt certificaat aanvraagt, zorg ervoor dat je aan onderstaande voorwaarden voldoet:
- Je beschikt over een publiek domein: Je hebt een geregistreerd en geldig domein nodig (zoals
servbay.demo
ofyourdomain.com
). Let's Encrypt geeft geen certificaten uit voor lokale IP-adressen of domeinen als.local
. - Je kunt de DNS-records van het domein beheren: ServBay gebruikt DNS API-verificatie voor domeineigendom. Dit betekent dat je toegang moet hebben tot het beheerpanel van je domein- of DNS-provider (zoals Cloudflare, GoDaddy, AWS Route 53) én de mogelijkheid om API-sleutels aan te maken voor geautomatiseerde acties.
- Verkrijg een DNS API-sleutel: Volgens de vereisten van je DNS-provider genereer je een bijbehorende API-sleutel of token. De manier verschilt per provider, maar meestal genereer je een API-sleutel met recht tot beheer van DNS-records. Raadpleeg de DNS API WIKI van het acme.sh-project voor instructies per provider, inclusief benodigde API-sleutels en omgevingsvariabele-namen.
Aanvraagprocedure
Stapsgewijze instructies voor het aanvragen van een SSL-certificaat via Let's Encrypt in ServBay:
Open het ServBay beheerpaneel: Start de ServBay-app en klik op het menupictogram. Selecteer "Beheerpaneel" om de webinterface te openen.
Navigeer naar SSL-certificaatbeheer: Zoek en klik in de zijbalk op
SSL-certificaten
(SSL Certificates).Start het aanvragen van een nieuw certificaat: Klik rechtsboven op de pagina met het overzicht van SSL-certificaten op de ronde “+”-knop. Hiermee verschijnt het venster voor het instellen van je certificaataanvraag.
Vul de certificaatgegevens in: In het pop-upvenster “Request Certificate” vul je de volgende velden in:
- Common Name (algemene naam): Geef een duidelijke herkenbare naam op, bijvoorbeeld
servbay-demo-cert
ofmydomain-wildcard-cert
. - Usage Purpose (doel): Selecteer
TLS/SSL
. - Request Method (aanvraagmethode): Kies
ACME
. - Issuer (uitgever): Selecteer
Let's Encrypt
. - DNS API Provider (DNS API-provider): Kies uit de lijst jouw DNS-provider (bijvoorbeeld
cloudflare
voor Cloudflare,godaddy
voor GoDaddy). - Algorithm (algoritme): Kies bij voorkeur
ECC
(Elliptic Curve Cryptography) met een sleutellengte van384
. ECC-certificaten bieden betere prestaties en veiligheid dan traditionele RSA-certificaten door een kleinere privésleutel. - E-Mail Address (e-mailadres): Vul een geldig e-mailadres in. Let's Encrypt stuurt hier notificaties naartoe over certificaatverval of verlengingsproblemen.
- DNS API Tokens (DNS API-tokens): Voer hier de API-sleutel of token van je DNS-provider in, meestal als omgevingsvariabelen. Raadpleeg de documentatie van je DNS-provider of de DNS API WIKI van acme.sh voor de correcte variabele-namen en waarden. Belangrijk: zet geen
export
voor de API-informatie. Voor Cloudflare bijvoorbeeld:CF_Key=sdfsdfsdffgfdg\nCF_Email=xxxx@example.com
(gebruik\n
als scheiding tussen variabelen). - Domain (domein): Geef het domein op waarvoor je het certificaat aanvraagt. Voor meerdere domeinen of een wildcard-certificaat (
*.servbay.demo
), scheid je de domeinen met een komma (bijvoorbeeld:servbay.demo, www.servbay.demo, *.servbay.demo
). Let op dat een wildcard-certificaat altijd DNS API-verificatie vereist.
Let op: in de schermafbeelding is de Common Name als Test ingevuld; gebruik in de praktijk een meer beschrijvende naam.
- Common Name (algemene naam): Geef een duidelijke herkenbare naam op, bijvoorbeeld
Dien de aanvraag in: Controleer je gegevens en klik onderaan het venster op de knop “Request” (Aanvragen).
Wacht op voltooiing: ServBay start nu op de achtergrond de ACME-client, die met jouw DNS API de domeineigendom verifieert en het certificaat bij Let's Encrypt aanvraagt. Dit duurt enkele minuten, afhankelijk van DNS-propagatie en de respons van Let's Encrypt. Na afloop zie je het nieuwe certificaat in je overzicht.
Certificaat gebruiken
Wanneer de aanvraag gelukt is en je certificaat in de lijst staat, kun je dit aan je lokale website koppelen:
- Navigeer naar Website-instellingen: Klik links in de ServBay-beheerinterface op
Websites
. - Bewerk de website-instellingen: Zoek de website waar je het certificaat wilt koppelen en klik op de bewerkknop (meestal een potloodpictogram).
- Configureer HTTPS/SSL: Zoek in het configuratiescherm de SSL/HTTPS-instellingen. Meestal kun je de bron van het certificaat selecteren.
- Selecteer het ACME-certificaat: Kies als bron
ACME
en selecteer in het dropdownmenu het zojuist aangevraagde certificaat op basis van de door jou gekozen Common Name. - Sla de configuratie op: Bevestig en sla de website-instellingen op. ServBay laadt nu de nieuwe configuratie, waarna je je site via HTTPS kunt bezoeken.
Schermafbeelding van het selecteren van een ACME-certificaat in de websiteconfiguratie.
Certificaat verlengen
Let's Encrypt-certificaten zijn 90 dagen geldig. ServBay bevat een automatische verlengingsservice: als je ACME-certificaat binnen 30 dagen verloopt, probeert ServBay automatisch met dezelfde configuratie de verlenging uit te voeren. Je hoeft zelf niets te doen. Zorg er wel voor dat je DNS API-sleutel geldig blijft om een soepele verlenging te garanderen. Indien er bij verlenging iets misgaat, ontvang je een bericht van Let's Encrypt op het opgegeven e-mailadres.
Over ACME-protocol en DNS API-verificatie
- ACME-protocol: Dit open protocol automatiseert domeinvalidatie en de uitgifte van SSL/TLS-certificaten. Let's Encrypt en andere CAs communiceren via ACME met clients zoals die in ServBay, waardoor beheer en uitgifte volledig geautomatiseerd verlopen.
- DNS API-verificatie: Bij deze verificatiemethode plaatst de client via een DNS API een specifieke TXT-record in je DNS-zone. De CA controleert zo of je het domein beheert. DNS API-verificatie is vooral geschikt voor:
- Uitgifte van wildcard-certificaten (zoals
*.servbay.demo
). - Situaties waarbij je lokale ServBay-installatie niet publiek bereikbaar is (bijvoorbeeld achter NAT of geblokkeerde poorten 80/443).
- Uitgifte van wildcard-certificaten (zoals
Certificaatsalgoritme kiezen: ECC of RSA
Bij het aanvragen laat ServBay je kiezen tussen ECC en RSA als versleutelingsalgoritme:
- RSA: Traditioneel asymmetrisch algoritme, maximaal compatibel met oude browsers en clients. Veelgebruikte sleutellengtes zijn 2048 of 4096 bits.
- ECC: Elliptische kromming-cryptografie, biedt vergelijkbare (of betere) beveiliging met veel kortere sleutels. ECC 256-bit is vergelijkbaar met RSA 3072-bit. Dit versnelt TLS-handshakes en vermindert de belasting voor server en client. Moderne browsers en OS'en ondersteunen ECC vrijwel altijd.
Advies: Voor nieuwe aanvragen bevelen wij ECC met een 384-bits sleutel aan — dit is sneller en veiliger. Heb je maximale compatibiliteit nodig (bijvoorbeeld legacy-clients), dan kun je RSA kiezen.
Belangrijke aandachtspunten
- DNS-propagatie: De wijziging van een DNS TXT-record kan enige tijd duren (meestal minuten tot uren). Lukt de aanvraag niet direct, probeer het later nogmaals.
- Veilig omgaan met API-sleutels: De DNS API-sleutel kan DNS-records van je domein aanpassen. Behandel deze vertrouwelijk en deel niet met derden.
- Let's Encrypt rate limits: Let's Encrypt hanteert aanvraaglimieten. Frequent aanvragen of verlengen voor hetzelfde domein kan tot (tijdelijke) blokkering leiden. Bij regulier gebruik en automatische verlenging via ServBay is er doorgaans geen probleem.
Veelgestelde vragen (FAQ)
- Vraag: Mijn domein wijst naar een lokaal IP-adres. Kan ik Let's Encrypt-certificaten gebruiken?
- Antwoord: Ja, mits je DNS API-verificatie gebruikt. Let's Encrypt controleert alleen of je het DNS van het domein beheert, niet of het domein publiek resolvable is.
- Vraag: Aanvraag van certificaat mislukt, wat nu?
- Antwoord: Controleer of de DNS API-sleutel correct is en de juiste rechten heeft. Verify ook of je de juiste DNS API-provider hebt gekozen. Soms moet je enkele minuten wachten wegens DNS-propagatie. Raadpleeg ServBay-logboeken voor meer details.
- Vraag: Wanneer verlengt ServBay het certificaat automatisch?
- Antwoord: Gewoonlijk start ServBay het verlengingsproces 30 dagen voor het verlopen van het certificaat.
- Vraag: Kan ik een certificaat voor een
.local
domein aanvragen?- Antwoord: Nee, Let's Encrypt geeft alleen certificaten uit voor publieke domeinen. Voor
.local
adressen of lokale IP's kun je ServBay User CA of ServBay Public CA gebruiken om zelfondertekende of lokaal uitgereikte certificaten te maken.
- Antwoord: Nee, Let's Encrypt geeft alleen certificaten uit voor publieke domeinen. Voor
- Vraag: Mijn DNS-provider staat niet in de ServBay-lijst. Wat nu?
- Antwoord: De geïntegreerde ACME-client ondersteunt vrijwel alle grote DNS-providers. Voor minder bekende providers is soms handmatige configuratie vereist. Controleer in de DNS API WIKI van acme.sh of je provider wordt ondersteund en hoe je deze instelt. Staat hij niet in de UI, neem dan contact op met ServBay-support.
Samenvatting
Dankzij integratie van het ACME-protocol vereenvoudigt ServBay het verkrijgen en beheren van Let's Encrypt SSL-certificaten in de lokale ontwikkelomgeving ingrijpend. Via DNS API-verificatie vraag je moeiteloos gratis, automatisch verlengbare certificaten aan voor je publieke (sub)domeinen, inclusief wildcards. Dit maakt het mogelijk om productie-HTTPS-configuratie realistisch lokaal te simuleren, waardoor je ontwikkel- en testwerk nauwkeuriger en efficiënter wordt. Volg de stappen in dit artikel en je schakelt snel veilige verbindingen in voor je ServBay-site.