Let’s Encrypt Stand 11.2015, befindet sich noch im Closed Beta Stadium. Der Aufruf des Client vereinfacht sich mit der Öffnung des Programms in die Public Beta Phase, dies soll am 03.12.2015 erfolgen. Die Idee ist, den Let’s Encrypt Client, unabhängig von produktiv Servern, in einer Debian VirtualBox laufen zu lassen.
Voraussetzung in der Apache Konfiguration des produktiven Servers.
<IfModule mod_headers.c> <Location "/.well-known/acme-challenge/*"> ForceType 'text/plain' AddDefaultCharset Off </Location> </IfModule>
Aufruf des Let’s Encrypt Client nach Download und automatischer Installation der Zusatzpakete.
:~# ./letsencrypt-auto--agree-dev-preview --server https://acme-v01.api.letsencrypt.org/directory--rsa-key-size 4096 -d localhorst.org -d www.localhorst.org -a manual certonly
Antwort des Client.
Make sure your web server displays the following content at http://www.localhorst.org/.well-known/acme-challenge/UNlz-LF37xdavu0mmNz9B2BcWHgh4LTPme6JHYUiRtc before continuing: UNlz-LF37xdavu0mmNz9B2BcWHgh4LTPme6JHYUiRtc.t4AlErS_BLsNGfouG9tLYvI2pukxJdqAjI0zd9_BYAM
Bedeutet: Domain Validated SSL. Im Documentroot des entsprechenden Webservers die Überprüfungsseite einrichten.
:~$ echo -n "UNlz-LF37xdavu0mmNz9B2BcWHgh4LTPme6JHYUiRtc.t4AlErS_BLsNGfouG9tLYvI2pukxJdqAjI0zd9_BYAM" > .well-known/acme-challenge/UNlz-LF37xdavu0mmNz9B2BcWHgh4LTPme6JHYUiRtc
Überprüfung der Erreichbarkeit mittels curl.
:~$ curl -i http://localhorst.org/.well-known/acme-challenge/UNlz-LF37xdavu0mmNz9B2BcWHgh4LTPme6JHYUiRtc HTTP/1.1 200 OK Date: Tue, 17 Nov 2015 10:14:50 GMT Server: Apache Last-Modified: Tue, 17 Nov 2015 10:12:31 GMT ETag: "57-524b9c382c66b" Accept-Ranges: bytes Content-Length: 87 Vary: Accept-Encoding Content-Type: text/plain UNlz-LF37xdavu0mmNz9B2BcWHgh4LTPme6JHYUiRtc.t4AlErS_BLsNGfouG9tLYvI2pukxJdqAjI0zd9_BYAMhp@debtest:~/test/letsencrypt$
Der echo -n Vorgang muss für jede Domain die mittels -d hinzugefügt wurde wiederholt werden. Nach erfolgreicher Beantragung und Rückmeldung des Clients, liegen die Zertifikats- und Schlüsseldateien im Verzeichniss.
:~# cd /etc/letsencrypt/archive/<domainname> -rw-r--r-- 1 root root 2232 Nov 17 11:20 cert1.pem -rw-r--r-- 1 root root 1675 Nov 17 11:20 chain1.pem -rw-r--r-- 1 root root 3907 Nov 17 11:20 fullchain1.pem -rw-r--r-- 1 root root 3272 Nov 17 11:20 privkey1.pem
Diese Dateien müssen auf den produktiven Server kopiert und der Apache Konfiguration bekannt gemacht werden. Es werden nur diese beiden benötigt.
SSLEngine On SSLCertificateFile /etc/ssl/fullchain1.pem SSLCertificateKeyFile /etc/ssl/privkey1.pem