Benutzer-Werkzeuge

Webseiten-Werkzeuge


tachtler:let_s_encrypt_-_hpkp

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
tachtler:let_s_encrypt_-_hpkp [2018/10/12 12:14] klaustachtler:let_s_encrypt_-_hpkp [2018/10/12 14:22] – [Let's Encrypt - HPKP] klaus
Zeile 11: Zeile 11:
 | Scott Helme   | [[https://scotthelme.co.uk/hpkp-http-public-key-pinning/|HPKP: HTTP Public Key Pinning]] | | Scott Helme   | [[https://scotthelme.co.uk/hpkp-http-public-key-pinning/|HPKP: HTTP Public Key Pinning]] |
 | Let's Encrypt | [[https://letsencrypt.org/certificates/|Chain of Trust]]                                 | | Let's Encrypt | [[https://letsencrypt.org/certificates/|Chain of Trust]]                                 |
-| Report URI    | [[https://report-uri.com/home/pkp_hash|Create your HPKP hash]]                           +| Report URI    | [[https://report-uri.com/home/pkp_hash|Report URI - Create your HPKP hash]]              
-re{raise}ace  | [[https://reraise.eu/2016/06/30/let-s-encrypt-hpkp-in-der-praxis-einsetzen-best-practice|Let's Encrypt & Public Key Pinning in der Praxis einsetzen]] |+Report URI    | [[https://report-uri.com/home/pkp_analyse|Report URI - Analyse your HPKP policy]]        | 
 +| Mozilla       | [[https://developer.mozilla.org/de/docs/Web/Security/Public_Key_PinningMDN web docs - Public Key Pinning]] |
  
 ===== Vorbereitung ===== ===== Vorbereitung =====
Zeile 417: Zeile 418:
  
 <code> <code>
 +# openssl x509 -pubkey < /opt/dehydrated-master/certs/tachtler.net/tachtler.net.pem | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | base64
 +reoYu6y4qPE3Blm9PMCjogm8J7/vgpQsOt51hiLKCl8=
 </code> </code>
  
Zeile 422: Zeile 425:
  
 <code> <code>
 +# openssl x509 -pubkey < /opt/dehydrated-master/certs/tachtler.net/Let_s_Encrypt_Authority_X3.pem | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | base64
 +YLh1dUR9y6Kja30RrAn7JKnbQG/uEtLMkBgFF2Fuihg=
 </code> </code>
  
Zeile 427: Zeile 432:
  
 <code> <code>
 +# openssl x509 -pubkey < /opt/dehydrated-master/certs/tachtler.net/Let_s_Encrypt_Authority_X4.pem | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | base64
 +sRHdihwgkaib1P1gxX8HFszlD+7/gTfNvuAybgLPNis=
 </code> </code>
  
Zeile 432: Zeile 439:
  
 <code> <code>
 +# openssl x509 -pubkey < /opt/dehydrated-master/certs/tachtler.net/DST_Root_CA_X3.pem | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | base64
 +Vjs8r4z+80wjNcr1YKepWQboSIRi63WsWXhIMN+eWys=
 </code> </code>
 +
 +===== Apache Konfiguration =====
 +
 +Nachfolgender eine kurze Einführung in den Aufbau eines **HPKP**-Eintrags:
 +
 +^ Parameter                             ^ Erläuterung                                  |
 +| ''Header always set Public-Key-Pins'' | Apache-Webserver Header Direktive |
 +| ''pin-sha256''                        | Der Parameter beinhaltet einen ''base64'' kodierten "Subject Public Key Information" (SPKI) Fingerprint. Es ist auch möglich mehrere Pins zu verschiedenen öffentlichen Schlüsseln zu definieren. Einige Browser werden hier zukünftig neben SHA-256 evtl. weitere Hash-Algorithmen erlauben. |
 +| ''max-age''                           | Die Zeit in Sekunden, die ein Browser sich merken soll, dass auf diese Seite nur bei Benutzung eines der öffentlichen Schlüssel zugegriffen werden darf. |
 +| ''includeSubdomains''                 | **Optional** - Wenn dieser optionale Parameter angegeben wird, wird die Regel auch auf alle Subdomains der Seite angewandt. |
 +| ''report-uri''                        | **Optional** - Wenn dieser optionale Parameter angegeben wird, werden Pinvalidierungsfehlschläge an die angegebene URL gemeldet. |
 +
 +==== /etc/httpd/conf/httpd.conf ====
 +
 +Nachfolgend kann durch die ermittelten **FINGERPRINTs** nun der **HPKP**-Eintrag für die Konfiguration wie folgt erstellt werden:
 +<code apache>
 +<IfModule headers_module>
 +        Header set Public-Key-Pins "pin-sha256=\"reoYu6y4qPE3Blm9PMCjogm8J7/vgpQsOt51hiLKCl8=\"; pin-sha256=\"YLh1dUR9y6Kja30RrAn7JKnbQG/uEtLMkBgFF2Fuihg=\"; pin-sha256=\"sRHdihwgkaib1P1gxX8HFszlD+7/gTfNvuAybgLPNis=\"; pin-sha256=\"Vjs8r4z+80wjNcr1YKepWQboSIRi63WsWXhIMN+eWys=\"; max-age=10; includeSubdomains;"
 +</IfModule>
 +</code>
 +
 +Nachfolgende Seite welche unter dem externen Link
 +  * [[https://report-uri.com/home/pkp_analyse|Report URI - Analyse your HPKP policy]]
 +kann dazu verwendet werden, um die erfolgreiche Implementierung von **HPKP** zu validieren.
 +
  
tachtler/let_s_encrypt_-_hpkp.txt · Zuletzt geändert: 2021/03/06 11:00 von klaus