Koozali.org: home of the SME Server

[RESOLU]Problème de renouvellement de certificat GANDI

Offline adlaw

  • 13
  • +0/-0
[RESOLU]Problème de renouvellement de certificat GANDI
« on: March 04, 2014, 09:45:41 AM »
Bonjour,

S'il est facile de trouver comment installer un nouveau certificat, je n'ai pas su trouver d'explication claire et précise sur comment le renouveler ensuite.

Je ne parviens pas à procéder au renouvellement de mon certificat GANDI (pourtant, l'an dernier, je n'ai pas souvenir d'avoir eu de problème...). Que faut-il faire précisément ?

Ce que j'ai tenté : j'ai regardé quels fichiers ont été modifiés dans /home/e-smith/ssl.*. Le .key semble modifié automatiquement, et le .crt est daté du renouvellement de l'an dernier. Je me contente donc de remplacer celui-ci par le nouveau donné par Gandi, en prenant soin de bien le nommer comme l'ancien, et de ne pas malencontreusement ajouter ou supprimer de caractère.

Mais une fois le nouveau .crt en place, je n'ai plus accès du tout au serveur ! Je retrouve sans problème l'accès en remettant l'ancien certificat et en forçant l'exception de sécurité...

Voilà... J'oublie sûrement quelque chose, mais quoi ? Quelqu'un pourrait-il m'indiquer la procédure précise de renouvellement (sachant que j'ai vérifié que le .csr que j'ai donné chez Gandi lors de la création est bien le bon) ?

Merci.

Pour ceux qui n'ont pas trop l'habitude des certificats, les explications de kid_of_leognan sont très intéressantes. Pour les autres, la solution est dans ce post (mais attention : testé uniquement avec le renouvellement du certificat gratuit GANDI !).
« Last Edit: March 06, 2014, 08:57:27 PM by adlaw »

Offline stephdl

  • *
  • 1,519
  • +0/-0
    • Linux et Geekeries
Re: Problème de renouvellement de certificat GANDI
« Reply #1 on: March 05, 2014, 09:39:08 AM »
ola

bon je ne suis pas un pro des certificats mais il y a un bout de doc sur comment installer un certificat commercial. J'imagine que le renouvellement suit la même voie http://wiki.contribs.org/Certificates_Concepts#Commercial_certificates
« Last Edit: March 05, 2014, 11:01:14 AM by stephdl »
See http://wiki.contribs.org/Koozali_Foundation
irc : Freenode #sme_server #sme-fr

!!! Please write your knowledge to the Wiki !!!

Offline Xavier.A

  • ***
  • 104
  • +0/-0
Re: Problème de renouvellement de certificat GANDI
« Reply #2 on: March 05, 2014, 05:50:14 PM »
Salut adlaw,

J'avais décider de ne plus participer à ce forum mais je vais faire une exception pour toi ;-)
Tout d'abord la page mentionnée par Stéphane ne va pas t'apporter beaucoup d'info sur le renouvellement d'un Certificat SSL (X-509) chez Gandi (https://www.gandi.net/ssl).

Quel type de certificat veux tu renouveler?

Pour un client, j'ai eu a installer le certificat SSL gratuit puis payant à 120€/an, je te livre donc une méthode mais peut-être que les SUPER DEV. de la SME auront de meilleurs conseils, ils sont si forts :lol:

Il va falloir utiliser le terminal et SSH, dans le cas d'une SME on va tout de suite se placer dans le répertoire qui va stocker la clé (domain.tld à adapter):

0) Se connecter et nettoyer un peu l'installation précédente du certificat mais au lieu de suivre le wiki, je te conseille plutôt de renommer les fichiers puis de les supprimer si tout s'est bien passé :
ssh nonrootuser@xxx.xxx.xxx.xxx -p PortSSH
mv /home/e-smith/ssl.crt/servername.domain.tld.crt /home/e-smith/ssl.crt/servername.domain.tld.crt.save
mv /home/e-smith/ssl.pem/servername.domain.tld.pem /home/e-smith/ssl.pem/servername.domain.tld.pem.save
cd /home/e-smith/ssl.key/

1) Version de OpenSSL et aide pour la ligne de commande :
openssl version -a
man openssl
openssl help

