SSL certifikáty jsou notoricky matoucí pro nastavení v Linuxu, a proto se tolik lidí vyhýbá nastavení HTTPS na svých webových stránkách. Naštěstí se to služba Let’s Encrypt pokouší změnit tím, že nastavení SSL v Linuxu je jednoduchý proces, kterému rozumí téměř každý. Ke snadnému nastavení certifikátů SSL můžete použít Let’s Encrypt with Apache na serveru Ubuntu.
Let’s Encrypt je na Linuxu navždy zdarma. Za jeho používání nebudete muset nic platit. Jediný problém je, že certifikáty nevydrží věčně. Místo toho vyžaduje, aby uživatelé obnovovali a obnovovali svůj certifikát SSL každých 90 dní.
Software Let’s Encrypt má podporu pro oba hlavní webové motory na platformě Linux (Apache a Nginx). V tomto tutoriálu se podíváme na to, jak získat a nastavit certifikát Let’s Encrypt SSL pro použití Let’s Encrypt with Apache na serveru Ubuntu.
Poznámka: Let’s Encrypt podporuje všechny operační systémy Linux. Pokud nepoužíváte server Ubuntu, klikněte zde a zjistěte, jak jej můžete nastavit na alternativním serverovém operačním systému.
Table of Contents
Získání Certbota
Let’s Encrypt je v Linuxu většinou automatický proces díky nástroji Certbot. Díky tomu budete moci na svém serveru Ubuntu rychle získat certifikaci SSL.
Certbot nepřichází se serverem Ubuntu. Abyste jej mohli používat, musíte aktivovat softwarové úložiště třetích stran (PPA) a nainstalovat jej tímto způsobem. Než se však pokusíte přidat nový PPA, mějte na paměti: ne každá verze serveru Ubuntu má podporu PPA ihned po vybalení. Chcete-li získat přístup k PPA na Ubuntu, musíte nainstalovat software-properties-common.
sudo apt install software-properties-common
Poté, když je balíček „software-properties-common“ spuštěn a spuštěn, zadejte níže uvedený příkaz a povolte úložiště Certbot na Ubuntu.
sudo add-apt-repository ppa:certbot/certbot
Po spuštění příkazu add-apt-repository by měl PPA fungovat. Dále aktualizujte zdroje softwaru serveru Ubuntu pomocí příkazu update, aby byl Certbot PPA přístupný.
sudo apt update
S aktuálními zdroji softwaru Ubuntu nainstalujte balíček Certbot pomocí Apt.
sudo apt install python-certbot-apache
Povolit provoz HTTPS
Let’s Encrypt umožňuje uživatelům rychle nastavit SSL certifikát na Linuxu, takže uživatelé nemusí řešit vše ručně. Jednou z věcí, které je třeba udělat pro použití této služby, je povolit HTTPS provoz pro Apache 2 na serveru.
Chcete-li povolit přenos HTTPS na webovém serveru Apache, ujistěte se, že je spuštěna a spuštěna brána Ubuntu Firewall. Poté pomocí příkazů UFW níže povolte provoz HTTPS.
Poznámka: Firewall neběží? Povolte sudo ufw a poté restartujte.
sudo ufw allow 'Apache Full'
Pokud je příkaz UFW úspěšný, měl by být aktivován HTTPS. Spuštěním příkazu ufw status můžete zkontrolovat stav brány firewall, abyste se ujistili, že funguje.
sudo ufw status
Vygenerujte SSL certifikát
Server Ubuntu je nastaven tak, aby používal SSL, a je nainstalován Certbot. V tuto chvíli můžeme pomocí programu Certbot vygenerovat zcela nový certifikát SSL pro webový server Apache.
Chcete-li pomocí Certbotu vygenerovat nový certifikát SSL, spusťte certbot pomocí přepínače příkazového řádku Apache. Mějte na paměti, že tento certifikát bude fungovat pouze v případě, že doména uvedená v příkazu odpovídá konfiguračnímu souboru vašeho webu v /etc/apache2/sites-available/.
Poznámka: Nezapomeňte změnit adresy mywebsite.com a www.mywebsite.com v příkazu Certbot na název domény vašeho webu.
sudo certbot --apache -d mywebsite.com -d www.mywebsite.com
Za předpokladu, že je příkaz Certbot úspěšný, zobrazí se textová výzva s dotazem na nastavení Apache. Přečtěte si výzvu a vyberte volbu, která nejlépe vyhovuje vašim potřebám. Když přejdete z výzvy, váš certifikát SSL je připraven!
Obnovení vašeho SSL certifikátu
SSL certifikáty Let’s Encrypt vyprší po 90 dnech, takže pokud je plánujete používat pro svůj web, je nutné obnovení. Naštěstí program Certbot přichází s automatickou úlohou Cron, která to udělá za vás.
Skript Cron pro automatické obnovení se nachází v /etc/cron.d/ na vašem serveru a můžete jej zobrazit tak, že
Ruční obnova
Díky automatickému obnovovacímu skriptu pro Let’s Encrypt by měl mít váš server Apache vždy SSL certifikát. Někdy však mohou nastat problémy, takže je dobré vědět, jak obnovit SSL certifikát ručně.
Chcete-li obnovit svůj certifikát SSL pomocí Apache na serveru Ubuntu, otevřete okno terminálu, zadejte SSH a postupujte podle níže uvedených kroků.
Krok 1: Spusťte příkaz certbot renew pomocí příkazového přepínače suchého spuštění. To vám umožní provést obnovení praxe, což vám umožní izolovat problémy a zajistit, aby proces fungoval.
sudo certbot renew --dry-run
Krok 2: Za předpokladu, že „suchý běh“ proběhl dobře, je bezpečné skutečně spustit příkaz k obnovení Certbotu. V terminálu spusťte certbot renew, ale bez přepínače „dry-run“.
sudo certbot renew
Pokud příkaz pro obnovení funguje úspěšně, váš certifikát SSL bude opět aktivní.