SSL
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:
<pre"> 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
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
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