SSL: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Keine Bearbeitungszusammenfassung |
Chris (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
| (10 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
| Zeile 12: | Zeile 12: | ||
im /etc/ssl/darkrealm verzeichnis ausführen: | im /etc/ssl/darkrealm verzeichnis ausführen: | ||
<pre | <pre> | ||
openssl req -config darkrealm.cnf -new -x509 -days 3650 -keyout CA/private/ca.key -out CA/ca.crt | openssl req -config darkrealm.cnf -new -x509 -days 3650 -keyout CA/private/ca.key -out CA/ca.crt | ||
</pre> | </pre> | ||
| Zeile 53: | Zeile 53: | ||
== LDAP Server Certificate Request erstellen == | == LDAP Server Certificate Request erstellen == | ||
Anmerkung : musste sämtliche nsCert* Einträge aus darkrealm.cnf entfernen daß jxplorer via SSL auf den ldap server zugreifen konnte. | |||
im /etc/ssl/darkrealm Verzeichnis ausführen: | im /etc/ssl/darkrealm Verzeichnis ausführen: | ||
| Zeile 66: | Zeile 69: | ||
== Bearbeitete openssl.cnf == | == Bearbeitete openssl.cnf == | ||
<pre> | |||
dir = ./demoCA # TSA root directory | dir = ./demoCA # TSA root directory | ||
serial = $dir/tsaserial # The current serial number (mandatory) | serial = $dir/tsaserial # The current serial number (mandatory) | ||
| Zeile 90: | Zeile 92: | ||
ess_cert_id_chain = no # Must the ESS cert id chain be included? | ess_cert_id_chain = no # Must the ESS cert id chain be included? | ||
# (optional, default: no) | # (optional, default: no) | ||
</pre> | |||
== .pem nach .p12 konvertieren == | == .pem nach .p12 konvertieren == | ||
<pre> | <pre> | ||
openssl pkcs12 -export -in | openssl pkcs12 -export -inkey key.pem -in cert.pem -out file.p12 -name "TEST" | ||
</pre> | </pre> | ||
* pkcs12 : pkcs12 facility | * pkcs12 : pkcs12 facility | ||
* -export: pkcs12 Datei generieren und nicht parsen | * -export: pkcs12 Datei generieren und nicht parsen | ||
* -inkey : Schlüssel | |||
* -in : Original Zertifikat | * -in : Original Zertifikat | ||
* -out : Ausgabezertifikat | * -out : Ausgabezertifikat | ||
* -name : Freundlicher Name | * -name : Freundlicher Name | ||
== CRL erstellen (oder updaten) == | |||
Zuerst im darkrealm/CA Verzeichnis crlnumber erstellen mit echo 00 > crlnumber | |||
<pre> | |||
openssl ca -config darkrealm.cnf -gencrl -out crl.pem | |||
</pre> | |||
=== CA-Zertifikat und CRL zusammenfügen (für Dovecot) === | |||
cat ca.crt crl.pem > ca+crl.pem | |||
=== Zertifikat revoken === | |||
<pre> | |||
openssl ca -config /etc/ssl/darkrealm/darkrealm.cnf -revoke /etc/ssl/darkrealm/CA/newcerts/<zertifikat>.pem | |||
</pre> | |||
== Zertifikat erneuern == | |||
=== Neuen CSR aus altem Zertifikat generieren === | |||
<pre> | |||
openssl x509 -x509toreq -in <abgelaufenes Zertifikat>.crt -out <abgelaufenes Zertifikat>2.csr -signkey <abgelaufenes Zertifikat>.key | |||
</pre> | |||
=== altes Zertifikat revoken === | |||
<pre> | |||
openssl ca -config darkrealm.cnf -revoke <abgelaufenes Zertifikat>.crt | |||
</pre> | |||
=== CRL neu generieren === | |||
<pre> | |||
openssl ca -config darkrealm.cnf -gencrl -out crl.crt | |||
</pre> | |||
=== Neuen CSR signieren === | |||
<pre> | |||
openssl ca -config darkrealm.cnf -out <neues Zertifikat>2.crt -in <neues Zertifikat>2.csr -extensions server_cert | |||
</pre> | |||
=== Neues Zertifikat über das alte kopieren === | |||
<pre> | |||
mv <neues Zertifikat>2.crt <neues Zertifikat>.crt | |||
</pre> | |||
Anschließend verwendeten Daemon neu starten. | |||
== Client Zertifikat erstellen == | |||
Aktuelle Version vom 30. Dezember 2019, 22:21 Uhr
Eigene CA erstellen
Verzeichnisse erstellen:
mkdir -p /etc/ssl/darkrealm/CA/private mkdir -p /etc/ssl/darkrealm/CA/newcerts touch /etc/ssl/darkrealm/CA/index.txt echo 0000 > /etc/ssl/darkrealm/CA/serial
im /etc/ssl/darkrealm verzeichnis ausführen:
openssl req -config darkrealm.cnf -new -x509 -days 3650 -keyout CA/private/ca.key -out CA/ca.crt
- req :
- -config : die angegebene Konfigurationsdatei benutzen
- -new : Neue Zertifikatsanfrage
- -x509: Gebe ein selbstsigniertes Zertifikat anstatt einer Zertifikatsanfrage aus
- -days 3650 : Gültigkeitsdauer
- -keyout : Privaten Schlüssel in diese Datei ausgeben
- -out : Zertifikat in Datei ausgeben
Webserver Certificate Request erstellen
im /etc/ssl/darkrealm Verzeichnis ausführen:
openssl req -config darkrealm.cnf -new -nodes -keyout apache.key -out apache.csr
- req:
- -config: Die angegebene Konfigurationsdatei benutzen
- -new : Neue Zertifikatsanfrage
- -nodes : Nicht mit Passphrase verschlüsseln
- -keyout : Privaten Schlüssel in diese Datei ausgeben
- -out : Zertifikatsanfrage in diese Datei ausgeben
Webserver Certificate Request signieren
im /etc/ssl/darkrealm Verzeichnis ausführen:
openssl ca -config darkrealm.cnf -out apache.crt -in apache.csr
Danach das Zertifikat und den privaten Schlüssel nach /etc/ssl/apache2 kopieren.
Abschließend muss noch das CA-Zertifikat (ca.crt) in den jeweiligen Browser importiert werden.
LDAP Server Certificate Request erstellen
Anmerkung : musste sämtliche nsCert* Einträge aus darkrealm.cnf entfernen daß jxplorer via SSL auf den ldap server zugreifen konnte.
im /etc/ssl/darkrealm Verzeichnis ausführen:
openssl req -config darkrealm.cnf -new -nodes -keyout ldap.key -out ldap.csr
LDAP Server Certificate Request signieren
openssl ca -config darkrealm.cnf -out ldap.crt -in ldap.csr
Bearbeitete openssl.cnf
dir = ./demoCA # TSA root directory serial = $dir/tsaserial # The current serial number (mandatory) crypto_device = builtin # OpenSSL engine to use for signing signer_cert = $dir/tsacert.pem # The TSA signing certificate # (optional) certs = $dir/cacert.pem # Certificate chain to include in reply # (optional) signer_key = $dir/private/tsakey.pem # The TSA private key (optional) default_policy = tsa_policy1 # Policy if request did not specify it # (optional) other_policies = tsa_policy2, tsa_policy3 # acceptable policies (optional) digests = md5, sha1 # Acceptable message digests (mandatory) accuracy = secs:1, millisecs:500, microsecs:100 # (optional) clock_precision_digits = 0 # number of digits after dot. (optional) ordering = yes # Is ordering defined for timestamps? # (optional, default: no) tsa_name = yes # Must the TSA name be included in the reply? # (optional, default: no) ess_cert_id_chain = no # Must the ESS cert id chain be included? # (optional, default: no)
.pem nach .p12 konvertieren
openssl pkcs12 -export -inkey key.pem -in cert.pem -out file.p12 -name "TEST"
- pkcs12 : pkcs12 facility
- -export: pkcs12 Datei generieren und nicht parsen
- -inkey : Schlüssel
- -in : Original Zertifikat
- -out : Ausgabezertifikat
- -name : Freundlicher Name
CRL erstellen (oder updaten)
Zuerst im darkrealm/CA Verzeichnis crlnumber erstellen mit echo 00 > crlnumber
openssl ca -config darkrealm.cnf -gencrl -out crl.pem
CA-Zertifikat und CRL zusammenfügen (für Dovecot)
cat ca.crt crl.pem > ca+crl.pem
Zertifikat revoken
openssl ca -config /etc/ssl/darkrealm/darkrealm.cnf -revoke /etc/ssl/darkrealm/CA/newcerts/<zertifikat>.pem
Zertifikat erneuern
Neuen CSR aus altem Zertifikat generieren
openssl x509 -x509toreq -in <abgelaufenes Zertifikat>.crt -out <abgelaufenes Zertifikat>2.csr -signkey <abgelaufenes Zertifikat>.key
altes Zertifikat revoken
openssl ca -config darkrealm.cnf -revoke <abgelaufenes Zertifikat>.crt
CRL neu generieren
openssl ca -config darkrealm.cnf -gencrl -out crl.crt
Neuen CSR signieren
openssl ca -config darkrealm.cnf -out <neues Zertifikat>2.crt -in <neues Zertifikat>2.csr -extensions server_cert
Neues Zertifikat über das alte kopieren
mv <neues Zertifikat>2.crt <neues Zertifikat>.crt
Anschließend verwendeten Daemon neu starten.