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 [2023/09/19 17:00] – [vérification SSL] julienserveurs:serveurs_start [2025/11/10 19:53] (current) julien
Line 51: Line 51:
 Il faut tout d'abord générer le certificat de votre serveur : Il faut tout d'abord générer le certificat de votre serveur :
  
-1-Générer une clefs RSA+**Générer une clefs RSA et un code CSR**
 <code> <code>
-openssl genrsa -out mondomaine.com-key.pem 2048+openssl req -nodes -newkey rsa:2048 -sha256 -keyout myserver.key -out server.csr -utf8
 </code> </code>
  
-2-Générer le code CSR 
-<code> 
-openssl genrsa -out mondomaine.com-key.pem 2048 
-</code> 
  
 Pour ces commandes vous allez avoir plusieurs questions sur votre organisation, adresse, ville...etc (pensez-y) Pour ces commandes vous allez avoir plusieurs questions sur votre organisation, adresse, ville...etc (pensez-y)
Line 80: Line 76:
  
 1-télécharger votre serveur.crt et le mettre dans la 1ere case de l'interface de server-manager (SSL) 1-télécharger votre serveur.crt et le mettre dans la 1ere case de l'interface de server-manager (SSL)
 +
 2-copier votre clef RSA dans la 2eme case, celle là vous l'avez généré vous-même 2-copier votre clef RSA dans la 2eme case, celle là vous l'avez généré vous-même
 +
 3-télécharger le certificat intermediaire  CA officiel dont vous collerez le code dans la 3ème case 3-télécharger le certificat intermediaire  CA officiel dont vous collerez le code dans la 3ème case
  
Line 96: Line 94:
  
  
 +===== Certificat SSL multi-domaine (multisite) avec validation DNS =====
 +
 +Quand on héberge 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.
 +
 +**Exemples :**
 +
 +  * example.org — site principal
 +  * noiselab.org — autre projet
 +  * festival.net — événement
 +  * artist-name.art — site perso
 +
 +L'idée : un seul certificat installé sur SME, mais qui liste tous ces domaines dans les SAN.
 +
 +==== 1. Pré-requis ====
 +
 +  * 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*)
 +
 +
 +==== 2. Générer une clé et un CSR multi-domaine (SAN) ====
 +
 +Sur SME, on va générer :
 +  * une **clé privée** (server.key)
 +  * un **CSR** (Certificate Signing Request) contenant plusieurs noms de domaine (SAN)
 +
 +OpenSSL sur SME (version 1.0.x) ne gère pas les SAN directement.  
 +On crée donc un petit fichier de configuration.
 +
 +Créer le fichier `/root/openssl-san.conf` :
 +
 +<code ini>
 +[ req ]
 +default_bits       = 2048
 +prompt             = no
 +default_md         = sha256
 +req_extensions     = req_ext
 +distinguished_name = dn
 +
 +[ dn ]
 +C  = FR
 +ST = Votre-Region
 +L  = Votre-Ville
 +O  = Votre-Organisation
 +CN = example.org
 +
 +[ req_ext ]
 +subjectAltName = @alt_names
 +
 +[ alt_names ]
 +DNS.1 = example.org
 +DNS.2 = noiselab.org
 +DNS.3 = festival.net
 +DNS.4 = artist-name.art
 +DNS.5 = autre-domaine.tld
 +</code>
 +
 +Puis générer la clé et le CSR :
 +
 +<code bash>
 +openssl req -new -nodes -newkey rsa:2048 \
 +  -keyout /root/server.key \
 +  -out /root/server.csr \
 +  -config /root/openssl-san.conf
 +</code>
 +
 +Vérifiez que les SAN sont bien inclus :
 +
 +<code bash>
 +openssl req -noout -text -in /root/server.csr | grep -A1 "Subject Alternative Name"
 +</code>
 +
 +
 +==== 3. Commander le certificat multi-domaine chez le fournisseur ====
 +
 +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**
 +
 +
 +==== 4. Validation DNS (DCV) ====
 +
 +Le fournisseur demande d’ajouter des enregistrements CNAME spécifiques dans vos DNS.  
 +Exemple d’instructions :
 +
 +<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>
 +
 +Dans la zone DNS de chaque domaine, ajoutez :
 +
 +  * **Nom / Host :** `_dnsauth`  
 +  * **Type :** CNAME  
 +  * **Cible :** `_xxx.dcv.your-ca.com.`  
 +
 +**Exemple (Gandi – vue avancée) :**
 +<code>
 +_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.
 +
 +Après ajout de tous les CNAME :
 +  * Attendez 15 à 30 minutes (propagation DNS)
 +  * Relancez la vérification dans l’interface du fournisseur
 +
 +Une fois validé, téléchargez :
 +  * le **certificat serveur (.crt / .pem)**
 +  * la **chaîne intermédiaire** (CA / bundle)
 +
 +
 +==== 5. Installer le certificat multi-domaine dans SME Server 10 ====
 +
 +Dans **server-manager → SSL certificates management** :
 +
 +  1. **SSL certificate (server.crt)**  
 +     → collez le contenu complet du certificat multi-domaine téléchargé
 +
 +  2. **SSL private key (server.key)**  
 +     → collez le contenu de la clé privée générée au début (`/root/server.key`)
 +
 +  3. **SSL intermediate chain certificate**  
 +     → collez la chaîne intermédiaire fournie (souvent un fichier `GandiCert.pem`)
 +
 +Cliquez sur **Save**.
 +
 +En cas d’erreur (plus d’accès web) :
 +
 +<code bash>
 +signal-event certificate-revert
 +</code>
 +
 +
 +==== 6. Vérifier le certificat multi-domaine ====
  
 +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.1695135600.txt.gz · Last modified: 2023/09/19 17:00 by julien