Après de nombreuses recherches avec mon ami Google pour créer un certificat valide sur plusieurs domaines j'ai fini par trouver mon bonheur. Car oui c'est possible de créer un certificat SSL pour plusieurs domaines. C'est possible je m'en doutais car toutes les organisations de certification proposent ce type de certificat à la vente. Et forcément ceci coûte très très cher. Trop pour moi.

Alors voici la démarche à suivre. Partons de la génération d'un certificat classique. J'utilise d'entrée de jeu un fichier de configuration car c'est obligatoire pour un multi domaines.

Génération d'un certificat pour mondomaine.com :

Créez le fichier mondomaine.cnf

RANDFILE = /var/log/mail.info

[ req ]
default_bits = 1024
encrypt_key = yes
distinguished_name = req_dn
x509_extensions = cert_type
prompt = no

[ req_dn ]
C=FR
ST=FRANCE
L=Paris
O=Certificat SSL pour modomaine.com
OU=Certificat SSL
CN=mondomaine.com
emailAddress=hostmaster@mondomaine.com

[ cert_type ]
nsCertType                      = server

Ensuite vous lancez la commande suivante :

openssl req -new -outform PEM -config mondomaine.cnf \
-out mondomaine.cert -newkey rsa:2048 -nodes \
-keyout mondomaine.key -keyform PEM -days 365 -x509

Voilà, des options peuvent variées dans la ligne de commande en fonction du certificat créé mais le principe est là.

Maintenant procédons à la génération d'un certificat SSL (format PEM) pour courrier-imap-ssl pour les domaines imaps.mondomaine.com et imaps.monautredomaine.com :

Créez votre fichier de configuration :

RANDFILE = /var/log/mail.info

[ req ]
default_bits = 1024
encrypt_key = yes
distinguished_name = req_dn
x509_extensions = cert_type
prompt = no

[ req_dn ]
C=FR
ST=FRANCE
L=Paris
O=IMAP MDA
OU=IMAPS SSL key
CN=imaps.mondomaine.com
emailAddress=postmaster@mondomaine.com

[ cert_type ]
basicConstraints                = critical,CA:FALSE

nsCertType                      = server
nsComment                       = "Serveur COURIER IMAP SSL"

subjectKeyIdentifier            = hash
authorityKeyIdentifier          = keyid,issuer:always
subjectAltName                  = DNS:imaps.mondomaine.com,DNS:imaps.monautredomaine.com
issuerAltName                   = issuer:copy

keyUsage                        = keyEncipherment, digitalSignature
extendedKeyUsage                = serverAuth

Ici on voit que l'on garde un domaine principal et que l'on créé en fait un domaine alias au domaine principal.

Il vous reste à lancer la génération du certificat comme un certificat normal.

Et voilà le tour est joué. Si vous avez d'autres infos, je suis preneur !