Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.
Commentaire: Migrated to Confluence 5.3

Procédure pour mettre à jour le certificat SSL du LDAP SI sur HYGIE

 

 

Etape 1 : Connexion et chemin

Se connecter en root sur hygie.gorgu.net

Se rendre dans le répertoire /mnt/ldapsi-master/config



Etape 2 : Génération du certificat de l'autorité

Génération de la nouvelle clé privée pour le nouveau certificat de l'autorité de certification (autosigné).

Bloc de code
themeMidnight
titleOptions : gen privkey of 4096 bits in SHA-2
openssl genrsa 4096 -sah256 > ca2016.pem

 

Ensuite, à partir de cette clé privée, nous allons générer un certificat d'autorité de certification (valide 100 ans) qui nous permettra de signer les certificats serveurs créés.

Bloc de code
themeMidnight
titleOptions : cert in x509 format for 100 years
openssl req -new -x509 -days 36500 -key ca2016.pem > cacert2016.pem

 

Remplir le formulaire selon les champs suivants :

Bloc de code
themeMidnight
languagebash
titleForm
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:FR
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:GADZ
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:cacert
Email Address []:

 


Etape 3 : Certificat serveur : Génération clé privée, requête de demande, puis certificat

Générer la nouvelle clé privée :

Bloc de code
themeMidnight
titleNew private key
openssl genrsa 4096 -sha256 > ldap.gadz.org_slapd_key2016.pem 

 

Générer la demande CSR :

Bloc de code
themeMidnight
titleCSR request
openssl req -new -key ldap.gadz.org_slapd_key2016.pem > ldap.gadz.org_slapd_cert2016.csr

 

Remplir le fomulaire avec les champs demandés. Celui principal est le common name : il doit se nommer comme la config de l'instance : ldap.gadz.org

Bloc de code
themeMidnight
languagebash
titleForm request
Country Name (2 letter code) [AU]:FR
State or Province Name (full name) [Some-State]:Paris
Locality Name (eg, city) []:Paris
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Arts et Metiers Allumni
Organizational Unit Name (eg, section) []:Gadz.org
Common Name (e.g. server FQDN or YOUR name) []:ldap.gadz.org
Email Address []:[email protected]

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:

 

Générer le certificat (valide 10 ans) selon la demande CSR et la clé privée :

Bloc de code
themeMidnight
titleGenerate certificat with ca
openssl x509 -req -days 3650 -in ldap.gadz.org_slapd_cert2016.csr -out ldap.gadz.org_slapd_cert2016.pem -CA cacert2016.pem -CAkey ca2016.pem -CAcreateserial -CAserial ca2016.srl

 

 

Etape 4 : Archiver et remplacer les anciennes clés

Déplacer et remplacer les anciennes clés :

Bloc de code
themeMidnight
mv ldap.gadz.org_slapd_key.pem certificats_old/
mv ldap.gadz.org_slapd_cert.pem certificats_old/
mv cacert.pem certificat_old/
mv ldap.gadz.org_slapd_key2016.pem ldap.gadz.org_slapd_key.pem 
mv ldap.gadz.org_slapd_cert2016.pem ldap.gadz.org_slapd_cert.pem
mv cacert2016.pem cacert.pem
cp cacert.pem /etc/ldap/
 
mv ldap.gadz.org_slapd_cert2016.csr certificats_2016/
cp ldap.gadz.org_slapd* certificats_2016/
mv ca2016* certificats_2016/

 

 

Etape 5 :

Il faut remplacer le fichier ci-dessous sur chaque serveur : /etc/ldap/cacert.pem par le nouveau fichier généré (celui valide durant 100 ans)

Commencer par remplacer le certificat sur le serveur Puppet Master : toutatis . Les serveurs étant sur Puppet et ayant l'agent lancé seront automatiquement mis à jour.

Le fichier a remplacer sur la config Puppet est :

Bloc de code
themeMidnight
/etc/puppet/environment/production/modules/ldapclient/file/cacert.pem

Ne pas oublier de le pusher sur Git.

 

Ensuite, faire manuellement la modification (pour les serveurs non orchestrés via Puppet) ;

Conseil : copier le fichier cacert.pem sur votre /home/

Pour les serveurs étant liés au LDAP SI (cat /etc/ldap/ldap.conf et vérifier qu'ils sont linké à ldap.gadz.org) et ayant le point de montage NFS /home monté depuis Toutatis :

Bloc de code
themeMidnight
titleCopy from NFS /home
cp /home/arcadio/cacert.pem /etc/ldap/

Pour les serveurs étant liés au LDAP SI mais n'ayant pas le point de montage NFS /home monté depuis Toutatis :

Bloc de code
themeMidnight
titleCopy via scp
scp arcadio@toutatis:/home/arcadio/cacert.pem /etc/ldap/

Remplacer toutatis par le fqdn toutatis.gorgu.net ou l'ip 172.16.1.2 si problèmes DNS ou key ssh

 

On peut vérifier la validité du certificat via :

Bloc de code
themeMidnight
titleVerif certificat end date
openssl x509 -enddate -noout -in /etc/ldap/cacert.pem

Le résultat apparaît de la forme :

Bloc de code
themeMidnight
notAfter=Sep 8 20:24:48 2016 GMT

 

 

Etape 6 :

Relancer l'instance LDAP SI sur Hygie :

Bloc de code
themeMidnight
/mnt/ldapsi-master/shell/exploit.sh stop

Puis :

Bloc de code
themeMidnight
/mnt/ldapsi-master/shell/exploit.sh start

 

Vérification prise en compte des nouveaux certificats :

Bloc de code
themeMidnight
echo | openssl s_client -connect ldap.gadz.org:636 2>/dev/null | openssl x509 -noout -dates

Le résultat apparaît de la forme :

Bloc de code
themeMidnight
notBefore=Sep 6 10:13:45 2016 GMT
notAfter=Sep 4 10:13:45 2026 GMT

 

Il faut également penser à relancer les services nscd et nslcd sur Hygie, Hestia et Toutatis pour éviter les mauvaises surprises :

Bloc de code
themeMidnight
service nscd restart
service nslcd restart