2) Générer le CSR :
2.1) Nouveau certificat
openssl req -x509 -nodes -newkey rsa:2048 -keyout domain.tld.key -out domain.tld.csr

2.2) Renouvellement du certificat, la clé a déjà été générée (exemple : openssl genrsa 2048 -out domain.tld.key ):
openssl req -new -x509 -key domain.tld.key -out domain.tld.csr

Il faut un peu réfléchir à ce qu'on fait et répondre à l'ensemble des questions posées. On peut utiliser un wildcard (joker) du type *.domain.tld pour que le certificat s'applique à un ensemble de sous-domaines mais ça va dépendre du type de certificat que tu veux utiliser. En cas de doute la lecture d'un bon manuel d'administration d'un serveur Unix/Linux à la page Certificat X-509 ne peut pas faire de mal  :-)

4) Afficher à l'écran la demande de certificat :
cat domain.tld.csr

5) Un petit tour sur le site https://www.gandi.net/ , suivre la procédure d'achat du certificat et y récupérer le domain.tld.crt :
cd /home/e-smith/ssl.crt/
nano domain.tld.crt

6)  En fonction du type de certificat, il faut récupérer "GandiStandardSSLCA.pem"
mkdir /home/e-smith/ssl.chainfile && chmod 700 /home/e-smith/ssl.chainfile
cd /home/e-smith/ssl.chainfile/
wget https://www.gandi.net/static/CAs/GandiStandardSSLCA.pem

7) Maintenant on se cogne la méthode SME Server pour déployer le certificat, ça devrait te générer le domain.tld.pem dans /home/e-smith/ssl.pem/:
config setprop modSSL key /home/e-smith/ssl.key/domain.tld.key
config setprop modSSL crt /home/e-smith/ssl.crt/domain.tld.crt
config setprop modSSL CertificateChainFile /home/e-smith/ssl.chainfile/GandiStandardSSLCA.pem
signal-event console-save

8) Enfin comme c'est une SME, il va falloir redémarrer le serveur :
signal-event post-upgrade; signal-event reboot

Xavier
« Last Edit: March 05, 2014, 07:37:31 PM by kid_of_leognan »
“When the wise man points to the moon, the fool looks at the finger.”

Offline adlaw

  • 13
  • +0/-0
Re: Problème de renouvellement de certificat GANDI
« Reply #3 on: March 06, 2014, 10:26:12 AM »
Bonjour,

J'avais décider de ne plus participer à ce forum mais je vais faire une exception pour toi ;-)
Merci beaucoup. J'apprécie infiniment, d'autant plus que j'ignore en quoi j'ai mérité cette exception  :-)

J'apprécie également beaucoup cette réponse claire et détaillée !

Enfin comme c'est une SME, il va falloir redémarrer le serveur
Ah bah ! Il ne faut redémarrer qu'une seule fois, c'est déjà beaucoup mieux qu'un certain OS made in Redmond  :-P

Cela dit, c'est une fois de trop pour un serveur en prod, et me voilà obligé d'attendre une heure tardive et nocturne pour tester ta solution, quand plus personne n'a besoin du serveur...

J'en profite pour poser une nouvelle question en attendant : le problème que j'ai rencontré pourrait venir du fait que je n'ai pas généré un nouveau .csr. Gandi ayant gardé l'ancien et m'ayant fourni un nouveau .crt dès que j'ai eu réglé mon renouvellement, je n'en ai pas vu l'utilité...

Ma question est donc une simple demande de confirmation : est-il vraiment nécessaire de générer un nouveau .csr et de redemander un nouveau .crt, alors que Gandi me fournit un .crt basé sur le .csr que je lui avais donné lors de l'achat du certificat ? Ne suffit-il pas qu'il y ait correspondance entre le .csr et le .crt ?


