Was sind Multidomain Zertifikate?
Multidomain SSL Zertifikate sind SSL Zertifikate, die um spezielle Merkmale erweitert wurden, um neben dem Common Name für weitere Domainnamen zu gelten, so dass eine fehlerfreie Verwendung in Browsern möglich ist.
Notwendige Vorbereitungen
Prinzipiell ist es nicht zwingend notwendig einen speziellen CSR für ein Multidomain SSL Zertifikat zu erzeugen. In der Regel nehmen die Zertifizierungsstellen die alternativen Namen während des Ausstellungsprozesses entgegen.
Einige Serververwaltungsprogramme erlauben aber schon beim Erzeugen des CSR die Alternativnamen in diesen mit aufzunehmen. Im Falle von OpenSSL erfolgt dies über eine entsprechende Anpassung der openssl.cnf
Datei.
Anpassung der openssl Konfiguration
In der openssl.cnf
Datei können Variablen definiert werden.
.
Hier kann man einen Default Eintrag
DNSALT="beliebiger-standard-servername.de"
anlegen. Andernfalls kann die Zeile auch ausgelassen werden.
Des weiteren muss im Abschnitt [ req ]
die Zeile:
req_extensions = v3_req
eingetragen werden.
Im Abschnitt [v3_req]
fügt man die Zeile
subjectAltName=${ENV::DNSALT}
hinzu.
Mit einem kleinen Skript kann man dann komfortabel SAN Namen in den CSR eintragen.
#!/bin/bash
DNSALT="" FQDN="xxx"
while [ "$FQDN" != "" ] do read -p "Enter fully qualified domainname (SAN): " FQDN if [ "$DNSALT" == "" ] then
DNSALT="DNS:$FQDN"
elif [ "$FQDN" == "" ] then
echo $DNSALT
else
DNSALT="$DNSALT,DNS:$FQDN"
fi done
export DNSALT
while [ "$PRIVKEY" == "" ] do read -p "Enter the name of the dignated private keyfile: " PRIVKEY done
while [ "$CSRFILE" == "" ] do read -p "Enter name of designated CSR file: " CSRFILE done
openssl req -new -newkey rsa:2048 -out $CSRFILE -keyout $PRIVKEY -config /home/henning/openssl.cnf