SUPPORT

Un problème de certificat ? Besoin d'être dépanné rapidement ? Nos ingénieurs répondent à vos questions.

0 897 690 444 Service 0,80 €/min +prix appel
Menu
picture of tbs certificates
picture of tbs certificates
Les produits
Notre gamme
Partenaires
Support
Numéro vert
Focus


Automatisez vos commandes et renouvellements de certificats à l'aide de TBSCertBot

Pré-requis : TBSCertBot fonctionne avec php 5.4 à 7.x

Présentation

TBSCertBot offre de nombreux moyens d'automatisation :

  • La fonctionnalité des Hooks (crochets, points d'accroche) vous permet d'assigner l'exécution d'un script à la fin d'une commande.
  • La commande cron vous permet, d'une manière combinée, de lancer les commandes download et renew pour vérifier la livraison de nouveaux certificats puis de renouveler les certificats arrivant à expiration.

Mise en place

Nous allons décrire la procédure pour mettre en place un lancement périodique de ce mode afin d'automatiser votre renouvellement et votre installation de certificat.

Configuration des Hooks dans TBSCertBot

TBSCertbot vous permet d'associer des scripts à la fin de certaines opérations dont la commande, le renouvellement, ou le télechargement d'un certificat.

Des scripts d'exemples sont fournis avec TBSCertbot dans le sous répertoire userdoc/examples/hooks. Nous allons détailler leur utilisation.

Pour lier un script à un hook, vous pouvez éditer votre fichier de configation data/conf.ini pour ajouter le chemin vers un script. Par exemple :

  …
  [HOOKS]
  ; These parameters must be a valid path to a script or binary executable, or a valid command if used
  ; Use at your own risk. TBS Internet is not responsible for any damage caused by third party software.
  dcv = /chemin/vers/tbscertbot/userdoc/examples/dcv_order_hook.sh
  download = /chemin/vers/tbscertbot/userdoc/examples/install_download_hook.sh
  …

Des variables d'environnement sont mises à dispostion des scripts si les valeurs existent :

  • PHP_TBS_REFERENCE : La référence TBS de votre commande
  • PHP_TBS_CN : Le CN (Common Name) de votre certificat
  • PHP_TBS_SAN : Une liste des SAN inscrits dans votre certificat, séparés par des virgules.
  • PHP_TBS_KEY : Le chemin absolu vers la clé privée
  • PHP_TBS_CERT : Le chemin absolu vers le certificat
  • PHP_TBS_CHAIN : Le chemin absolu vers le fichier de chaine de certification
  • PHP_TBS_DCV : Le chemin absolu vers le fichier de DCV HTTP

Validation DCV

Les produits Sectigo, TBS X509, et PositiveSSL nécessitent une validation du nom de domaine appelée Challenge DCV.

Le script dcv_order_hook.sh, situé dans le répertoire doc/examples/hooks de votre installation TBSCertBot vous permettra de placer automatiquement le fichier nécessaire à la méthode de validation HTTP(S) à la racine de votre serveur web.

Éditez simplement le chemin vers votre serveur web.

Ce script montre également comment utiliser le nom du CN dans les chemins et noms de fichiers.

Liaison des fichiers de certificat à la livraison

Le script d'exemple install_download_hook.sh présent dans le répertoire doc/examples/hooks de votre installation TBSCertBot vous permettra de lier automatiquement les fichiers de certificat (clé, certificat et chaine) dans un dossier du serveur web pour qu'ils soient automatiquement utilisés.

Il vous faudra éditer votre répertoire ssl dans le script si vous désirez l'utiliser.

Lancement périodique de TBSCertBot

La dernière étape de votre processus d'automatisation consiste à configurer votre système pour lancer périodiquement TBSCertBot. Deux exemples sont fournis : avec timers systemd et avec un cron.

Avec Systemd

Si vous utilisez le système d'init Systemd, vous pouvez utiliser sa fonctionnalité intégrée de timers.

Deux fichiers d'exemples sont disponibles dans le répertoire doc/examples/systemd/ de votre installation TBSCertBot. Le fichier d'extension .timer est défini pour exécuter le fichier de service d'extension .service chaque matin à 04:00, heure locale du serveur.

Le fichier de service exécute TBSCerbot, il vous faudra éditer le chemin avant utilisation.

Avec Cron

Si vous disposez d'un service de cron activé, vous pouvez utiliser ce dernier pour lancer périodiquement TBSCertBot.

La commande crontab -e vous permettra d'éditer le crontab de l'utilisateur courant qui contient les différentes tâches à lancer. Cette commande utilise la variable d'environnement EDITOR ou si elle n'est pas affectée, l'éditeur vi.

Vous pourrez alors ajouter sur une nouvelle ligne :

* 4 * * * cd /chemin/vers/tbscertbot/ && /usr/bin/php /chemin/vers/tbscertbot/tbscertbot.php cron

Cette ligne lancera le cron chaque matin à 04:00. À la sauvegarde du fichier, crontab vérifiera la validité de sa syntaxe.

Liens utiles