Aller au contenu principal

Méthodes de renouvellement des certificats

clmBot 支持两种证书更新方式,可以按服务器网络环境分别选择:

更新方式工作模式端口要求适用场景
云端推送管理后台发起推送,clmBot 服务端接收并更新需开放 8862/tcp 入站端口网络策略允许、希望更新即时生效
定时拉取clmBot 定时检查云端是否有新证书并自动更新无需开放入站端口无法开放入站端口的服务器(推荐默认方式)

两种方式互不冲突,同一批服务器中可以部分使用推送、部分使用定时拉取。

方式一:云端推送

在服务器上启动 clmBot 服务端

./clm-bot-linux-amd64 server -a="0.0.0.0:8862"

-a Spécifiez l’adresse d’écoute et le port, la valeur par défaut est 0.0.0.0:8862. Après le démarrage, clmBot fonctionnera en permanence en tant que serveur, en attendant les notifications push du cloud.

Attention
  • Il est nécessaire d’ouvrir le port entrant 8862/tcp dans le pare-feu du serveur et dans le groupe de sécurité du cloud.
  • Le serveur clmBot active l’authentification TLS mutuelle pour les connexions push du cloud, et n’accepte que les certificats push des nœuds dont l’activation a été finalisée.

Si vous ne souhaitez pas ouvrir de port entrant, veuillez utiliser Méthode 2 : extraction périodique.

Information

Le serveur clmBot doit rester en cours d’exécution pour recevoir les notifications push. En environnement de production, il est recommandé de l’enregistrer comme service système et d’activer le démarrage automatique au démarrage, voir Déploiement en tant que service et mise à niveau.

Envoyer le certificat depuis la console d’administration

Connectez-vous à la console d’administration, accédez à la liste des points d’installation, trouvez le point d’installation cible et cliquez sur Envoyer le certificat. Après confirmation, le système enverra le dernier certificat au serveur et terminera automatiquement la mise à jour.

Méthode 2 : extraction périodique

Le mode d’extraction périodique ne nécessite pas d’ouvrir de port entrant. clmBot exécute périodiquement la vérification des mises à jour ; il s’agit du mode par défaut recommandé.

Linux : configurer crontab

Ajoutez la commande de mise à jour de clmBot à crontab :

crontab -e

Ajoutez une ligne (exécuter la vérification de renouvellement des certificats chaque jour à 3 h du matin) :

0 3 * * * cd /opt/clm-bot && ./clm-bot-linux-amd64 update-certificate >> update.log 2>&1
Remarque
  • Dans la commande, vous devez d'abord cd vers le répertoire d’installation de clmBot avant de l’exécuter, car clmBot lit par défaut config.yaml depuis le répertoire courant.
  • Vous pouvez également ne pas changer de répertoire et spécifier le chemin du fichier de configuration via le paramètre -c : ./clm-bot-linux-amd64 -c /opt/clm-bot/config.yaml update-certificate.
  • Veuillez remplacer le chemin par le répertoire d’installation réel.

La sortie d’exécution sera ajoutée à update.log, et clmBot enregistrera également les journaux d’exécution dans logs/clm-bot.log situé dans le répertoire où se trouve le fichier de configuration.

Windows : configurer une tâche planifiée

Créez une tâche planifiée sur le serveur Windows pour une exécution périodique :

cd /d C:\clm-bot && clm-bot-windows-amd64.exe update-certificate >> update.log 2>&1

Une fois la création terminée, vous pouvez cliquer avec le bouton droit sur la tâche et sélectionner Exécuter pour la vérifier, puis consulter les journaux dans le répertoire d’installation pour confirmer le résultat de l’exécution.

Renouvellement et mise à jour automatiques des certificats

Les certificats mis à jour par clmBot proviennent du renouvellement automatique dans le cloud. Connectez-vous à la console d’administration, accédez à la page de détails du certificat SSL, puis, dans les paramètres de renouvellement automatique, sélectionnez ou saisissez la période de renouvellement (par exemple 30 jours) et enregistrez.

Effet global après la configuration :

  1. Avant l’expiration du certificat, le cloud effectue automatiquement le renouvellement selon la période définie et génère un nouveau certificat.
  2. clmBot récupère le nouveau certificat selon le mode configuré (envoi push ou extraction planifiée).
  3. clmBot met à jour le certificat local :
  • Si le certificat local est identique au dernier certificat du cloud, la mise à jour est ignorée.
  • S’il est différent, clmBot sauvegarde automatiquement les fichiers du certificat local (en créant une sauvegarde horodatée .bak), puis exécute successivement before_script, écrit le nouveau certificat et exécute after_script pour terminer le rechargement du service.
Conseil

Si vous devez forcer une exécution de after_script sans mettre à jour le certificat (par exemple pour déboguer le script de rechargement), vous pouvez utiliser le paramètre --force-after.