{% extends 'layout.html' %} {% block title %}Nastavení hostitele{% endblock %} {% block body %} <div class="setup-box"> <h2>HTTPS Hostitel</h2> <p>Základní doménové jméno a HTTPS port na kterých budou přístupny všechny aplikace.</p> <form id="update-host" action="/update-host" method="post"> <table> <tr> <td>Doména</td> <td><input type="text" name="domain" id="domain" value="{{ conf['host']['domain'] }}"></td> <td class="remark">Plně kvalifikovaný doménový název, na kterém bude dostupný aplikační portál. Jednotlivé aplikace budou dostupné na subdoménách této domény.</td> </tr> <tr> <td>Port</td> <td><input type="text" name="port" id="port" value="{{ conf['host']['port'] }}"></td> <td class="remark">HTTPS port na kterém budou dostupné aplikace. Výchozí HTTPS port je 443.</td> </tr> <tr> <td> </td> <td colspan="2"> <input type="submit" id="host-submit" value="Nastavit hostitele"> <div id="host-message"></div> <div id="host-wait" class="loader-wrap"> <div class="loader"></div> <span>Provádí se změna nastavení, prosím čekejte...</span> </div> </td> </tr> </table> </form> </div> <div class="setup-box"> <h2>DNS záznamy</h2> <p>Na jmenném serveru domény nastavené v sekci <em>HTTPS Hostitel</em> nastavte DNS záznamy typu A, případně i AAAA pro následující doménové názvy a nasměrujte je na vnější (tj. dostupnou z internetu) IP adresu tohoto virtuální stroje. Toto nastavení lze obvykle provést skrze webové rozhraní registrátora domény.</p> <p>Vnější IPv4 {% if ex_ipv4 %}je <strong>{{ ex_ipv4 }}</strong>{% else %}nebyla zjištěna{% endif %} a IPv6 {% if ex_ipv6 %}je <strong>{{ ex_ipv6 }}</strong>{% else %}nebyla zjištěna{% endif %}.</p> <ul> <li>{{ conf['host']['domain'] }}</li> <li>*.{{ conf['host']['domain'] }}</li> </ul> <p>Pokud jmenný server nepodporuje wildcard záznamy nebo pokud nemůžete či nechcete dedikovat virtuálnímu stroji všechny subdomény, nastavte místo toho záznamy pro následující doménové názvy</p> <ul style="column-count:3"> <li>{{ conf['host']['domain'] }}</li> {% for app in conf['apps']|sort %} <li>{{ conf['apps'][app]['host'] }}.{{ conf['host']['domain'] }}</li> {% endfor %} </ul> <input type="button" id="verify-dns" value="Ověřit nastavení DNS"> <div id="dns-message"></div> <div id="dns-wait" class="loader-wrap"> <div class="loader"></div> <span>Ověřuje se nastavení DNS, prosím čekejte...</span> </div> </div> <div class="setup-box"> <h2>Firewall a NAT</h2> <p>Pokud je stávající připojení k internetu zprostředkováno routerem s NAT, na hypervizoru je nastaven firewall nebo existují jiné restrikce síťového provozu, je nutno upravit nastavení příslušných komponent, aby byl provoz na portu {{ conf['host']['port'] }} (nastaveném v sekci <em>HTTPS Hostitel</em>) z internetu korektně nasměrován na místní adresu virtuálního stroje.</p> <p>Pokud bude využit systém automatického vyžádání a obnovy certifikátu (sekce <em>HTTPS certifikát</em>), je nutno aby byl na místní adresu virtuálního stroje nasměrován i port 80, případně byla nastavena HTTP proxy přesměrovávající doménová jména zmíněná v sekci <em>DNS záznamy</em>.</p> <p>Místní IPv4 {% if in_ipv4 %}je <strong>{{ in_ipv4 }}</strong>{% else %}nebyla zjištěna{% endif %} a IPv6 {% if in_ipv6 %}je <strong>{{ in_ipv6 }}</strong>{% else %}nebyla zjištěna{% endif %}.</p> <input type="button" id="verify-https" value="Ověřit nastavení portu {{ conf['host']['port'] }}"> <div id="https-message"></div> <div id="https-wait" class="loader-wrap"> <div class="loader"></div> <span>Ověřuje se nastavení firewallu a NAT pro port {{ conf['host']['port'] }}, prosím čekejte...</span> </div> <input type="button" id="verify-http" value="Ověřit nastavení portu 80"> <div id="http-message"></div> <div id="http-wait" class="loader-wrap"> <div class="loader"></div> <span>Ověřuje se nastavení firewallu a NAT pro port 80, prosím čekejte...</span> </div> </div> <div class="setup-box"> <h2>HTTPS certifikát</h2> <p>Stávající certifikát je vystaven na jméno <strong>{{ cert_info['subject']['commonName'] }}</strong> vystavitelem <strong>{{ cert_info['issuer']['commonName'] }}</strong> a jeho platnost vyprší <strong>{{ cert_info['notAfter'] }}</strong>.</p> <form id="update-cert" action="/update-cert" method="post"> <table> <tr> <td>Způsob správy</td> <td> <select name="method" id="cert-method"> <option value="auto"{% if is_letsencrypt %} selected{% endif %}>Automaticky</option> <option value="manual"{% if not is_letsencrypt %} selected{% endif %}>Ručně</option> </select> </td> <td class="remark">Volba "Automaticky" způsobí, že systém automaticky zažádá o certifikát certifikační autority Let's Encrypt pro všechny plně kvalifikované doménové názvy (tj. nikoliv wildcard) zmíněné v sekci <em>DNS záznamy</em> a nainstaluje úlohu pro jeho automatickou obnovu. Tato akce může trvat několik minut.<br>Volba "Ručně" znamená, že soubory certifikátu a jeho soukromého klíče je nutno nahrát a následně obnovovat ručně skrze formulář na této stránce.</td> </tr> <tr class="cert-upload"{% if is_letsencrypt %} style="display:none"{% endif %}> <td>Soubor certifikátu</td> <td><input type="file" name="public" accept=".cer, .crt, .der, .pem"></td> <td class="remark">Soubor s certifikátem ve formátu PEM.<br>Pokud je podepsán certifikační autoritou třetí strany, pak by tento soubor měl mimo koncového certifikátu obsahovat i podpisový certifikát.</td> </tr> <tr class="cert-upload"{% if is_letsencrypt %} style="display:none"{% endif %}> <td>Soubor klíče</td> <td><input type="file" name="private" accept=".key, .pem"></td> <td class="remark">Soubor se soukromým klíčem ve formátu PEM pro výše vybraný certifikát.</td> </tr> <tr> <td> </td> <td colspan="2"> <input type="submit" id="cert-submit" value="Nastavit certifikát"> <div id="cert-message"></div> <div id="cert-wait" class="loader-wrap"> <div class="loader"></div> <span>Provádí se změna nastavení, prosím čekejte...</span> </div> </td> </tr> </table> </form> </div> {% endblock %}