J’utilise depuis quelques mois un script qui permet de mettre en place et de renouveler les certificats des sites web du boulot. J’en avais causé ici, sauf que depuis, j’ai tout de même apporté quelques modifications et corrections jusqu’à ce matin où je viens de corriger le remplacement de certificat côté serveur Web, qui passe de :
$certupd replace -c /etc/certificates/$oldcert.cert.pem -C /etc/certificates/$newcert.cert.pem
À :
# certupdate needs old and new identifiers (-i and -I options), so calculate them
# Ref: https://apple.stackexchange.com/questions/290261/what-is-the-proper-form-for-cert-identifier-when-using-certupdate
oldid=$(openssl x509 -in /etc/certificates/$oldcert.cert.pem -sha256 -noout -fingerprint | awk -F '=' '{print tolower($2)}' | sed 's/://g')
nexid=$(openssl x509 -in /etc/certificates/$newcert.cert.pem -sha256 -noout -fingerprint | awk -F '=' '{print tolower($2)}' | sed 's/://g')
$certupd replace -c /etc/certificates/$oldcert.cert.pem -C /etc/certificates/$newcert.cert.pem -i sha256:$oldid:"$DOMAIN" -I sha256:$newid:"$DOMAIN"
J’attends de tester ça en live et je fais une PR chez eux…
PS : J’ai le sentiment que ma bidouille pour passer d’un :
SHA256 Fingerprint=E8:5C:06:31:9B:A2:E0:CB:DC:05:01:A8:09:7F:00:B9:2A:DB:D8:0D:C9:5A:DE:EC:9A:58:59:6B:73:9A:77:02
à un
e85c06319ba2e0cbdc0501a8097f00b92adbd80dc95adeec9a58596b739a7702
est surement optimisable :
awk -F '=' '{print tolower($2)}' | sed 's/://g'
Mais n’étant pas spécialiste de awk, et comme ça fonctionne, on va dire que ça ira \o/