Instalace SSL certifikátu na server s ISPconfig 3
5. 3. 2016 | Jindřich Zechmeister
ISPConfig je populární open source panel pro správu serveru nebo hostingu. Setkáte se s ním často u webhostingu či virtuálním serveru, není však problém používat ho i na vašem vlastním (domácím) linuxovém serveru. Dnešní návod popisuje instalaci SSL certifikátu přes toto rozhraní.
ISPConfig 3 - kompletní správa serveru
ISPConfig slouží ke kompletní správě linuxového serveru; nejčastěji se s tímto softwarem setkáte o webhosterů a poskytovatelů VPS (virtuální server). Na velikosti ovládaného serveru nezáleží; ISPConfig můžete využít i pro váš domácí server.
Instalace ovládacího panelu ISPConfig je jednoduchá, ale protože není tématem tohoto návodu, odkáži vás na oficiální návody výrobce. Podpora produktu a návody k instalaci jsou velice dobře zpracovány a postup najdete pro různé kombinace webových serverů a serverových distribucí. Výrobce nabízí i asistovanou instalaci na server, která však není levná.
Po nainstalování na server (či zřízení vašeho serveru hosterem) se přihlaste do ISPConfig panelu. Typicky se nachází na portu 8080 vaší domény či IP adresy serveru.
Po přihlášení přejděte do sekce Sites a otevřete nastavení domény, pro kterou chcete certifikát nainstalovat. Dostanete se do nastavení Web Domain, správa SSL certifikátu je u ISPConfig pod záložkou SSL.
Nastavení domény v ISPConfig. Pro zvětšení klikněte.
V záložce SSL máte možnost buď zadat údaje pro vygenerování self-signed certifikátu, nebo vložení vašich již připravených klíčů a instalaci certifikátu důvěryhodného.
Pokud nechcete mít na webu výhružné varování o nedůvěryhodném certifikátu, nepoužívejte self-signed certifikát. Pokud budou vaši doménu navštěvovat cizí návštěvníci, je nedůvěryhodný certifikát naprosto nevhodný.
Doporučuji proto postupovat druhou možností, a to je použít důvěryhodný certifikát. Nejlevnější SSL certifikát můžete získat na SSLmarket; tato investice se rozhodně vyplatí. Pro vystavení důvěryhodného certifikátu budete potřebovat vyrobit privátní a veřejný klíč.
Vygenerování klíčů SSL certifikátu
Váš ISPConfig běží na linuxovém serveru, proto pro generování klíčů použijeme OpenSSL. Přihlaste se na server přes SSH a vygenerujte pár klíčů následujícími příkazy. Pro protokol SSH na Windows doporučuji program PuTTY.
Privátní klíč (bitová hloubka 2048, uloží se do souboru pkey.key ve složce uživatele v /home):
openssl genrsa -out pkey.key 2048
Veřejný klíč - CSR request (uloží se tamtéž pod názvem request.csr):
openssl req -new -key pkey.key -out request.csr
Následně vás program vyzve k zadání údajů pro veřejný klíč.
Country Name (2 letter code) [US]: Název státu velkými písmeny dle normy ISO, například CZ
State or Province Name (full name) []: Například Czech Republic
Locality Name (eg, city) []: Město, kde máte sídlo. Například Praha, Brno
Organization Name (eg, company) []: Název organizace či osoby žádající o certifikát
Organizational Unit Name (eg, section) []: Název organizační jednotky či oddělení. Můžete zadat například Internet, Software, Marketing.
Common Name (eg, YOUR name) []: Nejdůležitější údaj - doména, pro kterou bude certifikát vystaven. Rozlišuje se tvar domény s WWW a bez, stejně jako domény nižšího řádu. Například www.sslmarket.cz.
Email Address []: E-mailová adresa - není požadováno, nevyplňujte.
Následují ještě dva rozšiřující atributy, které nevyplňujte (jen potvrďte Enterem):
A challenge password []: Heslo, které se dle standardu používá pro revokaci. Nevyplňujte!
An optional company name []: Jiný název společnosti.
Kontrola veřejného klíče pro SSL certifikát
V souboru s CSR requestem najdete žádost o certifikát zakódovanou ve formátu Base64, který slouží pro uložení binárních dat v textové podobě. Na první pohled vám proto přijdou data jako nesmyslný text. Chcete-li si údaje v CSR ověřit, můžete použít náš webový nástroj Kontrola CSR.
Použití vytvořených klíčů
Jak již bylo napsáno výše, klíče byly vygenerovány v textové podobě a jsou zakódovány v Base64. Prakticky to znamená to, že můžete klíče a certifikáty kopírovat a vkládat jako text, což by u binárních dat nebylo možné.
Spusťte svého správce souborů, například mc, a přejděte do vaši domovské složky. Tam najděte soubory s klíči a otevřete je stisknutím klávesy F4.
Oba klíče nyní přes Ctrl+C a Ctrl-V přeneste do ISPConfigu a záložky SSL certifikátů. Do jednotlivých polí vložte součásti SSL certifikátu, který bude server používat pro vaši doménu.
- SSL key - privátní klíč
- SSL request - veřejný klíč (CSR)
- SSL certificate - certifikát vystavený CA, nebo zaslaný od SSLmarket
- SSL bundle - zprostředkující (Intermediate) certifikát, důležitý pro důvěryhodnost
Vložení SSL certifikátu a klíčů do ISPConfig. Pro zvětšení klikněte.
Po vložení všech částí vyberte v nabídce SSL Action položku Save certificate. Tím se vše uloží na server. Vraťte se na první záložku Domain, zatrhněte SSL a klikněte opět na Save. Tím zapnete zabezpečený protokol pro danou doménu.
SSL certifikát a klíče jsou uloženy v adresáři /usr/local/ispconfig/interface/ssl/ v souborech ispserver.crt, csr a key.
Proveďte restart webového serveru Apache:
sudo /etc/init.d/apache2 restart
nebo Nginx:
sudo /etc/init.d/nginx restart
Kontrola funkčnosti SSL certifikátu
Zkontrolujte. zdali webový server SSL certifikát používá; buď můžete navštívit danou doménu přes HTTPS, nebo použít nás ověřovač SSL certifikátu.
SSL certifikát můžete použít i pro jiné účely
Pokud vše funguje v pořádku, můžete zapřemýšlet o využití vašeho nového SSL certifikátu i pro jiné účely, než je zabezpečení webu. Pokud máte certifikát vystaven pro doménu, na které bude více služeb, můžete ho použít například pro poštu (například servery Dovecot, Postfix a Courier), pro FTP či pro zabezpečení jakékoliv komunikace vašeho serveru. SSL certifikát rovněž využijete, pokud se na serveru přihlašujete k webovému rozhranní pošty (Webmaily Roundcube, Squirrelmail).
Certifikát budete mít typicky vystaven pro jednu doménu (adresu), na které bude pravděpodobně váš web. Pokud budete potřebovat zabezpečit subdomény vašeho serveru, nebo zabezpečit úplně jiné domény, můžete vše vyřešit certifikátem se SAN (DNS názvy). Do takového certifikátu přidáte všechny názvy, pro které chcete mít certifikát platný a důvěryhodný.
Na závěr mi dovolte zdůraznit důležitost šifrování přihlašovacích údajů. Ať už se na vašem serveru přihlašujete na web, webmail či používáte e-mailového klienta, přihlašovací údaje v žádném případě nesmí putovat nezabezpečeným protokolem. V našem článku Ukrást přihlašovací údaje je díky HTTP snadné se můžete přesvědčit, jak snadné je ukrást přihlašovací údaje poslané nešifrovaným protokolem. Není k tomu třeba ani speciální software.
Specialista pro bezpečnostní SSL certifikáty
DigiCert TLS/SSL Professional
e-mail: jindrich.zechmeister(at)zoner.cz