Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
openssl [2025/07/02 11:10] jango [CSR] |
openssl [2025/07/03 11:59] (aktuell) jango [ExtendedKeyUsage] |
||
---|---|---|---|
Zeile 111: | Zeile 111: | ||
< | < | ||
openssl req -x509 -nodes -newkey rsa:4096 -keyout server.key -out server.crt -days 365 -config openssl.cnf | openssl req -x509 -nodes -newkey rsa:4096 -keyout server.key -out server.crt -days 365 -config openssl.cnf | ||
+ | </ | ||
+ | |||
+ | ====Key Usage==== | ||
+ | |||
+ | <box green> | ||
+ | |||
+ | keyUsage ist eine X.509 v3 Extension, die festlegt, welche kryptografischen Operationen der Schlüssel ausführen darf. | ||
+ | |||
+ | ===KeyUsage=== | ||
+ | |||
+ | ^Wert^Bedeutung^ | ||
+ | | digitalSignature | Unterschreiben von Daten (z.B. TLS-Handshake, | ||
+ | | nonRepudiation | ||
+ | | keyEncipherment | ||
+ | | dataEncipherment | Direktes Verschlüsseln von Nutzdaten | ||
+ | | keyAgreement | ||
+ | | keyCertSign | ||
+ | | cRLSign | ||
+ | | encipherOnly | ||
+ | | decipherOnly | ||
+ | |||
+ | ===ExtendedKeyUsage=== | ||
+ | |||
+ | | Wert | Bedeutung | ||
+ | | **serverAuth** | ||
+ | | **clientAuth** | ||
+ | | **codeSigning** | ||
+ | | **emailProtection** | ||
+ | | **timeStamping** | ||
+ | | **OCSPSigning** | ||
+ | | **msSGC** | ||
+ | | **nsSGC** | ||
+ | | **ipsecEndSystem** | ||
+ | | **ipsecTunnel** | ||
+ | | **ipsecUser** | ||
+ | | **anyExtendedKeyUsage** | Beliebiger Zweck erlaubt (kommt selten vor, unscharf) | ||
+ | | **smartcardLogon** | ||
+ | | **documentSigning** | ||
+ | | **secureEmail** | ||
+ | |||
+ | |||
+ | ===Beispiele=== | ||
+ | |||
+ | Webserver-Zertifikat (TLS/SSL): | ||
+ | |||
+ | < | ||
+ | keyUsage = digitalSignature, | ||
+ | </ | ||
+ | |||
+ | CA-Zertifikat: | ||
+ | |||
+ | < | ||
+ | keyUsage = keyCertSign, | ||
+ | </ | ||
+ | |||
+ | Code Signing: | ||
+ | |||
+ | < | ||
+ | keyUsage = digitalSignature | ||
</ | </ | ||
Zeile 116: | Zeile 175: | ||
Einen CSR (Certificate signing request) erstellen. | Einen CSR (Certificate signing request) erstellen. | ||
+ | ===OpenSSL Konfig=== | ||
- | OpenSSL Konfig | + | ==Webserver== |
< | < | ||
[ req ] | [ req ] | ||
Zeile 140: | Zeile 199: | ||
DNS.1 = www.zarat.at | DNS.1 = www.zarat.at | ||
DNS.2 = zarat.at | DNS.2 = zarat.at | ||
+ | </ | ||
+ | |||
+ | ==DocumentSigning== | ||
+ | |||
+ | < | ||
+ | [ req ] | ||
+ | default_bits | ||
+ | prompt | ||
+ | default_md | ||
+ | distinguished_name | ||
+ | req_extensions | ||
+ | |||
+ | [ dn ] | ||
+ | CN = Zarat Signatur | ||
+ | O = Zarat | ||
+ | C = AT | ||
+ | |||
+ | [ req_ext ] | ||
+ | keyUsage = critical, digitalSignature | ||
+ | extendedKeyUsage = codeSigning | ||
+ | subjectAltName = @alt_names | ||
+ | |||
+ | [ alt_names ] | ||
+ | DNS.1 = zarat.at | ||
</ | </ | ||