Jak nastavit certifikát CloudFlare pro Apache

  Článek jsem zveřejnil 21.10.2020 a zařadil ho do kategorie:  Linux / Server.
Počet shlédnutí: 349

Cloudflare Origin CA poskytuje zabezpečené připojení SSL mezi vaším serverem („origin“) a Cloudflare. V tomto článku nakonfigurujeme Origin certifikát pro Apache na Ubuntu 18.04 / 19.10.(odzkoušeno)

Předpokládám. že máme:
Již nainstalovaný a nakonfigurovaný Apache HTTP Server.


PŘÍPRAVA CERTIFIKÁTU

Na stránkách cloudflare.com přejdeme do sekce SSL/TLS, tam vybereme možnost "Origin Server" následně -

1) Vygenerujeme certifikát a soukromý klíč (kliknutím na "Create Certificate") a tlačítkem "Next"
Při instalaci certifikátu původu by výchozí hodnoty měly být: Typ soukromého klíče: RSA s 15letou platností.

2) Nyní zkopírujeme náš certifikát a soukromý klíč do textového editoru pro pozdější použití a klikneme na "OK"


INSTALACE CERTIFIKÁTU

1) Vytvoříme nový adresář, kde bude umístěn náš certifikát a soukomý klíč.

sudo mkdir -p /etc/cloudflare/

2) Nyní vytvoříme pomocí textového editoru nový soubor example.cz.pem a vložíme do něj certifikát..
(example.cz z kroku 2) a 3) nahraďte vlastní doménou)

sudo nano /etc/cloudflare/example.cz.pem

3) Nyní vytvoříme pomocí textového editoru nový soubor example.cz.key a vložíme do něj soukromý klíč

sudo nano /etc/cloudflare/example.cz.key

Předtím než certifikát přiřadíme k doméně, zkontrolujeme si, že máme povolen modul SSL pro Apache

sudo a2enmod ssl

Je vše v pořádku? Pokračujeme..

4) Otevřeme konfigurační soubor Apache pro naší doménu.

Obvykle se nachází v /etc/apache2/sites-available/

sudo nano /etc/apache2/sites-available/example.cz.conf

Už by měl existovat blok pro . Musíme přidat nový blok pod něj, a to pro SSL port 443.
Můžete také přidat podmínku přepsání do svého portu 80, abyste přesměrovali všechny požadavky na https.
Na konci předáme informaci, kam jsme náš certifikát schovali. 

<VirtualHost *:80>

    ServerAdmin [email protected]
    ServerName example.cz
    ServerAlias www.example.cz
    DocumentRoot /var/www/example.cz/public_html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

    RewriteEngine on
    RewriteCond %{SERVER_NAME} =example.cz [OR]
    RewriteCond %{SERVER_NAME} =www.example.cz
    RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]

</VirtualHost>

<VirtualHost *:443>

    ServerAdmin [email protected]
    ServerName example.cz
    ServerAlias www.example.cz
    DocumentRoot /var/www/example.cz/public_html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

    SSLEngine on
    SSLCertificateFile /etc/cloudflare/example.cz.pem
    SSLCertificateKeyFile /etc/cloudflare/example.cz.key

</VirtualHost>

Uložíme a pro jistotu si zkontrolujeme chyby v syntaxi konfigurace.

apachectl configtest

Bez chyb? Jsme fakt dobrý ne?! :) 

Pokud se chyba objevila, zkuste zkontrolovat, zdali jste v konfiguračním souboru nenechali zbytečnou mezeru
(z pohledu systému je to znak) 

Dostáváme se k poslednímu bodu, a to restartu služby Apache

sudo systemctl restart apache2

Nasazení certifikátu ze strany CloudFlare by mělo trvat zhruba 5-10 minut. 

Doporučoval bych ještě zkontrolovat, zda máme v nastavení na cloudflare.com v sekci SSL/TLS (Overview), nastaven režim šifrování SSL/TLS na Full (Strict). Zde bych doporučoval aktivovat i SSL/TLS Recommender.
Když už jsme u toho aktivování, přesuneme se ještě do sekce "Edge Certificates" a aktivujeme i možnost "Always Use HTTPS". Tento krok nám zaručí, že se všechny požadavky z „http“ překlopí na „https“.

HOTOVO!

  • Facebook
  • Twitter
  • LinkedIn
  • Email
Máte jiný názor? Potřebujete něco dovysvětlit? Napište..
Prosím zdržte se urážek, slovního napadání a dalších píčovin.
Vaše jméno

Váš e-mail

Váš komentář



Tento článek nikdo neokomentoval.