letsencrypt

letsencrypt Zertifikat auf Beagle Bone Black verlängern

Was vor drei Monaten geschah

Das Zertifikat ist abgelaufen und muss jetzt erneuert werden.

Auf der virtuellen Maschine Kubuntu

$ cd letsencrypt/
$ ./letsencrypt-auto --rsa-key-size 4096 --manual certonly

Eingeben der Domain-Namen

bone.nfix.de

auf dem Beaglebone ins Grundverzeichnis www wechseln und die von letsencrypt erwartete Datei anlegen

$ sudo -i
# cd /var/www/
# printf "%s" KENNUNGS-STRING > .well-known/acme-challenge/KENNUNGS-DATEI

Auf der virtuellen Maschine

  • Enter,
  • Gratulation
  • Your cert will expire on 2016–06–07.
  • Die erzeugten Schlüssel auf den Beaglebone in das Verzeichnis Schlüssel kopieren
$ sudo -i
# cd /etc/letsencrypt/archive/bone.nfix.de/
# scp * wnf@bone2013:schluessel
cert1.pem                                                  100% 2134     2.1KB/s   00:00
cert2.pem                                                  100% 2134     2.1KB/s   00:00
chain1.pem                                                 100% 1675     1.6KB/s   00:00
chain2.pem                                                 100% 1675     1.6KB/s   00:00
fullchain1.pem                                             100% 3809     3.7KB/s   00:00
fullchain2.pem                                             100% 3809     3.7KB/s   00:00
privkey1.pem                                               100% 3272     3.2KB/s   00:00
privkey2.pem                                               100% 3276     3.2KB/s   00:00

Auf dem Beaglevone Den Http-Server anhalten:

$ sudo -i
# service lighttpd stop
# cd /home/wnf/schluessel
# cat privkey2.pem cert2.pem > ssl.pem
# cd /etc/letsencrypt/live/
# cp /home/wnf/schluessel/ssl.pem .
# cp /home/wnf/schluessel/fullchain2.pem ./fullchain.pem

Den Http-Server wieder starten:

# service lighttpd start

Und schon hat der Beaglebone wieder ein gültiges Zertifikat: https://bone.nfix.de/

Auf dem Beaglebone den lighttp-Server für https konfigurieren

Literatur

Voraussetzung

In der VM eine dhparam.pem erstellen (dauert auf dem BBB zu lange)

$ openssl dhparam -out dhparam.pem 4096

die Dateien auf den Beaglebone kopieren

# scp dhparam.pem wnf@bone2013:schluessel
$ sudo -i
# service lighttpd stop

SSL für lighttpd auf dem Beaglebone einrichten

# cd /home/wnf/schluessel
# cat privkey1.pem cert1.pem > ssl.pem
# mkdir /etc/letsencrypt/live/
# cd /etc/letsencrypt/live/
# cp /home/wnf/schluessel/ssl.pem .
# cp /home/wnf/schluessel/fullchain1.pem ./fullchain.pem
# cd /etc/ssl/certs/
# cp /home/wnf/schluessel/dhparam.pem .
# cd /etc/lighttpd/conf-enabled
# touch letsencrypt.conf
# nano letsencrypt.conf
$SERVER["socket"] == ":443" {
     ssl.engine                  = "enable"
     ssl.pemfile                 = "/etc/letsencrypt/live/ssl.pem"
     ssl.ca-file                 =  "/etc/letsencrypt/live/fullchain.pem"
     ssl.dh-file = "/etc/ssl/certs/dhparam.pem"
     ssl.ec-curve = "secp384r1"
     ssl.honor-cipher-order = "enable"
     ssl.cipher-list = "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH"
     ssl.use-compression = "disable"
     setenv.add-response-header = (
    "Strict-Transport-Security" => "max-age=63072000; includeSubdomains; preload",
    "X-Frame-Options" => "DENY",
    "X-Content-Type-Options" => "nosniff"
)
ssl.use-sslv2 = "disable"
ssl.use-sslv3 = "disable"
}

letsencrypt Zertifikat auf Beagle Bone Black

Literatur

Da der letsencrypt-Client auf dem Beaglebone nicht läuft, habe ich die Anforderung des Zertifikats auf einer Virtuellen Maschine Kubuntu 15.10 vorgenommen.

Das Zertifikat wird auf der VM erstellt, jedoch wird durch letsencrypt der Beaglebone über http nach einer bestimmten Datei gefragt, um sicher zu stellen, dass man auch der Besitzer dieser Domain ist.

Auf der VM

$ git clone https://github.com/letsencrypt/letsencrypt
$ cd letsencrypt
$ ./letsencrypt-auto  --rsa-key-size 4096 --manual certonly

jetzt die gewünschte Adresse eintragen und die weiteren Anweisungen von letsencrypt abarbeiten:

auf dem Beaglebone ins Grundverzeichnis www wechseln und die von letsencrypt erwartete Datei anlegen

# cd /var/www/
# printf "%s" KENNUNGS-STRING > .well-known/acme-challenge/KENNUNGS-DATEI

Gratulation

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at
   /etc/letsencrypt/live/bone.nfix.de/fullchain.pem. Your cert will
   expire on 2016-03-05. To obtain a new version of the certificate in
   the future, simply run Let's Encrypt again.
 - If like Let's Encrypt, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

die Dateien auf den Beaglebone kopieren

# cd /etc/letsencrypt/archive/bone.nfix.de/
# ll
insgesamt 24
drwxr-xr-x 2 root root 4096 Dez  6 11:21 ./
drwx------ 3 root root 4096 Dez  6 11:21 ../
-rw-r--r-- 1 root root 2134 Dez  6 11:21 cert1.pem
-rw-r--r-- 1 root root 1675 Dez  6 11:21 chain1.pem
-rw-r--r-- 1 root root 3809 Dez  6 11:21 fullchain1.pem
-rw-r--r-- 1 root root 3272 Dez  6 11:21 privkey1.pem
# scp * wnf@bone2013:schluessel

Weiter mit Auf dem Beaglebone den lighttp-Server für https konfigurieren