PHP min. 5.6.8MySQL min. 5.1Apache min. 2.0
GitHub
Přidejte kódy
PHP-Fusion 9 Jádro
v9.0
Český překlad
Pravidelně aktualizovaný
Demo
Testovat PHP-Fusion

Technologie

Certifikát Let's Encrypt v Ubuntu

Certifikát Let's Encrypt v Ubuntu
V říjnu roku 2017 představila certifikační autorita Let's Encrypt vestavěnou funkcionalitu prostřednictvím modulu pro Apache httpd. U nás na phpfusion.cz se osvědčila, a to i na domácím localhostu pod OS Ubuntu.

Certifikáty od autority Let's Encrypt, si můžete vybrat z celé řady klientů, kteří implementují ACME protokol, a tedy dokáží zajistit vystavení certifikátu. Může to být třeba Dehydrate, nebo můžeme postupovat ručním přidáním skriptů přes Termínál podle letsencrypt.


Let’s Encrypt – zabezpečení webu SSL certifikátem ZDARMA na serveru Apache na Ubuntu
Instalace potřebných balíčků

sudo apt-get update
sudo apt-get install git


Instalace Let’s Encrypt

sudo git clone https://github.com/letsencrypt/letsencrypt /opt/letsencrypt


Vystavení SSL certifikátu

cd /opt/letsencrypt
./letsencrypt-auto --apache -d example.com -d www.example.com


A kde se nám vygenerovfané soubory certifikátu usadily? Najdeme je ve složce: /etc/letsencrypt/live
Dále je zde seznam domén s vysavenými certifikáty na serveru
/etc/letsencrypt/live

Ověření nastavení a stavu SSL certifikátu

https://www.ssllabs.com/ssltest/analyze.html?d=example.com&latest

Obnovení platnosti certifikátu (renew)


cd /opt/letsencrypt
./letsencrypt-auto certonly --apache --renew-by-default -d example.com -d www.example.com
service apache2 restart


Automatické obnvení platnosti certifikátu

Certifikáty Let’s Encrypt mají platnost 90 dnů. Je však doporučeno provádět obnovení pro jistotu již po 60 dnech.

Nejléoe nastavíme cron, který bude obnovení provádět automaticky.

Shell skript (ke stažení zde, případně zde): ověří datum expirace SSL certifikátu vystaveného pro danou doménu a v případě potřeby provede prodloužení certifikátu. Skript bude spouštěn v pravidelných intervalech 1x za týden.

Stažení skriptu a nastavení přístupových práv k souboru:

sudo curl -L -o /usr/local/sbin/le-renew http://do.co/le-renew
sudo chmod +x /usr/local/sbin/le-renew


Ruční spuštění skriptu

sudo le-renew example.com


Automatické spouštění skriptu


Přidáme nový úkol do tabulky cronu, který jendou týdně skript spustí. Takže budeme editovbat tabulky cronu následovně:

sudo crontab -e


Každá zabezpečená doména musí mít přidán řádek:

30 2 * * 1 /usr/local/sbin/le-renew example.com >> /var/log/le-renew.log


Aktualizace klienta Let’s Encrypt

V případě vydání nové verze klienta Let’s Encrypt je vhodné provést jeho aktualizaci na serveru následovně rovněž přes Terminál:

cd /opt/letsencrypt
sudo git pull


Zdroje:
Instalace Let’s Encrypt speciálně pro Ubuntu 14.04.

Galerie

Kvido 12.04.2018 13:46 591 3 komentáře

3 komentáře

Zanechat komentář

Přihlaste se, abyste mohli zveřejnit komentář.
  • RobiNN
    Zabudol si napísať jednu podstatnú vec a to, že je potrebne vlastniť verejnú IP, inak povedané na localhoste to nerozbehneš.

    https://letsencry...localhost/

    Citát

    Let’s Encrypt can’t provide certificates for “localhost” because nobody uniquely owns it, and it’s not rooted in a top level domain like “.com” or “.net”.
    - 12.04.2018 16:06
  • Kvido
    Máš pravdu. To jsem zapomněl zdůraznit.
    Ale u localhostu, tedy interního webového serveru, to lze obejít bez autority Let’s Encrypt . Tak získáme také certifikáty. Sice nebudou nikomu důvěřovat. Ale pro naši práci a testy v interním prostředi localhostu by to, myslím, mělo stačit. Soukromý klíč a certifikát s vlastním podpisem pro localhost lze generovat příkazem openssl. Mělo by to jít takto:

    openssl req -x509 -out localhost.crt -keyout localhost.key \ -newkey rsa:2048 -nodes -sha256 \ -subj '/CN=localhost' -extensions EXT -config <( \ printf "[dn]\nCN=localhost\n[req]\ndistinguished_name = dn\n[EXT]\nsubjectAltName=DNS:localhost\nkeyUsage=digitalSignature\nextendedKeyUsage=serverAuth") 


    Tudíž, při tomto postupu budeme konfigurovat pomocí localhost.crt a localhost.key a nainstalujeme localhost.crt do seznamu interních důvěryhodných kořenů pro localhost.

    Já jsem ale měl na Ubuntu 14.04 problémy s příkazem printf.
    Tak jsem použil náhradu domény za "www.localhost", přidáním do adresáře / etc / hosts jako alias 127.0.0.1.
    Chce to zkusit, ale nějaké řešení by to mělo být.
    - 13.04.2018 16:06
    • RobiNN
      Napísal si "a to i na domácím localhostu pod OS Ubuntu." preto ten komentár.

      Ano viem že si na localhostu môžeš vygenerovať certifikát, dokonca vytvoriť aj vlastnú certifikačnú autoritu. Aj vo Windowse to ide.
      Pre localhost domény som si niekdy vždy vygeneroval SSL a bolo aj validné (zelený zámok) ale potom to Google odstránil a vlastné SSL už sa ukazovalo ako nedôveryhodne.
      - 13.04.2018 18:58
Nejnovější témata fóra
  Vlákno Zobrazení Odpovědi Poslední příspěvek
obrázky v news
v PHP - Fusion 9.0.3
24 0 Balin50
21-05-2018 12:12
Gist
v Administrace obsahu
68 2 Kvido
19-05-2018 07:12
Token
v PHP - Fusion 9.0.3
77 2 Balin50
18-05-2018 12:52
Chyba - DatabaseSetup.inc
v PHP - Fusion 9.0.3
61 3 RobiNN
17-05-2018 17:46
tagy vo fóre
v PHP - Fusion 9.0.3
51 0 Balin50
16-05-2018 19:42
Code v news [Vyřešeno]
v PHP - Fusion 9.0.3
92 5 RobiNN
16-05-2018 18:52