tachtler:let_s_encrypt
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
tachtler:let_s_encrypt [2016/09/16 12:47] – [Generierung: Test] klaus | tachtler:let_s_encrypt [2021/06/04 20:54] (aktuell) – klaus | ||
---|---|---|---|
Zeile 3: | Zeile 3: | ||
[[https:// | [[https:// | ||
- | [[https:// | + | [[https:// |
[[https:// | [[https:// | ||
Zeile 18: | Zeile 18: | ||
Die Erstellung soll durch Verwendung von nachfolgendem **Skript** durchgeführt werden: | Die Erstellung soll durch Verwendung von nachfolgendem **Skript** durchgeführt werden: | ||
* [[https:// | * [[https:// | ||
- | welches unter obenstehendem | + | welches unter oben stehendem |
===== Herunterladen ===== | ===== Herunterladen ===== | ||
Zeile 26: | Zeile 26: | ||
:!: **HINWEIS** - Beim Einsatz des Standard-Clients von [[https:// | :!: **HINWEIS** - Beim Einsatz des Standard-Clients von [[https:// | ||
- | Nachfolgender Befehl, wechselt in das Verzeichnis **''/ | + | Nachfolgender Befehl, wechselt in das Verzeichnis **''/ |
< | < | ||
# cd /opt | # cd /opt | ||
</ | </ | ||
- | Anschließend | + | Anschliessend |
< | < | ||
# wget -P /opt -O dehydrated.zip https:// | # wget -P /opt -O dehydrated.zip https:// | ||
Zeile 90: | Zeile 90: | ||
</ | </ | ||
- | Anschließend | + | Anschliessend |
< | < | ||
# ls -l * | # ls -l * | ||
Zeile 105: | Zeile 105: | ||
</ | </ | ||
- | Als abschließenden | + | Als abschliessenden |
< | < | ||
- | # mkdir -p / | + | # mkdir -p / |
</ | </ | ||
Zeile 123: | Zeile 123: | ||
total 64 | total 64 | ||
drwxr-xr-x 2 root | drwxr-xr-x 2 root | ||
+ | drwxr-xr-x 2 root | ||
drwxr-xr-x 2 root | drwxr-xr-x 2 root | ||
+ | drwxr-xr-x 2 root | ||
-rw-r--r-- 1 root | -rw-r--r-- 1 root | ||
-rwxr-xr-x 1 root | -rwxr-xr-x 1 root | ||
drwxr-xr-x 3 root | drwxr-xr-x 3 root | ||
drwxr-xr-x 2 root | drwxr-xr-x 2 root | ||
+ | drwxr-xr-x 2 root | ||
-rw-r--r-- 1 root | -rw-r--r-- 1 root | ||
-rw-r--r-- 1 root | -rw-r--r-- 1 root | ||
Zeile 160: | Zeile 163: | ||
# Default values of this config are in comments | # Default values of this config are in comments | ||
######################################################## | ######################################################## | ||
+ | |||
+ | # Which user should dehydrated run as? This will be implictly enforced when running as root | ||
+ | # | ||
+ | |||
+ | # Which group should dehydrated run as? This will be implictly enforced when running as root | ||
+ | # | ||
# Resolve names to addresses of IP version only. (curl) | # Resolve names to addresses of IP version only. (curl) | ||
Zeile 168: | Zeile 177: | ||
IP_VERSION=4 | IP_VERSION=4 | ||
- | + | # Path to certificate authority (default: https:// | |
- | # Path to certificate authority (default: https:// | + | |
# Tachtler | # Tachtler | ||
- | # default: # | + | # default: # |
- | # | + | # |
# Tachtler - TESTING without LIMITATION - IMPORTANT !!! | # Tachtler - TESTING without LIMITATION - IMPORTANT !!! | ||
- | CA=" | + | CA=" |
- | # Path to license agreement (default: https:// | + | # Path to old certificate authority |
- | #LICENSE=" | + | # Set this value to your old CA value when upgrading from ACMEv1 to ACMEv2 under a different endpoint. |
+ | # If dehydrated detects an account-key for the old CA it will automatically reuse that key | ||
+ | # instead of registering a new one. | ||
+ | # default: https://acme-v01.api.letsencrypt.org/ | ||
+ | #OLDCA=" | ||
- | # Which challenge should be used? Currently http-01 | + | # Which challenge should be used? Currently http-01, dns-01 and tls-alpn-01 are supported |
- | #CHALLENGETYPE=" | + | # default: # |
# Path to a directory containing additional config files, allowing to override | # Path to a directory containing additional config files, allowing to override | ||
Zeile 202: | Zeile 214: | ||
# default: # | # default: # | ||
CERTDIR=" | CERTDIR=" | ||
+ | |||
+ | # Output directory for alpn verification certificates | ||
+ | # Tachtler | ||
+ | # default: # | ||
+ | ALPNCERTDIR=" | ||
# Directory for account keys and registration information | # Directory for account keys and registration information | ||
Zeile 218: | Zeile 235: | ||
# Path to openssl config file (default: < | # Path to openssl config file (default: < | ||
# | # | ||
+ | |||
+ | # Path to OpenSSL binary (default: " | ||
+ | # | ||
+ | |||
+ | # Extra options passed to the curl binary (default: < | ||
+ | #CURL_OPTS= | ||
# Program or function called in certain situations | # Program or function called in certain situations | ||
Zeile 240: | Zeile 263: | ||
# Regenerate private keys instead of just signing new certificates on renewal (default: yes) | # Regenerate private keys instead of just signing new certificates on renewal (default: yes) | ||
- | # | + | # Tachtler |
+ | # See: https:// | ||
+ | # default: | ||
+ | PRIVATE_KEY_RENEW=" | ||
+ | |||
+ | # Create an extra private key for rollover (default: no) | ||
+ | # | ||
# Which public key algorithm should be used? Supported: rsa, prime256v1 and secp384r1 | # Which public key algorithm should be used? Supported: rsa, prime256v1 and secp384r1 | ||
Zeile 255: | Zeile 284: | ||
# Option to add CSR-flag indicating OCSP stapling to be mandatory (default: no) | # Option to add CSR-flag indicating OCSP stapling to be mandatory (default: no) | ||
# | # | ||
- | </ | + | |
+ | # Fetch OCSP responses (default: no) | ||
+ | # | ||
+ | |||
+ | # OCSP refresh interval (default: 5 days) | ||
+ | # | ||
+ | |||
+ | # Issuer chain cache directory (default: $BASEDIR/ | ||
+ | # Tachtler | ||
+ | # default: # | ||
+ | CHAINCACHE=" | ||
+ | |||
+ | # Automatic cleanup (default: no) | ||
+ | # | ||
+ | |||
+ | # ACME API version (default: auto) | ||
+ | #API=auto</ | ||
**__Erklärungen__**: | **__Erklärungen__**: | ||
Zeile 264: | Zeile 309: | ||
* <code bash># Tachtler | * <code bash># Tachtler | ||
- | # default: # | + | # default: # |
- | # | + | # |
# Tachtler - TESTING without LIMITATION - IMPORTANT !!! | # Tachtler - TESTING without LIMITATION - IMPORTANT !!! | ||
- | CA=" | + | CA=" |
Während der Einrichtung und **Test**-Phase, | Während der Einrichtung und **Test**-Phase, | ||
Zeile 286: | Zeile 331: | ||
# default: # | # default: # | ||
CERTDIR=" | CERTDIR=" | ||
+ | |||
+ | # Output directory for alpn verification certificates | ||
+ | # Tachtler | ||
+ | # default: # | ||
+ | ALPNCERTDIR=" | ||
# Directory for account keys and registration information | # Directory for account keys and registration information | ||
Zeile 295: | Zeile 345: | ||
# Tachtler | # Tachtler | ||
# default: # | # default: # | ||
- | WELLKNOWN=" | + | WELLKNOWN=" |
+ | </ | ||
Anpassung der einzelnen Pfade bzw. Verzeichnisse, | Anpassung der einzelnen Pfade bzw. Verzeichnisse, | ||
Zeile 306: | Zeile 357: | ||
:!: **HINWEIS** - Hier können **maximal 90 Tage** eingestellt werden! | :!: **HINWEIS** - Hier können **maximal 90 Tage** eingestellt werden! | ||
+ | |||
+ | * <code bash> | ||
+ | |||
+ | **Deaktiviert** die Erstellung eines **__neuen__ privaten Schlüssels**, | ||
+ | |||
+ | :!: **HINWEIS** - Der private Schlüssel sollte trotzdem von Zeit zu Zeit z.B. **1 x Jahr** erneuert werden! | ||
* <code bash> | * <code bash> | ||
E-Mail-Adresse welche als Kontakt dienen soll. | E-Mail-Adresse welche als Kontakt dienen soll. | ||
+ | |||
+ | * <code bash> | ||
+ | # Issuer chain cache directory (default: $BASEDIR/ | ||
+ | # Tachtler | ||
+ | # default: # | ||
+ | CHAINCACHE=" | ||
+ | |||
+ | Anpassung der einzelnen Pfade bzw. Verzeichnisse, | ||
==== / | ==== / | ||
Zeile 418: | Zeile 483: | ||
</ | </ | ||
- | Abschließend ist ein Neustart des Web-Servers, | + | Abschließend ist ein Neustart des Web-Servers, |
< | < | ||
# systemctl restart httpd.service | # systemctl restart httpd.service | ||
Zeile 440: | Zeile 505: | ||
nachfolgende Einstellung **erst geändert werden, wenn die Test-Phase erfolgreich abgeschlossen ist!** | nachfolgende Einstellung **erst geändert werden, wenn die Test-Phase erfolgreich abgeschlossen ist!** | ||
* <code bash># Tachtler | * <code bash># Tachtler | ||
- | # default: # | + | # default: # |
- | # | + | # |
# Tachtler - TESTING without LIMITATION - IMPORTANT !!! | # Tachtler - TESTING without LIMITATION - IMPORTANT !!! | ||
- | CA=" | + | CA=" |
+ | |||
+ | **__Bei__ der ersten Generierung von Zertifikaten**, | ||
+ | < | ||
+ | # / | ||
+ | </ | ||
+ | * //Danke für den Hinweis an: Frank Kirschner// | ||
+ | |||
+ | :!: **HINWEIS** - **Die zusätzlichen Parameter** | ||
+ | < | ||
+ | --register --accept-terms | ||
+ | </ | ||
+ | **können bei weiteren Zertifikatserstellungen, | ||
< | < | ||
# / | # / | ||
</ | </ | ||
+ | |||
+ | Hier die Ausgaben, welche durch den Skriptlauf erzeugt werden: | ||
+ | < | ||
+ | # / | ||
+ | # INFO: Using main config file / | ||
+ | + Generating account key... | ||
+ | + Registering account key with ACME server... | ||
+ | Processing tachtler.net with alternative names: www.tachtler.net dokuwiki.tachtler.net | ||
+ | + Signing domains... | ||
+ | + Creating new directory / | ||
+ | + Generating private key... | ||
+ | + Generating signing request... | ||
+ | + Requesting challenge for tachtler.net... | ||
+ | + Requesting challenge for www.tachtler.net... | ||
+ | + Requesting challenge for dokuwiki.tachtler.net... | ||
+ | + Responding to challenge for tachtler.net... | ||
+ | + Challenge is valid! | ||
+ | + Responding to challenge for www.tachtler.net... | ||
+ | + Challenge is valid! | ||
+ | + Responding to challenge for dokuwiki.tachtler.net... | ||
+ | + Challenge is valid! | ||
+ | + Requesting certificate... | ||
+ | + Checking certificate... | ||
+ | + Done! | ||
+ | + Creating fullchain.pem... | ||
+ | + Done! | ||
+ | </ | ||
+ | |||
+ | Anschließend kann mit nachfolgendem Befehl überprüft werden, ob alle benötigten Komponenten, | ||
+ | * **privaten Schlüssels** | ||
+ | * **Zertifikast-Requests** | ||
+ | * **Zertifikat** | ||
+ | * **einfachen Zertifikatskette** | ||
+ | * **vollständigen Zertifikatskette** | ||
+ | erzeugt worden sind: | ||
+ | < | ||
+ | # ls -l / | ||
+ | total 24 | ||
+ | -rw------- 1 root root 3069 Sep 16 14:06 cert-1474027589.csr | ||
+ | -rw------- 1 root root 3508 Sep 16 14:10 cert-1474027589.pem | ||
+ | lrwxrwxrwx 1 root root 19 Sep 16 14:10 cert.csr -> cert-1474027589.csr | ||
+ | lrwxrwxrwx 1 root root 19 Sep 16 14:10 cert.pem -> cert-1474027589.pem | ||
+ | -rw------- 1 root root 1679 Sep 16 14:10 chain-1474027589.pem | ||
+ | lrwxrwxrwx 1 root root 20 Sep 16 14:10 chain.pem -> chain-1474027589.pem | ||
+ | -rw------- 1 root root 5187 Sep 16 14:10 fullchain-1474027589.pem | ||
+ | lrwxrwxrwx 1 root root 24 Sep 16 14:10 fullchain.pem -> fullchain-1474027589.pem | ||
+ | -rw------- 1 root root 3243 Sep 16 14:06 privkey-1474027589.pem | ||
+ | lrwxrwxrwx 1 root root 22 Sep 16 14:10 privkey.pem -> privkey-1474027589.pem | ||
+ | </ | ||
+ | |||
+ | :!: **HINWEIS** - Hier ist ebenfalls schön zu sehen, da jeweils **symbolische Links** erstellt wurden, was bei einer erneuten Generierung **__keine__** Konfiguration in den Web-Server Konfigurationsdateien nach sich zieht, da nur die symblischen Links angepasst werden! | ||
+ | |||
+ | ===== Generierung ===== | ||
+ | |||
+ | Wie auch bei der Generierung des Zertifikas gegen die [[https:// | ||
+ | |||
+ | :!: **WICHTIG** - Während der Einrichtung und **Test**-Phase, | ||
+ | |||
+ | Deshalb sollte in der Konfigurationsdatei | ||
+ | * ''/ | ||
+ | nachfolgende Einstellung **jetzt geändert werden, wenn die Test-Phase erfolgreich abgeschlossen ist!** | ||
+ | * <code bash># Tachtler | ||
+ | # default: # | ||
+ | CA=" | ||
+ | # Tachtler - TESTING without LIMITATION - IMPORTANT !!! | ||
+ | # | ||
+ | |||
+ | < | ||
+ | # / | ||
+ | </ | ||
+ |
tachtler/let_s_encrypt.txt · Zuletzt geändert: 2021/06/04 20:54 von klaus