GNU/Linux >> Znalost Linux >  >> Debian

Generujte SSL certifikáty pomocí LetsEncrypt na Debian Linuxu

Úvod

V případě, že jste si to ještě neuvědomili, je důležité šifrování. Pro web to znamená použití SSL certifikátů k zabezpečení webového provozu. Mozilla a Google nedávno zašly tak daleko, že označily stránky bez certifikátů SSL za nezabezpečené ve Firefoxu a Chrome.

Aby byl web zrychlen se šifrováním, Linux Foundation spolu s Electronic Frontier Foundation a mnoha dalšími vytvořili LetsEncrypt. LetsEncrypt je projekt navržený tak, aby uživatelům umožnil přístup k bezplatným SSL certifikátům pro jejich webové stránky. K dnešnímu dni vydal LetsEncrypt miliony certifikátů a je ohromným úspěchem.

Použití LetsEncrypt je v Debianu snadné, zvláště když používáte nástroj Certbot z EFF.

Operační systém

  • OS :Debian Linux
  • Verze :9 (roztažení)

Instalace pro Apache

Certbot má specializovaný instalační program pro server Apache. Debian má tento instalační program k dispozici ve svých repozitářích.

# apt install python-certbot-apache

Balíček obsahuje certbot příkaz. Plugin Apache se propojuje se serverem Apache, aby zjistil informace o vašich konfiguracích a doménách, pro které generuje certifikáty. Výsledkem je, že generování vašich certifikátů vyžaduje pouze krátký příkaz.

# certbot --apache

Certbot vygeneruje vaše certifikáty a nakonfiguruje Apache, aby je používal.

Instalace pro Nginx

Nginx vyžaduje trochu více manuální konfigurace. Pak znovu, pokud používáte Nginx, pravděpodobně jste zvyklí na ruční konfigurace. V každém případě je Certbot stále k dispozici ke stažení prostřednictvím repozitářů Debianu.

# apt install certbot

Plugin Certbot je stále ve verzi alfa, takže jeho použití se opravdu nedoporučuje. Certbot má další nástroj zvaný „webroot“, který usnadňuje instalaci a údržbu certifikátů. Chcete-li získat certifikát, spusťte níže uvedený příkaz a uveďte svého webového kořenového adresáře a všechny domény, které chcete certifikátem pokrýt.

# certbot certonly --webroot -w /var/www/site1 -d site1.com -d www.site1.com -w /var/www/site2 -d site2.com -d www.site2.com 

Jedním příkazem můžete použít jeden certifikát pro více domén.

Nginx nerozpozná certifikáty, dokud je nepřidáte do své konfigurace. Všechny certifikáty SSL musí být uvedeny v server blokovat pro jejich příslušné webové stránky. V tomto bloku musíte také určit, že server musí naslouchat na portu 443 a použijte SSL.

server { poslouchat 443 default ssl; # Váš # Other ssl_certificate /path/to/cert/fullchain.pem ssl_certificate_key /path/to/cert/privkey.pem # Config # Lines}

Uložte konfiguraci a restartujte Nginx, aby se změny projevily.

# systemctl restart nginx

Automatické obnovení pomocí Cronu

Ať už používáte Apache nebo Nginx, budete muset obnovit své certifikáty. Zapamatovat si to může být bolestné a rozhodně nechcete, aby propadly. Nejlepší způsob, jak zvládnout obnovu vašich certifikátů, je vytvořit úlohu cron, která se spouští dvakrát denně. Doporučuje se obnovování dvakrát denně, protože chrání před propadnutím certifikátů z důvodu zrušení, k čemuž čas od času může dojít. Aby bylo jasno, ve skutečnosti se neobnovují pokaždé. Nástroj zkontroluje, zda jsou certifikáty zastaralé nebo budou do třiceti dnů. Obnoví je pouze v případě, že splňují kritéria.

Nejprve vytvořte jednoduchý skript, který spustí nástroj pro obnovení Certbot. Pravděpodobně je dobrý nápad umístit jej do domovského adresáře vašeho uživatele nebo do adresáře skriptů, aby nebyl obsluhován.

#! /bin/bashcertbot renew -q

Nezapomeňte také skript nastavit jako spustitelný.

$ chmod +x renew-certs.sh

Nyní můžete skript přidat jako úlohu cron. Otevřete crontab a přidejte skript.

# crontab -e
* 3,15 * * * /home/user/renew-certs.sh

Po ukončení by se měl skript spouštět každý den ve 3:00 a v 15:00. podle hodin serveru.

Úvahy na závěr

Šifrování vašeho webového serveru chrání vaše hosty i vás. Šifrování bude také nadále hrát roli při zobrazování stránek v prohlížečích a není příliš složité předpokládat, že bude hrát roli také v SEO. Ať se na to podíváte jakkoli, šifrování vašeho webového serveru je dobrý nápad a LetsEncrypt je nejjednodušší způsob, jak to udělat.


Debian
  1. Jak nahradit Systemd pomocí SysV Init na Debian Linuxu

  2. Začínáme s Jekyll na Debian 9 Stretch Linuxu

  3. Jak šifrovat adresář pomocí EncFS na Debian 9 Stretch Linux

  1. Jak spravovat certifikáty Lets Encrypt SSL/TLS pomocí certbota

  2. Zabezpečte Apache2 pomocí Let's Encrypt SSL na Debianu 10/11

  3. Umístění certifikátu SSL v systému UNIX/Linux

  1. Debian Linux ke stažení

  2. Zabezpečte Apache pomocí Lets Encrypt na Debianu 9

  3. Zabezpečte Nginx pomocí Lets Encrypt na Debianu 9