TLS: Unterschied zwischen den Versionen

Aus C3D2
Zur Navigation springen Zur Suche springen
K (Versuch dem aktuellen Stand näher zu kommen)
 
(5 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
== [[TSL]] ==
[https://wiki.c3d2.de/w/index.php?title=TSL&diff=22691&oldid=22665 let me troll that for you]
== Zertifikate ==
== Zertifikate ==


Wir benutzen für alle webbasierten Dienste [https://letsencrypt.org/ Letsencrypt].
Wir benutzen für alle webbasierten Dienste [https://letsencrypt.org/ Letsencrypt].
Die Zertifikate werden aktuell zentral auf [[wetu]] im web container generiert.
Die Zertifikate werden aktuell zentral auf [[inbert]] im LXC Container web generiert, die Container jabber und mail haben einen Timer für renew.


Dafür werden alle ACME-Anfragen (.well-known/acme-challenge) auf Port 80 auf ein für
Dafür werden alle ACME-Anfragen (.well-known/acme-challenge) auf Port 80 auf ein für
Zeile 25: Zeile 28:
   letsencrypt certonly --renew-by-default --webroot --webroot-path /var/www/letsencrypt/ --text \
   letsencrypt certonly --renew-by-default --webroot --webroot-path /var/www/letsencrypt/ --text \
     -d c3d2.de \
     -d c3d2.de \
    -d netzbiotop.org \
     -d datenspuren.de \
     -d datenspuren.de \
     -d git.c3d2.de \
     -d git.c3d2.de \
Zeile 45: Zeile 49:
   # letsencrypt.timer
   # letsencrypt.timer
   [Unit]
   [Unit]
   Description=Renew Let's Encrypt certificate monthly https://letsencrypt.readthedocs.org/en/latest/using.html#renewal
   Description=Renew Let's Encrypt certificate monthly https://wiki.c3d2.de/TLS#Zertifikate
   [Timer]
   [Timer]
   OnCalendar=monthly
   OnCalendar=monthly
Zeile 54: Zeile 58:
   # letsencrypt.service
   # letsencrypt.service
   [Unit]
   [Unit]
   Description=Renew Let's Encrypt certificate monthly https://letsencrypt.readthedocs.org/en/latest/using.html#renewal
   Description=Renew Let's Encrypt certificate monthly https://wiki.c3d2.de/TLS#Zertifikate
   [Service]
   [Service]
   Type=oneshot
   Type=oneshot
Zeile 65: Zeile 69:
           --text \
           --text \
           -d c3d2.de \
           -d c3d2.de \
          -d netzbiotop.org \
           #...
           #...
           -d dresden.ccc.de
           -d dresden.ccc.de
   ExecStartPost=/usr/bin/systemctl reload apache2
   ExecStartPost=/bin/systemctl reload apache2
 
Um den Service manuell nach Aktualisierungen an der auszuführen, zuvor <code>systemctl daemon-reload</code> ausführen und anschließend <code>systemctl start letsencrypt</code> starten.


== SSL-Test ==
== SSL-Test ==

Aktuelle Version vom 8. Juli 2021, 08:02 Uhr

TSL

let me troll that for you

Zertifikate

Wir benutzen für alle webbasierten Dienste Letsencrypt. Die Zertifikate werden aktuell zentral auf inbert im LXC Container web generiert, die Container jabber und mail haben einen Timer für renew.

Dafür werden alle ACME-Anfragen (.well-known/acme-challenge) auf Port 80 auf ein für letsencrypt schreibbares Verzeichnis umgeleitet. Alle anderen Anfragen werden auf HTTPS weitergeleitet.

 #/etc/apache2/sites-enabled/000-letsencrypt
 <VirtualHost *:80>
   ServerAlias *
   RewriteEngine On
   RewriteCond %{HTTPS} !=on
   RewriteCond %{REQUEST_URI} !^/.well-known/acme-challenge/.*
   RewriteRule ^(.*) https://%{SERVER_NAME}$1 [R,L]
   Alias "/.well-known/acme-challenge" "/var/www/letsencrypt/.well-known/acme-challenge"
   <Directory "/var/www/letsencrypt/.well-known/acme-challenge">
     Header set Content-Type "application/jose+json"
   </Directory>
 </VirtualHost>

Die Zertifikate wurden folgendermaßen generiert:

 letsencrypt certonly --renew-by-default --webroot --webroot-path /var/www/letsencrypt/ --text \
   -d c3d2.de \
   -d netzbiotop.org \
   -d datenspuren.de \
   -d git.c3d2.de \
   -d media.c3d2.de \ 
   -d offen.c3d2.de \
   -d pentamedia.org \
   -d pentapad.c3d2.de \
   -d ratskarte.offenesdresden.de \
   -d redmine.c3d2.de \
   -d webmail.c3d2.de \
   -d wiki.c3d2.de \
   -d www.c3d2.de \
   -d www.datenspuren.de \
   -d www.pentamedia.org \
   -d cccdd.de \
   -d dresden.ccc.de

Das Zertifikat werden automatisch am Anfang eines Monat erneuert:

 # letsencrypt.timer
 [Unit]
 Description=Renew Let's Encrypt certificate monthly https://wiki.c3d2.de/TLS#Zertifikate
 [Timer]
 OnCalendar=monthly
 Persistent=true
 [Install]
 WantedBy=multi-user.target
 # letsencrypt.service
 [Unit]
 Description=Renew Let's Encrypt certificate monthly https://wiki.c3d2.de/TLS#Zertifikate
 [Service]
 Type=oneshot
 ExecStart=/usr/bin/letsencrypt certonly \
         --agree-tos \
         --renew-by-default \
         --webroot \
         --webroot-path /var/www/letsencrypt/ \
         --email joerg@higgsboson.tk \
         --text \
         -d c3d2.de \
         -d netzbiotop.org \
         #...
         -d dresden.ccc.de
  ExecStartPost=/bin/systemctl reload apache2

Um den Service manuell nach Aktualisierungen an der auszuführen, zuvor systemctl daemon-reload ausführen und anschließend systemctl start letsencrypt starten.

SSL-Test

Interessant und informativ bezüglich des Konfigurationstests ist definitiv diese Seite von Qualys.

Siehe auch