Let's Encrypt je certifikační autorita, která nabízí jednoduchou cestu k vytvoření a instalaci TLS/SSL certifikátu. Proces se zjednodušuje použitím klienta Certbot, který automatizuje většinu, ne-li všechny, potřebné kroky.
Pro následující kroky bude potřeba:
- Ubuntu 16.04 server a sudo "non-root" uživatele.
- Doménu - např "mojedomena.cz".
- Nastavené DNS záznamy pro váš server.
- Záznam "A" s "mojedomena.cz" mířeným na veřejnou adresu vašeho serveru.
- Záznam "A" s "www.mojedomena.cz" mířeným na veřejnou adresu vašeho serveru.
- Nainstalovaný Apache2.
1. Instalace Certbot klienta
První krok k použití Let's Encrypt k vytvoření SSL certifikátu je mít nainstalovaný Certbot na vašem serveru. Certbot je velmi aktivně vyvíjen, takže balíčky které nabízí ubuntu jsou často zastaralé. Proto přidáme adresář od vývojářu kde se nachází aktuální balíčky.
Přidáme adresář
sudo add-apt-repository ppa:certbot/certbot
Aktualizujeme seznam balíčků.
sudo apt-get update
Nyní můžeme nainstalovat Certbot Apache balíček
sudo apt-get install python-certbot-apache
Certbot je nyní připavený k použití.
2. Získání SSL Certifikátu
Generování SSL certifikátu pro Apache je trochu přímočaré. Klient automaticky získá nový SSL certifikát pro jeho doménu. Pro získání certifikátu jednodušše můžeme použít certbot příkaz.
sudo certbot --apache -d mojedomena.cz
Pokud chtete používat jeden cerfifikát pro více domén nebo subdomén, můžete použít další parametry k příkazu.
sudo certbot --apache -d mojedomena.cz -d www.mojedomena.cz
Poté vás certbot bude provázet krok za krokrem návodem pro přizpůsobení cerfitikátu. Certbot se zeptá na e-mailovou adresu kam bude odesílat upozornění. Navíc si můžete vybrat mezi zapnutí http a https přístupu nebo všechny požadavky přesměrovat na https. Vyskočí nám oznámení že je instalace certifikátu hotová, taktéž se tu bude necházet i informace o umístění certifikátu.
3. Nastavení automatického obnovování certifikátu
SSL certifikát je platný pouze na 90 dnů. Poté ho budeme muset obnovit. Pro automatické obnovování můžeme použít službu "cron". Otevřeme si konfigurační soubor pro "cron" příkazem
sudo crontab -e
Vybereme editor pro použití a na poslední řádek konfiguračního souboru přídáme řádek
15 3 * * * /usr/bin/certbot renew --quiet
Tento řádek nám každy den ve 3:15 obnoví certifikát.
Petr Heralecký
26.04.2020 18:14:06
Pokouším se o instalace certbota, ale nedaří se mi to viz tento error: https://ibb.co/GTCQNdc tzn nemůžu potom spustit příkaz `certbot ...` protože ho server nezná.
Michal Švarc
19.07.2020 09:40:09
Pri instalaci jsem narazil na dvě chyby. První: Po zadání repozitáře, 'apt-get update' tvrdí že, 'Ign: 1 http://ppa.launchpad.net/certbot/certbot/ubuntu focal InRelease Err: 2 http://ppa.launchpad.net/certbot/certbot/ubuntu focal Release 404 Not Found [IP: 2001:67c:1560:8008::15 80]' Druhá: apt-get install python-certbot-apache neexistuje, můžete zkusit použít 'apt-get install python3-certbot-apache' Vlastně mám i třetí, ale tam asi půjde o mé chybné nastavení DNS
Matěj Kmínek
05.08.2020 13:31:56
Co takhle nějaké DNS api? Pokud by existovalo, bylo by možné certbot naučit automaticky obnovovat i wildcard certifikáty *.domena.cz