Offline Xavier.A

  • ***
  • 104
  • +0/-0
Re: Problème de renouvellement de certificat GANDI
« Reply #4 on: March 06, 2014, 11:51:01 AM »
une petite pause café pour te répondre...

L'exception c'est pour éviter que tu attendes une hypothétique réponse des SUPER DEV. de la SME au delà d'un temps humainement acceptable pour un serveur en production  :lol:

Ma question est donc une simple demande de confirmation : est-il vraiment nécessaire de générer un nouveau .csr et de redemander un nouveau .crt, alors que Gandi me fournit un .crt basé sur le .csr que je lui avais donné lors de l'achat du certificat ? Ne suffit-il pas qu'il y ait correspondance entre le .csr et le .crt ?
Le renouvellement est nécessaire parce que le certificat a de forte chance d'être révoqué au bout d'un an (certif gratis) chez gandi et que chaque certificat est censé être unique c'est à dire pour un seul serveur et pour une durée limitée.
Il me semble logique de fournir un nouveau CSR pour obtenir un nouveau CRT même si tu gardes la KEY pour génerer ta demande CSR, la date de cette demande va changer mais peut-être que les anciens d'ALTERN ont une méthode à eux pour générer le CRT. Il faut voir sur leur wiki (http://wiki.gandi.net/fr/ssl )

Tu peux éventuellement "forcer" la durée de validité de tes certificats avec l'option -day 730 ou -day 9999 mais je ne crois pas que ça va fonctionner chez gandi  :-P

Petite liste de commande sympas pour vérifier ton CRT :
- Afficher à l'écran la totalité de ce qui se trouve dedans :
openssl x509 -in domain.tld.crt -text | less
openssl x509 -in domain.tld.crt -text | more
- Afficher à l'écran les 14 premières lignes :
openssl x509 -in domain.tld.crt -text | head -n 14

- Afficher à l'écran subject, issuer, startdate, endate :
openssl x509 -in domain.tld.crt -noout -subject
openssl x509 -in domain.tld.crt -noout -issuer
openssl x509 -in domain.tld.crt -noout -startdate
openssl x509 -in domain.tld.crt -noout -enddate

Chez Cacert.org ( http://www.cacert.org/ ) , je dois renouveler mes certificats tous les 6 mois pour mes serveurs perso. je suis d'ailleurs à la recherche d'assureur Cacert pas trop loin de chez moi (Bordeaux) ;-)
« Last Edit: March 06, 2014, 01:12:37 PM by kid_of_leognan »
“When the wise man points to the moon, the fool looks at the finger.”

Offline adlaw

  • 13
  • +0/-0
Re: Problème de renouvellement de certificat GANDI
« Reply #5 on: March 06, 2014, 08:51:00 PM »
L'exception c'est pour éviter que tu attendes une hypothétique réponse des SUPER DEV. de la SME au delà d'un temps humainement acceptable pour un serveur en production  :lol:
Merci, c'est sympa  :-)

Bon, tout fonctionne  8-)

En fait, il me semblait bien qu'il n'y avait pas besoin - tout au moins chez GANDI - de redonner le .csr pour un renouvellement (pour être précis, j'ai pris un compte gratuit pour mon domaine il y a deux ans, et j'en suis donc à mon second renouvellement, payant puisque la gratuité n'est accordée que la première année).

Le problème était que, malgré mes vérifications, j'avais bel et bien fait une conn bêtise et que mon certificat était tout bêtement cassé !

La procédure pour renouveler un certificat de chez GANDI est donc la suivante :

1 - Procéder au renouvellement (payant, donc, après la première année gratuite) chez GANDI
2 - Récupérer le nouveau .crt généré par GANDI
3 - Se logger root sur la SME
4 - Par prudence, mettre de côté l'ancien .crt situé dans /home/e-smith/ssl.crt/
5 - Mettre en place le nouveau .crt, avec le même nom que l'ancien.
6 - faire un signal-event domain-modify puis un signal-event email-update.

Le nouveau certificat est opérationnel  8-)

