Verified Commit ad9d53d1 authored by Adam Matoušek's avatar Adam Matoušek
Browse files

Implicitne generovat kompletni retez (-chain.crt).

parent 4ff195e3
Loading
Loading
Loading
Loading
+11 −4
Original line number Diff line number Diff line
@@ -47,10 +47,17 @@ stroj.
  * `zverinec.cz.crt` – dočasný self-signed certifikát, určený k tomu, abyste si mohli všechno nakonfigurovat a nemuseli čekat na vystavení "ostrého" certifikátu.
I tento umístěte do příslušného systémového adresáře, například do `/etc/pki/tls/certs/` nebo `/etc/ssl/certs/`.
  * `zverinec.cz-bundle.crt` – dočasný balík kořenových a mezilehlých certifikátů učený k testování, umístěte jej do adresáře s dočasným certifikátem.
  * `zverinec.cz-chain.crt` – kombinace dvou předchozích (tj. řetěz certifikátů od koncového po kořenový).
  * `zverinec.cz.csr` – certificate request. Na základě tohoto vystaví LE skutečný certifikát.

* Nakonfigurujte HTTPS server tak, aby používal výše uvedený klíč, certifikát a balík.
Pro Apache 2.4 můžete použít tyto direktivy v souboru `httpd.conf`:
Pro Apache 2.4.8 a novější můžete použít tyto direktivy v souboru `httpd.conf`:

    ```apache
    SSLCertificateFile /etc/pki/tls/certs/zverinec.cz-chain.crt
    SSLCertificateKeyFile /etc/pki/tls/private/zverinec.cz.key
    ```
  U starších Apache 2.4 je potřeba oddělit koncový certifikát od mezilehlých:

    ```apache
    SSLCertificateFile /etc/pki/tls/certs/zverinec.cz.crt
@@ -61,7 +68,7 @@ Pro Apache 2.4 můžete použít tyto direktivy v souboru `httpd.conf`:
  Třeba pro Nginx zas použijte tyto direktivy:

    ```
    ssl_certificate /etc/pki/tls/certs/zverinec.cz-bundle.crt
    ssl_certificate /etc/pki/tls/certs/zverinec.cz-chain.crt
    ssl_certificate_key /etc/pki/tls/private/zverinec.cz.key
    ```

@@ -102,8 +109,8 @@ adresářů a povolte k němu přístup přes SSH z počítače `thetis.fi.muni.

* Ve skriptu je na začátku konfigurace, kde můžete upravit například
jiné umístění souboru s certifikáty nebo příkazu
pro znovunačtení konfigurace HTTPS serveru. Dle potřeby také upravte
generování *bundle* certifikátu (`$create_chain`).
pro znovunačtení konfigurace HTTPS serveru. Nepotřebujete-li generovat sloučený
řetěz certifikátů, můžete jeho generování vypnout (`$create_chain`).

* Nyní už zbývá jen požádat `unix@fi` o vystavení certifikátu. K žádosti přiložte
dříve vygenerovaný certificate request – soubor `zverinec.cz.csr`:
+12 −9
Original line number Diff line number Diff line
@@ -89,9 +89,10 @@ if ($?) {
}

if (-f "$host.crt") { # soubor z predchoziho kroku nemusi existovat
	unlink "$host-bundle.crt";
	print "Vytvarim docasny balik certifikatu pro testovani.\n";
	system('cp', "$host.crt", "$host-bundle.crt");
	for my $dst_file ( "$host-bundle.crt", "$host-chain.crt" ) {
		unlink $dst_file;
		print "Vytvarim docasny balik certifikatu pro testovani ($dst_file).\n";
		system('cp', "$host.crt", $dst_file);

		if ($?) {
			print STDERR "Selhalo vytvareni baliku certifikatu; nevadi.\n";
@@ -99,6 +100,7 @@ if (-f "$host.crt") { # soubor z predchoziho kroku nemusi existovat
			print "Balik certifikatu OK.\n";
		}
	}
}

my $myhost = hostname;

@@ -112,6 +114,7 @@ Certificate request uspesne vytvoreny v souboru
certifikatu a jeho automaticke kopirovani na $myhost.
Jako tajny klic pouzijte soubor $host.key.
Do vygenerovani certifikatu muzete docasne pouzit self-signed certifikat
v souboru $host.crt a balik $host-bundle.crt.
v souboru $host.crt a baliky $host-bundle.crt
a $host-chain.crt.

EOF
+1 −1
Original line number Diff line number Diff line
@@ -37,7 +37,7 @@ my $post_cmd = 'apachectl -k graceful';
my $valid_base64_url_re = qr(\A[a-zA-Z0-9_-]+\z);

# Ma se vytvorit i slozeny soubor (-chain.crt)?
my $create_chain = 0;
my $create_chain = 1;

my $domain = <>;
chomp $domain;