centos:ca-trust

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
Nächste ÜberarbeitungBeide Seiten der Revision
centos:ca-trust [21.02.2015 19:47. ] – Vertrauensmodelle in Public-Key-Infrastrukturen #X.509 #CA #TLS djangocentos:ca-trust [10.02.2019 17:25. ] – [CA-Zertifikate unter CentOS 7] django
Zeile 1: Zeile 1:
-====== Vertrauensmodelle in Public-Key-Infrastrukturen ====== 
-Bei der asymetrischen Verschlüsselung, wie sie bei SSL/TLS gesicherter Kommunikation zum Einsatz kommt, benötigt der sendende Kommunikationspartner den öffentlichen Schlüssel (public key) des Empfängers. Bei dieser Kommunikation ist es äusserst wichtig, dass die Echtheit des Schlüssels gewährleistet, sprich auch überprüft werden kann. Diese Überprüfung erfolgt mit digitalen Zertifikaten, die die Echtheit eines öffentlichen Schlüssels sowie den Geltungsbereich und die Anwendungsbereich für das Zertifikat bestätigen.  
  
-{{ :centos:tls-003.png?direct&777 |BILD: schematische Darstellung des Vertrauensverhältnis beim PKI Modell}} 
- 
-Bei einer reinen 1:1 Kommunikation können sich beide Kommunikationspartner, oder der Client mit dem Server dieses Vertrauen selbst gegenseitig aussprechen. In den allermeisten Fällen wird es aber bei der verschlüsselten und vertraulichen Kommunikation um eine 1:n Kommunikation handeln; d.h. ein Server wird mit unter sehr vielen Clients Daten austauschen. Eine gegenseitige Vertrauensbildung ist hier in den allermeisten Fällen nicht realistisch und praktikabel durchführbar. 
- 
-Für die Überprüfung der Echtheit der zur Verschlüsselung verwendeten X.509-Zertifikates wird wiederum ein digitales Zertifikat einer **CA**((**C**ertificate **A**uthority)) oder kurz Zertifizierungsstelle verwendet. Diese CA bestätigt somit die Echtheit des Zertifikates. Eine Zertifikat (Root Zertifikat) einer CA selbst kann wiederum durch eine weitere **CA** beglaubigt worden sein. Somit ergibt sich eine Kette von Zertifikaten, bei der jedes Zertifikat mit dem Zertifikat der übergeordneten Stelle authentifiziert werden kann. Diese Vertrauenskette wird auch Zertifizierungspfad oder **//trusted chain//** bezeichnet. 
- 
-{{ :centos:tls-004.png?direct&777 |BILD: schematische Darstellung eines X.509 Zertifikates}} 
- 
-Ohne dem übergeordneten **Root Zertifikat** kann zwar verschlüsselt kommuniziert werden, wir wissen aber dabei nicht, ob der zur Verschlüsselung zugrunde liegender Schlüsselmaterials valide ist und ob der Gesprächspartner derjenige ist, den er vorzugeben scheint. 
- 
-<WRAP center round important 85%> 
- 
-Unserem Kommunikationssystem, egal ob das nun ein WEB-Browser oder ein Web- oder Mailserver ist, müssen wir nun also noch zwei Dinge beibringen.  
-  - **Root Zertifikate**: \\ Wir müssen die benötigten Root-Zertifikate unserem System zur Verfügung stellen. 
-  - **CA Vertrauen**: \\ Der jeweiligen **CA** und dessen **Root-Zertifikat** müssen wir noch explizit unser Vertrauen aussprechen 
-Ohne diese beiden essentiellen Maßnahmen, können wir zwar verschlüsselt Kommunizieren, wir wissen aber nicht, ob der Adressat derjenige ist den wir meinen und ob dieser die Daten auch wirklich entschlüsseln kann! 
-</WRAP> 
- 
-===== CA-Zertifikate unter CentOS 7 ===== 
-Die wichtigsten Zertifizierungsstellen und deren Root-Zertifikate müssen wir uns nun nicht alle einzeln auf diversen webseiten zusammensuchen. Mit Hilfe des RPM-Paketes **ca-certificates** können wir zum einen die wichtigsten, von der [[https://www.mozilla.org/en-US/foundation/|Mozilla Foundation]] ausgewählten, CAs zurückgreifen. 
-Bei der Grundinstallation unseres systems wurde bereits dieses Paket installiert; was es mitbrachte zeigt uns der folgende Aufruf. 
-   # rpm -qil ca-certificates 
- 
-<code>Name        : ca-certificates 
-Version     : 2014.1.98 
-Release     : 70.0.el7_0 
-Architecture: noarch 
-Install Date: Mon 09 Feb 2015 03:36:17 PM CET 
-Group       : System Environment/Base 
-Size        : 1029265 
-License     : Public Domain 
-Signature   : RSA/SHA256, Thu 18 Sep 2014 03:53:56 PM CEST, Key ID 24c6a8a7f4a80eb5 
-Source RPM  : ca-certificates-2014.1.98-70.0.el7_0.src.rpm 
-Build Date  : Thu 18 Sep 2014 02:11:36 PM CEST 
-Build Host  : worker1.bsys.centos.org 
-Relocations : (not relocatable) 
-Packager    : CentOS BuildSystem <http://bugs.centos.org> 
-Vendor      : CentOS 
-URL         : http://www.mozilla.org/ 
-Summary     : The Mozilla CA root certificate bundle 
-Description : 
-This package contains the set of CA certificates chosen by the 
-Mozilla Foundation for use with the Internet PKI. 
-/etc/pki/ca-trust 
-/etc/pki/ca-trust/README 
-/etc/pki/ca-trust/extracted 
-/etc/pki/ca-trust/extracted/README 
-/etc/pki/ca-trust/extracted/java 
-/etc/pki/ca-trust/extracted/java/README 
-/etc/pki/ca-trust/extracted/java/cacerts 
-/etc/pki/ca-trust/extracted/openssl 
-/etc/pki/ca-trust/extracted/openssl/README 
-/etc/pki/ca-trust/extracted/openssl/ca-bundle.trust.crt 
-/etc/pki/ca-trust/extracted/pem 
-/etc/pki/ca-trust/extracted/pem/README 
-/etc/pki/ca-trust/extracted/pem/email-ca-bundle.pem 
-/etc/pki/ca-trust/extracted/pem/objsign-ca-bundle.pem 
-/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem 
-/etc/pki/ca-trust/source 
-/etc/pki/ca-trust/source/README 
-/etc/pki/ca-trust/source/anchors 
-/etc/pki/ca-trust/source/blacklist 
-/etc/pki/java 
-/etc/pki/java/cacerts 
-/etc/pki/tls 
-/etc/pki/tls/cert.pem 
-/etc/pki/tls/certs 
-/etc/pki/tls/certs/ca-bundle.crt 
-/etc/pki/tls/certs/ca-bundle.trust.crt 
-/etc/ssl 
-/etc/ssl/certs 
-/usr/bin/update-ca-trust 
-/usr/share/man/man8/update-ca-trust.8.gz 
-/usr/share/pki/ca-trust-source 
-/usr/share/pki/ca-trust-source/README 
-/usr/share/pki/ca-trust-source/anchors 
-/usr/share/pki/ca-trust-source/blacklist 
-/usr/share/pki/ca-trust-source/ca-bundle.neutral-trust.crt 
-/usr/share/pki/ca-trust-source/ca-bundle.supplement.p11-kit 
-/usr/share/pki/ca-trust-source/ca-bundle.trust.crt 
-</code> 
  
 ===== Dokumentation ===== ===== Dokumentation =====
Zeile 407: Zeile 324:
 -----END CERTIFICATE----- -----END CERTIFICATE-----
 </file> </file>
 +
 +Das gleiche machen wir nun mit dem Class3 Zertifikat von CAcert.
 +   # wget -O CAcert_class3.pem --no-check-certificate https://www.cacert.org/certs/class3.crt
 +
 +Nun haben wir auch das Class3 Root-Zertifikat von CAcert in unserem Verzeichnis.
 +   # less CAcert_class3.pem
 +<file CAcert_class3.pem>-----BEGIN CERTIFICATE-----
 +MIIHWTCCBUGgAwIBAgIDCkGKMA0GCSqGSIb3DQEBCwUAMHkxEDAOBgNVBAoTB1Jv
 +b3QgQ0ExHjAcBgNVBAsTFWh0dHA6Ly93d3cuY2FjZXJ0Lm9yZzEiMCAGA1UEAxMZ
 +Q0EgQ2VydCBTaWduaW5nIEF1dGhvcml0eTEhMB8GCSqGSIb3DQEJARYSc3VwcG9y
 +dEBjYWNlcnQub3JnMB4XDTExMDUyMzE3NDgwMloXDTIxMDUyMDE3NDgwMlowVDEU
 +MBIGA1UEChMLQ0FjZXJ0IEluYy4xHjAcBgNVBAsTFWh0dHA6Ly93d3cuQ0FjZXJ0
 +Lm9yZzEcMBoGA1UEAxMTQ0FjZXJ0IENsYXNzIDMgUm9vdDCCAiIwDQYJKoZIhvcN
 +AQEBBQADggIPADCCAgoCggIBAKtJNRFIfNImflOUz0Op3SjXQiqL84d4GVh8D57a
 +iX3h++tykA10oZZkq5+gJJlz2uJVdscXe/UErEa4w75/ZI0QbCTzYZzA8pD6Ueb1
 +aQFjww9W4kpCz+JEjCUoqMV5CX1GuYrz6fM0KQhF5Byfy5QEHIGoFLOYZcRD7E6C
 +jQnRvapbjZLQ7N6QxX8KwuPr5jFaXnQ+lzNZ6MMDPWAzv/fRb0fEze5ig1JuLgia
 +pNkVGJGmhZJHsK5I6223IeyFGmhyNav/8BBdwPSUp2rVO5J+TJAFfpPBLIukjmJ0
 +FXFuC3ED6q8VOJrU0gVyb4z5K+taciX5OUbjchs+BMNkJyIQKopPWKcDrb60LhPt
 +XapI19V91Cp7XPpGBFDkzA5CW4zt2/LP/JaT4NsRNlRiNDiPDGCbO5dWOK3z0luL
 +oFvqTpa4fNfVoIZwQNORKbeiPK31jLvPGpKK5DR7wNhsX+kKwsOnIJpa3yxdUly6
 +R9Wb7yQocDggL9V/KcCyQQNokszgnMyXS0XvOhAKq3A6mJVwrTWx6oUrpByAITGp
 +rmB6gCZIALgBwJNjVSKRPFbnr9s6JfOPMVTqJouBWfmh0VMRxXudA/Z0EeBtsSw/
 +LIaRmXGapneLNGDRFLQsrJ2vjBDTn8Rq+G8T/HNZ92ZCdB6K4/jc0m+YnMtHmJVA
 +BfvpAgMBAAGjggINMIICCTAdBgNVHQ4EFgQUdahxYEyIE/B42Yl3tW3Fid+8sXow
 +gaMGA1UdIwSBmzCBmIAUFrUyG9TH8+DmjvO90rA67rI5GNGhfaR7MHkxEDAOBgNV
 +BAoTB1Jvb3QgQ0ExHjAcBgNVBAsTFWh0dHA6Ly93d3cuY2FjZXJ0Lm9yZzEiMCAG
 +A1UEAxMZQ0EgQ2VydCBTaWduaW5nIEF1dGhvcml0eTEhMB8GCSqGSIb3DQEJARYS
 +c3VwcG9ydEBjYWNlcnQub3JnggEAMA8GA1UdEwEB/wQFMAMBAf8wXQYIKwYBBQUH
 +AQEEUTBPMCMGCCsGAQUFBzABhhdodHRwOi8vb2NzcC5DQWNlcnQub3JnLzAoBggr
 +BgEFBQcwAoYcaHR0cDovL3d3dy5DQWNlcnQub3JnL2NhLmNydDBKBgNVHSAEQzBB
 +MD8GCCsGAQQBgZBKMDMwMQYIKwYBBQUHAgEWJWh0dHA6Ly93d3cuQ0FjZXJ0Lm9y
 +Zy9pbmRleC5waHA/aWQ9MTAwNAYJYIZIAYb4QgEIBCcWJWh0dHA6Ly93d3cuQ0Fj
 +ZXJ0Lm9yZy9pbmRleC5waHA/aWQ9MTAwUAYJYIZIAYb4QgENBEMWQVRvIGdldCB5
 +b3VyIG93biBjZXJ0aWZpY2F0ZSBmb3IgRlJFRSwgZ28gdG8gaHR0cDovL3d3dy5D
 +QWNlcnQub3JnMA0GCSqGSIb3DQEBCwUAA4ICAQApKIWuRKm5r6R5E/CooyuXYPNc
 +7uMvwfbiZqARrjY3OnYVBFPqQvX56sAV2KaC2eRhrnILKVyQQ+hBsuF32wITRHhH
 +Va9Y/MyY9kW50SD42CEH/m2qc9SzxgfpCYXMO/K2viwcJdVxjDm1Luq+GIG6sJO4
 +D+Pm1yaMMVpyA4RS5qb1MyJFCsgLDYq4Nm+QCaGrvdfVTi5xotSu+qdUK+s1jVq3
 +VIgv7nSf7UgWyg1I0JTTrKSi9iTfkuO960NAkW4cGI5WtIIS86mTn9S8nK2cde5a
 +lxuV53QtHA+wLJef+6kzOXrnAzqSjiL2jA3k2X4Ndhj3AfnvlpaiVXPAPHG0HRpW
 +Q7fDCo1y/OIQCQtBzoyUoPkD/XFzS4pXM+WOdH4VAQDmzEoc53+VGS3FpQyLu7Xt
 +hbNc09+4ufLKxw0BFKxwWMWMjTPUnWajGlCVI/xI4AZDEtnNp4Y5LzZyo4AQ5OHz
 +0ctbGsDkgJp8E3MGT9ujayQKurMcvEp4u+XjdTilSKeiHq921F73OIZWWonO1sOn
 +ebJSoMbxhbQljPI/lrMQ2Y1sVzufb4Y6GIIiNsiwkTjbKqGTqoQ/9SdlrnPVyNXT
 +d+pLncdBu8fA46A/5H2kjXPmEkvfoXNzczqA6NXLji/L6hOn1kGLrPo8idck9U60
 +4GGSt/M3mMS+lqO3ig==
 +-----END CERTIFICATE-----
 +</file> 
  
 <WRAP center round important 90%> <WRAP center round important 90%>
Zeile 414: Zeile 380:
    # openssl x509 -noout -fingerprint -in CAcert_class1.pem     # openssl x509 -noout -fingerprint -in CAcert_class1.pem 
  
-   SHA1 Fingerprint=13:5C:EC:36:F4:9C:B8:E9:3B:1A:B2:70:CD:80:88:46:76:CE:8F:33+  SHA1 Fingerprint=13:5C:EC:36:F4:9C:B8:E9:3B:1A:B2:70:CD:80:88:46:76:CE:8F:33
  
 Diesen Fingerprint vergleichen wir nun mit den Angaben von [[http://cacert.org|CAcert]] auf deren [[https://www.cacert.org/index.php?id=3|Homepage]]. Dort finden wir folgende Daten: Diesen Fingerprint vergleichen wir nun mit den Angaben von [[http://cacert.org|CAcert]] auf deren [[https://www.cacert.org/index.php?id=3|Homepage]]. Dort finden wir folgende Daten:
-   SHA1 Fingerabdruck: 13:5C:EC:36:F4:9C:B8:E9:3B:1A:B2:70:CD:80:88:46:76:CE:8F:33+  SHA1 Fingerabdruck: 13:5C:EC:36:F4:9C:B8:E9:3B:1A:B2:70:CD:80:88:46:76:CE:8F:33
  
 <WRAP center round alert 100%> <WRAP center round alert 100%>
Zeile 424: Zeile 390:
 </WRAP> </WRAP>
  
-Da **__beide Fingerprints__** gleich sind, können holen wir uns noch das zweite CAcert Class3 Zertifikat und verfahren dabei wie beim ersten Zertifikat. Ist Fingerprint Vergleich beim Class 3 Zertifikat auch gleich, können wir mit dem eigentlichem Importvorgang der beiden Zertifikate fortfahren! +Da **__beide Fingerprints__** gleich sind, können wir nun noch mit dem zweite CAcert Class3 Zertifikat genau so verfahren dabei wie beim ersten Zertifikat. 
 +   # openssl x509 -noout -fingerprint -in CAcert_class3.pem 
 + 
 +  SHA1 Fingerprint=AD:7C:3F:64:FC:44:39:FE:F4:E9:0B:E8:F4:7C:6C:FA:8A:AD:FD:CE 
 + 
 +Diesen Fingerprint vergleichen wir nun mit den Angaben von [[http://cacert.org|CAcert]] auf deren [[https://www.cacert.org/index.php?id=3|Homepage]]. Dort finden wir folgende Daten: 
 +  SHA1 Fingerabdruck: AD:7C:3F:64:FC:44:39:FE:F4:E9:0B:E8:F4:7C:6C:FA:8A:AD:FD:CE 
 + 
 +Ist Fingerprint Vergleich beim Class 3 Zertifikat auch gleich, können wir mit dem eigentlichem Importvorgang der beiden Zertifikate fortfahren! 
  
 </WRAP> </WRAP>
Zeile 462: Zeile 436:
    # ca-list /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem | grep -i cacert.org    # ca-list /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem | grep -i cacert.org
  
-   subject= /O=Root CA/OU=http://www.cacert.org/CN=CA Cert Signing Authority/emailAddress=support@cacert.org +  subject= /O=Root CA/OU=http://www.cacert.org/CN=CA Cert Signing Authority/emailAddress=support@cacert.org 
-   subject= /O=CAcert Inc./OU=http://www.CAcert.org/CN=CAcert Class 3 Root+  subject= /O=CAcert Inc./OU=http://www.CAcert.org/CN=CAcert Class 3 Root
  
 ~~AUTOTWEET:~~ ~~AUTOTWEET:~~