Offline adlaw

  • 13
  • +0/-0
Re: [RESOLU]Problème de renouvellement de certificat GANDI
« Reply #6 on: December 24, 2014, 05:05:40 PM »
Bonjour et joyeux noël à tous !

Bon, s'il y en a qui travaillent ces jours, je leur soumets un problème exactement du même style, sur un serveur dont le certificat fonctionnait et a été renouvelé. Après vérifications d'usage, tout semble Ok. J'ai bien ce qu'il faut et apparemment en bon état dans /home/e-smith/ssl.*, avec les mêmes droits que sur un serveur où tout fonctionne. Un openssl x509 -in domain.tld.crt -text me montre bien un certificat correct, avec le bon domaine et les bonnes dates. Par acquit de conscience, je vérifie aussi la config modSSL :
Code: [Select]
db configuration show modSSL
modSSL=service
    CertificateChainFile=/home/e-smith/ssl.pem/GandiStandardSSLCA.pem
    TCPPort=443
    access=public
    crt=/home/e-smith/ssl.crt/host.domain.tld.crt
    key=/home/e-smith/ssl.key/host.domain.tld.key
    status=enabled

En désespoir de cause, je demande la régénération du certificat, et reprends tout à zéro en suivant la méthode de kid_of_leognan, mais ce n'est pas mieux  :cry:

Pour tenter de mieux comprendre ce qui se passe vu de l'extérieur, je vais sur le site https://www.digicert.com
Et voilà ce qu'il m'indique :
Quote
Heartbleed Vulnerability

Server is not vulnerable to the Heartbleed Bug because Heart beats are not enabled on this server.
Protocol Support

TLS 1.0, SSL 3.0

SSL 3.0 is an outdated protocol version with known vulnerabilities. How can I fix this?
SSL certificate

Common Name = e4:c7:22:cd:d4:74

Issuer = e4:c7:22:cd:d4:74

Serial Number = D59CA642A1FAEB8A

SHA1 Thumbprint = F5BD7EE2047C643BF7BD98EE150AA9C1F15CA438

Key Length = 1024 bit

Signature algorithm = SHA1 + RSA (good)

Secure Renegotiation: Supported
This certificate does not use a vulnerable Debian key (this is good)
SSL Certificate has not been revoked
OCSP Staple:    Not Enabled
OCSP Origin:    Not Enabled
CRL Status:    Not Enabled

SSL Certificate expiration

The certificate expires December 30, 2019 (1832 days from today)
Certificate does not match name www.domain.tld
Subject   e4:c7:22:cd:d4:74
Valid from 01/Jan/2010 to 30/Dec/2019
Issuer   e4:c7:22:cd:d4:74
SSL Certificate is not trusted

The certificate is not signed by a trusted authority (checking against Mozilla's root store). If you bought the certificate from a trusted authority, you probably just need to install one or more Intermediate certificates. Contact your certificate provider for assistance doing this for your server platform.

C'est quoi ce truc ?  :shock: Rien qui correspond, même pas le type de certificat (j'avais demandé un 2048 bits, ce que confirme bien la vérification par openSSL !!!)... A noter que la vérification d'autres certificats gandi sur SME donne les résultats attendus sur ce site.

Manifestement, il y a un gros truc quelque part, mais quoi et où ?

Bon, que cela ne vous empêche pas de passer un bon réveillon :-). Si toutefois quelqu'un avait une idée, ça me permettrait de finir l'année moins stressé !

Offline Xavier.A

  • ***
  • 104
  • +0/-0
Re: [RESOLU]Problème de renouvellement de certificat GANDI
« Reply #7 on: December 27, 2014, 11:55:15 AM »
Salut adlaw,

2 conseils :
  • tu devrais soit enlever le RESOLU à ton post, soit en écrire un nouveau pour que quelqu'un puisse te répondre
  • tu devrais peut-être tenter d'écrire en anglais

Joyeuses fêtes

Xavier
“When the wise man points to the moon, the fool looks at the finger.”