Je bepaalt welke diensten wij mogen inschakelen voor analyse, personalisatie en externe inhoud.
We gebruiken cookies en vergelijkbare technologieën op onze website om inhoud te personaliseren, externe media te integreren en het gebruik van afzonderlijke onderdelen beter te begrijpen.
Noodzakelijke cookies
Deze vermeldingen waarborgen basisfuncties zoals beveiliging, stabiliteit en formulierverwerking.
Optionele secties
AnalysesMarketingPersonalisatieExterne media
Gegevensverwerking kan plaatsvinden met je toestemming of op basis van gerechtvaardigde belangen. In de cookie-instellingen kun je elke optionele categorie weigeren of afzonderlijk toestaan.
Sommige diensten verwerken persoonsgegevens in derde landen. Met je toestemming accepteer je ook deze doorgifte. Meer informatie vind je in onze privacyverklaring.
Je kunt je selectie later op elk moment opnieuw openen en aanpassen. · 1.0.2
Certbot instellen op een Linux-server – Beveilig je websites met Let's Encrypt SSL
Ontdek hoe je je website beveiligt met gratis SSL-certificaten via Certbot en Let's Encrypt voor veilige gegevensoverdracht → Lees nu meer
10 november 20266 min leestijd4 Weergaven0 nuttig
Inleiding
SSL-certificaten zijn een essentieel onderdeel van het internet en zorgen ervoor dat gegevens veilig tussen client en host worden verzonden. In deze handleiding laten we je zien hoe je de open-source tool Certbot instelt om gratis SSL-certificaten aan te vragen bij de non-profit certificeringsinstantie Let's Encrypt.
FAQ
Veelgestelde vragen
Je hebt een Linux-server en een eigen domein met toegang tot de DNS-instellingen nodig. Voor elke rootdomein of subdomein moet je een A-DNS-record aanmaken dat verwijst naar het IP-adres van je Linux-server.
Gebruik het commando sudo apt install certbot.
Certbot is een open-source tool waarmee je gratis SSL-certificaten kunt aanvragen bij de non-profit certificeringsinstantie Let's Encrypt.
Nginx wordt aanbevolen omdat het een krachtige en populaire open-source webserver is. Hulp bij de installatie vind je in de Linux Reverse Proxy handleiding.
Feedback
Was dit artikel nuttig?
Je feedback helpt ons inhoud beter te prioriteren en te verbeteren.
0 van 0 Gebruikers vonden dit artikel nuttig.
Persoonlijke hulp
Is de handleiding niet voldoende?
Onze ZAP-support kent je product — beschrijf kort je vraag en wij helpen je persoonlijk verder.
Navigatie
Software
Voorbereiding
Om Certbot te kunnen gebruiken, heb je een Linux-server en een domein dat van jou is nodig. Je moet toegang hebben tot de DNS-instellingen van het domein en je moet voor elke rootdomein of subdomein die je wilt gebruiken een A DNS-record aanmaken dat verwijst naar het IP-adres van je Linux-server.
Certbot biedt ook extra plugins waarmee je certificaten voor domeinen met één klik kunt instellen – compatibel met verschillende webservers zoals Nginx of Apache. Wij raden Nginx aan, omdat het een krachtige en populaire open-source webserver is. Hulp bij de installatie vind je in onze Linux Reverse Proxy handleiding.
Installatie
Begin met het installeren van het open-source pakket Certbot, waarmee je gratis SSL-certificaten van Let's Encrypt kunt aanvragen.
Code
sudo apt install certbot
Nadat Certbot is geïnstalleerd, kun je certificaten voor je domein(en) aanvragen. Let's Encrypt en Certbot bieden verschillende ACME-uitdagingen om het eigendom van het domein te verifiëren.
Wij raden sterk de standaardmethode HTTP-01 aan, omdat deze automatische verlengingen mogelijk maakt. Als je hiermee problemen hebt, kun je als alternatief de DNS-01 methode gebruiken, die handmatig is en geen automatische verlenging ondersteunt, omdat deze gebaseerd is op verificatie via een TXT DNS-record.
Tip
Gebruik webserver-plugins
Als je een webserver zoals Nginx, Apache of je eigen webserver gebruikt, raden we je aan direct naar de sectie Webserver-plugins hieronder te gaan. Daar laten we zien hoe je extra Certbot-plugins voor deze webservers gebruikt om een "One-Click" installatie te doen en certificaten aan te vragen zonder de webserver te hoeven stoppen.
HTTP-01 Challenge
Met Certbot geïnstalleerd kun je nu certificaten voor je domein(en) aanvragen. In dit voorbeeld gebruiken we de standalone-modus, waarbij Certbot een tijdelijke webserver start om de benodigde acties uit te voeren. Dit betekent dat je poort 80 in je firewall moet openen en dat er geen andere webservers of diensten op poort 80 mogen draaien, zodat de tijdelijke webserver kan starten en de challenge kan worden opgehaald (vandaar de naam HTTP in de challenge).
In het volgende commando gebruik je de parameter --standalone om Certbot te vertellen dat je de tijdelijke webserver wilt gebruiken.
Na het uitvoeren van het commando word je mogelijk door een eerste interactieve installatie geleid, waarbij je een e-mailadres voor certificaatcommunicatie moet invoeren, gevolgd door een optionele mailinglijst en de algemene voorwaarden die je moet accepteren.
Certbot genereert nu een ACME-challenge en host deze via de tijdelijke webserver. De Let's Encrypt-servers proberen deze vervolgens van jouw server op te halen. Bij succes worden de certificaten aangemaakt en opgeslagen onder /etc/letsencrypt/live/[jouw_domein].
Je kunt de SSL-certificaten nu overal gebruiken waar je ze nodig hebt door simpelweg het lokale pad naar de certificaten op te geven.
TXT DNS-record
Als je problemen hebt met het verifiëren van je domein via de HTTP-01 methode, kun je als alternatief de DNS-01 methode gebruiken, waarbij je een TXT DNS-record moet aanmaken met een door Let's Encrypt opgegeven waarde.
Zoals eerder vermeld, ondersteunt deze methode geen automatische verlenging, tenzij je je eigen infrastructuur hiervoor opzet. Daarom raden we aan, indien mogelijk, de HTTP-01 methode te gebruiken.
In het volgende commando gebruik je de parameter --preferred-challenges om Certbot te vertellen dat je de DNS-01 methode wilt gebruiken.
Na het uitvoeren van het commando word je mogelijk door een eerste interactieve installatie geleid, waarbij je een e-mailadres voor certificaatcommunicatie moet invoeren, gevolgd door een optionele mailinglijst en de algemene voorwaarden die je moet accepteren.
Certbot geeft je nu instructies over hoe je een TXT DNS-record met een specifieke waarde moet aanmaken. De doel-hostnaam is typisch _acme-challenge. gevolgd door je domein (in dit voorbeeld zou dat _acme-challenge.zapdocs.example.com zijn). De waarde vind je in de console.
Nadat je het record hebt aangemaakt, druk je op Enter om door te gaan. Als alles correct is en het record is verspreid, worden de certificaten aangemaakt en opgeslagen onder /etc/letsencrypt/live/[jouw_domein].
Info
Heb geduld, want DNS-wijzigingen kunnen soms even duren om zich te verspreiden. Meestal duurt dit slechts enkele minuten, in zeldzame gevallen kan het langer zijn.
Je kunt de SSL-certificaten nu overal gebruiken waar je ze nodig hebt door simpelweg het lokale pad naar de certificaten op te geven.
Webserver-plugins
Certbot biedt verschillende extra webserver-plugins die het certificaatbeheer nog eenvoudiger maken, omdat de plugins automatisch de relevante serverblokken aanpassen. Om een plugin te gebruiken, voeg je gewoon de juiste parameter toe aan je certbot commando.
Beide methoden gebruiken de HTTP-01 challenge en werken in principe hetzelfde. Wanneer een van de plugins wordt gebruikt, zoekt Certbot eerst het serverblok dat de gevraagde domeinnaam als server_name bevat. Vervolgens genereert Certbot een ACME-challenge en voegt tijdelijk een location /.well-known/acme-challenge/... blok toe aan de serverblokconfiguratie.
De Let's Encrypt-servers proberen dan de challenge van jouw server op te halen. Bij succes wordt je certificaat aangemaakt en wordt de serverblokconfiguratie van de webserver automatisch aangepast om HTTPS (poort 443) te gebruiken en de paden naar de nieuwe certificaten in te voeren.
Nginx Plugin
Zorg ervoor dat het plugin is geïnstalleerd voordat je het gebruikt.
Code
sudo apt install python3-certbot-nginx
Om het Nginx-plugin te gebruiken, gebruik je de parameter --nginx in je commando zoals hieronder.
Als je automatische "One-Click" aanpassingen van serverblokken door Certbot wilt uitschakelen, kun je de parameter certonly toevoegen, bijvoorbeeld certbot certonly.
Apache Plugin
Zorg ervoor dat het plugin is geïnstalleerd voordat je het gebruikt.
Code
sudo apt install python3-certbot-apache
Om het Apache-plugin te gebruiken, gebruik je de parameter --apache in je commando zoals hieronder.
Als je automatische "One-Click" aanpassingen van serverblokken door Certbot wilt uitschakelen, kun je de parameter certonly toevoegen, bijvoorbeeld certbot certonly.
Webroot Plugin
Als je je eigen lokale webserver draait die geen traditionele webserversoftware gebruikt, wil je misschien de webroot-methode gebruiken om je webserver te laten draaien zonder deze te hoeven stoppen.
Om het webroot-plugin te gebruiken, gebruik je de parameter --webroot in je commando. Daarnaast moet je het pad naar je webserver root directory opgeven met -w [jouw_webserver_pad] (kort voor --webroot-path).
Een veelgebruikt webroot-pad is /var/www/html. Je kunt deze methode ook gebruiken voor webservers zoals Nginx of Apache als je de webserver wilt laten draaien zonder automatische serverblok-aanpassingen zoals bij de native plugins.
Automatische verlenging
In de meeste gevallen stelt Certbot de automatische verlenging van certificaten voor je in – via een cronjob of een systemd-timer. Je kunt dit testen met het volgende commando, dat een droge run van de verlenging simuleert:
Code
certbot renew --dry-run
Tip
Zoals eerder vermeld, ondersteunt de DNS-01 methode geen automatische verlenging via Certbot, tenzij je je eigen infrastructuur hiervoor opzet. Daarom raden we aan, indien mogelijk, de HTTP-01 methode te gebruiken.
Als alles werkt zoals verwacht, zou de test succesvol moeten zijn. Wil je de automatische verlenging controleren of aanpassen, dan vind je de bijbehorende cronjob of timer in /etc/crontab/, /etc/cron.*/* of via systemctl list-timers.
Handmatige cronjob-instelling
Als de automatische verlenging niet is ingesteld, kun je deze zelf aanmaken via een cronjob. Open hiervoor de crontab met crontab -e. Als je dit voor het eerst doet, word je gevraagd een editor te kiezen – kies de eerste optie /bin/nano.
Voeg in de geopende Nano-editor de volgende regel toe om de verlenging dagelijks om 6 uur 's ochtends lokaal uit te voeren:
Code
0 6 * * * certbot renew
Sla het bestand op en sluit Nano af met CTRL + X, bevestig met Y en druk op ENTER.
Afsluiting
Je hebt Certbot succesvol ingesteld voor je domein(en) – of het nu in standalone-modus, via webroot of met een van de plugins is – en zorgt zo voor veilige gegevensoverdracht via HTTPS op je website. Bij vragen of problemen staat ons supportteam dagelijks voor je klaar! 🙂
Serverhosting vanaf € 2,49 / maand, direct online, inclusief DDoS-bescherming.