User Tools

Site Tools


serveurs:serveurs_start

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
serveurs:serveurs_start [2025/11/10 19:35] julienserveurs:serveurs_start [2025/11/10 19:53] (current) julien
Line 94: Line 94:
  
  
-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx +===== Certificat SSL multi-domaine (multisite) avec validation DNS =====
-Certificat SSL multi-domaine (multisite) avec validation DNS+
  
-Quand on commence à héberger plusieurs sites sur le même serveur (multisite), un certificat mono-domaine” ne suffit plus. On peut alors utiliser un certificat multi-domaine (SAN / Subject Alternative Names) qui couvre plusieurs noms de domaine en une seule fois.+Quand on héberge plusieurs sites sur le même serveur (multisite), un certificat "mono-domainene suffit plus. 
 +On peut alors utiliser un certificat multi-domaine (SAN / Subject Alternative Names) qui couvre plusieurs noms de domaine en une seule fois.
  
-Exemples de cas typiques :+**Exemples :**
  
-example.org (site principal)+  * example.org — site principal 
 +  * noiselab.org — autre projet 
 +  * festival.net — événement 
 +  * artist-name.art — site perso
  
-noiselab.org (autre projet)+L'idée : un seul certificat installé sur SME, mais qui liste tous ces domaines dans les SAN.
  
-festival.net (événement)+==== 1Pré-requis ====
  
-artist-name.art (site perso)+  * SME Server 10 avec le panneau **SSL certificates management** (voir le tuto mono-site ci-dessus) 
 +  * Accès aux **zones DNS** de tous les domaines (chez Gandi ou autres registrars) 
 +  * Un fournisseur de certificats supportant les SAN (par ex. Gandi *Standard Multi-domaines*)
  
-L’idée : un seul certificat installé sur SME, mais qui liste tous ces domaines dans les SAN. 
  
-1. Pré-requis +==== 2. Générer une clé et un CSR multi-domaine (SAN) ====
- +
-SME Server 10 avec le panneau “SSL certificates management” déjà installé (voir section mono-site ci-dessus). +
- +
-Accès aux zones DNS de tous les domaines (chez Gandi ou d’autres registrars). +
- +
-Un fournisseur de certificats supportant les SAN (par ex. Gandi “Standard Multi-domaines”). +
- +
-2. Générer une clé et un CSR multi-domaine (SAN)+
  
 Sur SME, on va générer : Sur SME, on va générer :
 +  * une **clé privée** (server.key)
 +  * un **CSR** (Certificate Signing Request) contenant plusieurs noms de domaine (SAN)
  
-une clé privée (server.key), +OpenSSL sur SME (version 1.0.x) ne gère pas les SAN directement.   
- +On crée donc un petit fichier de configuration.
-un CSR qui contient plusieurs noms de domaine (SAN). +
- +
-OpenSSL “classique” (version 1.0.x sur SME) ne gère pas les SAN en ligne de commande simple, donc on passe par un petit fichier de configuration. +
- +
-Créer un fichier de config, par exemple : +
- +
-nano /root/openssl-san.conf +
  
-Avec un contenu du genre (adapter les infos à votre cas) :+Créer le fichier `/root/openssl-san.conf` :
  
 +<code ini>
 [ req ] [ req ]
 default_bits       = 2048 default_bits       = 2048
Line 148: Line 139:
 L  = Votre-Ville L  = Votre-Ville
 O  = Votre-Organisation O  = Votre-Organisation
-CN = example.org          # domaine principal (CN)+CN = example.org
  
 [ req_ext ] [ req_ext ]
Line 159: Line 150:
 DNS.4 = artist-name.art DNS.4 = artist-name.art
 DNS.5 = autre-domaine.tld DNS.5 = autre-domaine.tld
 +</code>
  
 +Puis générer la clé et le CSR :
  
-Puis générer clé + CSR : +<code bash>
 openssl req -new -nodes -newkey rsa:2048 \ openssl req -new -nodes -newkey rsa:2048 \
   -keyout /root/server.key \   -keyout /root/server.key \
   -out /root/server.csr \   -out /root/server.csr \
   -config /root/openssl-san.conf   -config /root/openssl-san.conf
 +</code>
  
 +Vérifiez que les SAN sont bien inclus :
  
