Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
software:letsencrypt [2018/04/23 20:00]
st [wildcard-Domains]
software:letsencrypt [2018/12/14 15:34] (aktuell)
st [letsencrypt offizieller Client (certbot)]
Zeile 8: Zeile 8:
 [[https://​www.metachris.com/​2015/​12/​comparison-of-10-acme-lets-encrypt-clients/​|Comparison of 10 ACME / Let's Encrypt Clients]] [[https://​www.metachris.com/​2015/​12/​comparison-of-10-acme-lets-encrypt-clients/​|Comparison of 10 ACME / Let's Encrypt Clients]]
  
-===== letsencrypt offizieller Client =====+===== letsencrypt offizieller Client ​(certbot) ​=====
  
 Die offizielle Client-Software muss direkt auf dem Server gestartet werden (funktioniert also nicht für shared-Hosting sondern nur bei vhosts/​root-Servern mit shell-Zugang) und unterstützt. Die offizielle Client-Software muss direkt auf dem Server gestartet werden (funktioniert also nicht für shared-Hosting sondern nur bei vhosts/​root-Servern mit shell-Zugang) und unterstützt.
 +Im standalone-Modus muss der laufende Webserver angehalten werden, es existieren jedoch integrierte Modi für Webserver wie [[apache:​Apache]].
  
-Im standalone-Modus muss der laufende Webserver angehalten werden, es existieren jedoch integrietete Modi für Webserver wie [[apache:Apache]].+Eine [[https://​certbot.eff.org/​all-instructions|detaillierte Liste für alle verbreiteten Plattformen führt die eff auf]]. 
 +==== Installation ====
  
 +Bei neueren Distributionen (z.B. ab Debian stretch) ist certbot (bzw. als virtuelles Paket letsencrypt) bereits in den Paketquellen.
  
-==== Installation ==== 
  
-**Debian wheezy**:+=== Debian wheezy ​=== 
 <code bash> <code bash>
 aptitude install git aptitude install git
Zeile 24: Zeile 27:
 </​code>​ </​code>​
  
-**Debian jessie**:+=== Debian jessie ​=== 
 Es müssen die jessie-backports aktiviert werden: Es müssen die jessie-backports aktiviert werden:
 <​file>​ <​file>​
Zeile 35: Zeile 39:
 </​code>​ </​code>​
  
-==== Benutzung ====+=== Ubuntu / nginx ===
  
 +<code bash>
 +apt-get update
 +apt-get install -y software-properties-common
 +add-apt-repository universe
 +add-apt-repository -y ppa:​certbot/​certbot
 +apt-get update
 +apt-get install -y python-certbot-nginx ​
 +</​code>​
 +
 +
 +==== Benutzung ====
  
-**letsencrypt aufrufen** ​(bei standalone-Variante vorher Webserver stoppen):+**letsencrypt aufrufen**:
  
 **Debian wheezy**: **Debian wheezy**:
Zeile 49: Zeile 64:
 letsencrypt certonly --rsa-key-size 3072 -d DOMAIN.tld -d www.DOMAIN.tld letsencrypt certonly --rsa-key-size 3072 -d DOMAIN.tld -d www.DOMAIN.tld
 </​code>​ </​code>​
 +
 +bei Apache + standalone-Variante vorher Webserver stoppen:
 +<​code>​letsencrypt certonly --pre-hook "​systemctl stop apache2"​ --post-hook "​systemctl start apache2"​ --rsa-key-size 3072 -d DOMAIN.tld -d www.DOMAIN.tld </​code>​
 +
 +
 +
 +=== Zertifikate verlinken ===
  
 **Zertifikate verlinken:​** **Zertifikate verlinken:​**
Zeile 57: Zeile 79:
 </​code>​ </​code>​
  
-**Apache config:** +**[[apache:​ssl|Apache ​SSL config]]**
-<​file>​ +
-SSLCACertificateFile /​etc/​apache2/​letsencryptchain.pem +
-SSLCertificateFile /​etc/​apache2/​DOMAIN.crt +
-SSLCertificateKeyFile /​etc/​apache2/​DOMAIN.key +
-</​file>​+
  
  
Zeile 94: Zeile 111:
  
 ==== automatische Verlängerung ==== ==== automatische Verlängerung ====
-Die Verlängerung lässt sich auch skripten, im einfachsten (aber nicht optimalen Fall weil Webserver gestoppt und es als root läuft): 
  
-/​etc/​crontab (oder include-Datei / Benutzer-crontab)+Die Verlängerung lässt sich auch skripten. Dazu gibt es mehrere Varianten:​ 
 + 
 +Der Befehl/das Skript sollte in ''​/​etc/​crontab'' ​(oder include-Datei / Benutzer-crontab) ​eingetragen werden. 
 + 
 +=== Apache === 
 + 
 +Apache standalone (stop+restart):​
 <​file>​ <​file>​
-# m h dom mon dow user command +12 4    1 * *   ​root ​   ​certbot renew -q --pre-hook "​systemctl stop apache2"​ --post-hook "​systemctl start apache2"​
-12 4 *  ​1 * *   ​root ​   ​/​root/​letsencrypt-autorenew.sh+
 </​file>​ </​file>​
  
-<code bash> +Es können auch mehrere Befehle (Dienste) angegeben werden: 
-#!/bin/bash + 
-service apache2 stop > /dev/null +--pre-hook "service apache2 stop ; service postfix stop
-sleep 2 + 
-letsencrypt renew > /dev/null + 
-if [ $? -ne 0 ]then +=== nginx === 
- echo "​Fehler bei letsencrypt+ 
- service apache2 start +cat ./​cron.d/​certbot 
- exit 1 +<​file>​ 
-else +0 */12 * * * root test -x /​usr/​bin/​certbot -a \! -d /​run/​systemd/​system && perl -e 'sleep int(rand(43200))'​ && certbot -q renew 
- service apache2 start +</file>
-fi +
-</code>+