-On peut vérifier que les SAN sont bien présents : +<code bash>
 openssl req -noout -text -in /root/server.csr | grep -A1 "Subject Alternative Name" openssl req -noout -text -in /root/server.csr | grep -A1 "Subject Alternative Name"
 +</code>
  
  
-On doit voir une ligne du type :+==== 3. Commander le certificat multi-domaine chez le fournisseur ====
  
-DNS:example.org, DNS:noiselab.org, DNS:festival.net, ...+Sur votre interface (ex Gandi) :
  
 +  - Créez un **certificat SSL Standard / multi-domaine**
 +  - Indiquez comme **Nom Commun (CN)** le domaine principal (ex : `example.org`)
 +  - Ajoutez les autres domaines dans la liste SAN (`noiselab.org`, `festival.net`, etc.)
 +  - Collez le contenu complet du fichier `/root/server.csr` (du `-----BEGIN CERTIFICATE REQUEST-----` au `-----END CERTIFICATE REQUEST-----`)
 +  - Choisissez la méthode de validation **par enregistrement DNS**
  
-Important : c’est ce CSR multi-domaine qu’il faudra coller chez le fournisseur (Gandi, etc.). La clé /root/server.key reste sur le serveur et sera utilisée plus tard dans SME. 
  
-3Commander le certificat multi-domaine chez le fournisseur (ex. Gandi)+==== 4Validation DNS (DCV====
  
-Sur l’interface de votre fournisseur :+Le fournisseur demande d’ajouter des enregistrements CNAME spécifiques dans vos DNS.   
 +Exemple d’instructions :
  
-Créer un nouveau certificat SSL Standard / multi-domaine.+<code> 
 +Please add record "_dnsauth.example.org. IN CNAME _xxx.dcv.your-ca.com." 
 +Please add record "_dnsauth.noiselab.org. IN CNAME _xxx.dcv.your-ca.com." 
 +Please add record "_dnsauth.festival.net.  IN CNAME _xxx.dcv.your-ca.com." 
 +</code>
  
-Choisir comme Nom Commun (CN) le domaine principal (ex. example.org).+Dans la zone DNS de chaque domaine, ajoutez :
  
-Ajouter les autres domaines dans la liste SAN (ex. noiselab.org, festival.net, etc.). +  * **Nom / Host :** `_dnsauth`   
- +  * **Type :** CNAME   
-Quand il demande le CSR, copier/coller le contenu de /root/server.csr (du -----BEGIN CERTIFICATE REQUEST----- au -----END CERTIFICATE REQUEST-----). +  * **Cible :** `_xxx.dcv.your-ca.com.`  
- +
-Pour la méthode de validation, choisir par enregistrement DNS. +
- +
-4. Validation DNS (DCV) avec des enregistrements CNAME +
- +
-Pour prouver que vous contrôlez les domaines, le fournisseur va demander d’ajouter des enregistrements CNAME spécifiques dans les DNS. +
-Sur la page de suivi du certificat, on verra quelque chose comme : +
- +
-Please add record "_dnsauth.example.org.   IN CNAME _xxx.dcv.your-ca.com."+
-Please add record "_dnsauth.noiselab.org.  IN CNAME _xxx.dcv.your-ca.com."+
-Please add record "_dnsauth.festival.net.  IN CNAME _xxx.dcv.your-ca.com."+
-... +
- +
- +
-Pour chaque domaine, dans sa zone DNS : +
- +
-Nom / Host : _dnsauth (ou _dnsauth.example.org selon l’interface) +
- +
-Type : CNAME +
- +
-Cible : _xxx.dcv.your-ca.com. (exactement la valeur donnée par le fournisseur) +
- +
-Exemples : +
- +
-Chez Gandi (vue avancée) :+
  
 +**Exemple (Gandi – vue avancée) :**
 +<code>
 _dnsauth   CNAME   10800   _xxx.dcv.your-ca.com. _dnsauth   CNAME   10800   _xxx.dcv.your-ca.com.
 +</code>
  
 +**Attention :**
 +  * Ne touchez pas aux enregistrements A/MX existants.
 +  * Supprimez les anciens CNAME DCV s’ils existent pour le même nom.
 +  * Vérifiez vos enregistrements CAA si vous en utilisez.
  
-Chez un autre registrar (Amen, OVH, etc.), même principe, seule l’interface change.+Après ajout de tous les CNAME : 
 +  * Attendez 15 à 30 minutes (propagation DNS) 
 +  * Relancez la vérification dans l’interface du fournisseur
  
-Attention +Une fois validé, téléchargez 
-– Ne modifiez pas vos enregistrements A/MX existants. +  le **certificat serveur (.crt / .pem)** 
-– Évitez d’avoir de vieux CNAME DCV qui traînent pour le même nom (par exun ancien _dnsauth). +  * la **chaîne intermédiaire** (CA / bundle)
-– Si des enregistrements CAA existent, ils doivent autoriser l’AC choisie (par ex. issue "digicert.com").+
  
-Après avoir ajouté les CNAME pour tous les domaines : 
  
-attendre 15–30 min (propagation DNS),+==== 5. Installer le certificat multi-domaine dans SME Server 10 ====
  
-relancer la vérification dans l’interface du fournisseur, si nécessaire.+Dans **server-manager → SSL certificates management** :
  
-Une fois validé, le certificat passe en “Valide” / “Émis”, et vous pouvez télécharger :+  1. **SSL certificate (server.crt)**   
 +     → collez le contenu complet du certificat multi-domaine téléchargé
  
-le certificat serveur (fichier .crt / .pem),+  2. **SSL private key (server.key)**   
 +     → collez le contenu de la clé privée générée au début (`/root/server.key`)
  
-la chaîne intermédiaire (CA / bundle du fournisseur).+  3. **SSL intermediate chain certificate**   
 +     → collez la chaîne intermédiaire fournie (souvent un fichier `GandiCert.pem`)
  
-5Installer le certificat multi-domaine dans SME Server 10+Cliquez sur **Save**.
  
-Dans server-manager → SSL certificates management, on retrouve les 3 champs : +En cas d’erreur (plus d’accès web) :
- +
-SSL certificate (server.crt) +
-Coller ici le nouveau certificat serveur téléchargé (le bloc -----BEGIN CERTIFICATE----- ... du cert multi-domaine). +
- +
-SSL private key (server.key) +
-Coller ici le contenu de la clé privée générée au début (/root/server.key) : +
- +
-cat /root/server.key +
- +
- +
-Copier/coller tout le bloc -----BEGIN PRIVATE KEY----- ... -----END PRIVATE KEY-----. +
- +
-SSL intermediate chain certificate +
-Coller ici la chaîne intermédiaire fournie par le fournisseur (souvent un fichier type GandiCert.pem, ou “CA bundle” contenant un ou plusieurs blocs BEGIN CERTIFICATE). +
- +
-Puis cliquer sur Save / Enregistrer. +
- +
-En cas d’erreur (Apache qui ne redémarre pas, plus d’accès web), on peut revenir au certificat par défaut SME avec :+
  
 +<code bash>
 signal-event certificate-revert signal-event certificate-revert
 +</code>
  
-6. Vérifier le certificat multi-domaine 
- 
-Pour tester que tout est en place : 
- 
-ouvrir dans un navigateur : 
- 
-https://example.org 
- 
-https://noiselab.org 
- 
-https://festival.net 
- 
-etc. 
- 
-Dans les informations du certificat, on doit voir : 
- 
-une date de validité cohérente, 
- 
-tous les domaines dans “Subject Alternative Names (SAN)”. 
- 
-On peut aussi utiliser : 
  
-https://www.ssllabs.com/ssltest+==== 6Vérifier le certificat multi-domaine ====
  
-pour analyser la configuration TLS et vérifier que la chaîne intermédiaire est correcte.+Ouvrez dans un navigateur : 
 +  * https://example.org   
 +  * https://noiselab.org   
 +  * https://festival.net  
  
 +Dans les infos du certificat :
 +  * la date de validité doit être correcte
 +  * tous les domaines doivent apparaître dans **Subject Alternative Names (SAN)**
  
 +Pour tester en ligne :  
 +→ https://www.ssllabs.com/ssltest
  
  
 +**Références utiles :**
 +  * https://wiki.koozali.org/Certificates_Concepts  
 +  * https://docs.gandi.net/en/ssl/  
 +  * https://en.wikipedia.org/wiki/Certificate_authority
  
  
serveurs/serveurs_start.1762799706.txt.gz · Last modified: 2025/11/10 19:35 by julien