Methoden zur Zertifikatsaktualisierung
clmBot unterstützt zwei Zertifikatsaktualisierungsmethoden, die je nach Servernetzwerkumgebung ausgewählt werden können:
| Aktualisierungsmethode | Arbeitsmodus | Portanforderung | Geeignete Szenarien |
|---|---|---|---|
| Cloud-Push | Push wird von der Verwaltungskonsole initiiert, der clmBot-Server empfängt und aktualisiert | Der eingehende Port 8862/tcp muss geöffnet sein | Netzwerkrichtlinien erlauben es, Aktualisierungen sollen sofort wirksam werden |
| Zeitgesteuertes Abrufen | clmBot prüft zeitgesteuert, ob in der Cloud neue Zertifikate vorhanden sind, und aktualisiert automatisch | Kein eingehender Port muss geöffnet werden | Server, bei denen kein eingehender Port geöffnet werden kann (empfohlene Standardmethode) |
Die beiden Methoden schließen sich nicht gegenseitig aus; innerhalb derselben Servergruppe kann teilweise Push und teilweise zeitgesteuertes Abrufen verwendet werden.
Methode 1: Cloud-Push
clmBot-Server auf dem Server starten
./clm-bot-linux-amd64 server -a="0.0.0.0:8862"
-a Geben Sie die Abhöradresse und den Port an, standardmäßig 0.0.0.0:8862. Nach dem Start läuft clmBot dauerhaft als Server und wartet auf Push-Nachrichten aus der Cloud.
- Der eingehende Port
8862/tcpmuss in der Server-Firewall und der Cloud-Sicherheitsgruppe geöffnet werden. - Der clmBot-Server aktiviert für eingehende Push-Verbindungen aus der Cloud eine gegenseitige TLS-Authentifizierung und akzeptiert nur Push-Zertifikate von Knoten, deren Zugangsaktivierung abgeschlossen ist.
Wenn Sie keinen eingehenden Port öffnen möchten, verwenden Sie bitte Methode 2: Zeitgesteuertes Abrufen.
Der clmBot-Server muss laufend betrieben werden, um Push-Nachrichten empfangen zu können. In Produktionsumgebungen wird empfohlen, ihn als Systemdienst zu registrieren und den automatischen Start beim Systemstart einzurichten. Siehe Dienstbasierte Bereitstellung und Upgrade.
Zertifikat im Verwaltungs-Backend pushen
Melden Sie sich im Verwaltungs-Backend an, öffnen Sie die Liste der Installationspunkte, suchen Sie den Ziel-Installationspunkt und klicken Sie auf Zertifikat pushen. Nach der Bestätigung überträgt das System das neueste Zertifikat an den Server und führt die Aktualisierung automatisch durch.
Methode 2: Zeitgesteuertes Abrufen
Im zeitgesteuerten Abrufmodus muss kein eingehender Port geöffnet werden. clmBot führt die Aktualisierungsprüfung zeitgesteuert aus. Dies ist die empfohlene Standardmethode.
Linux: crontab konfigurieren
Fügen Sie den Aktualisierungsbefehl von clmBot zur crontab hinzu:
crontab -e
Fügen Sie eine Zeile hinzu (täglich um 3 Uhr morgens die Zertifikatserneuerungsprüfung durchführen):
0 3 * * * cd /opt/clm-bot && ./clm-bot-linux-amd64 update-certificate >> update.log 2>&1
- Im Befehl muss zunächst
cdin das Installationsverzeichnis von clmBot gewechselt und dann ausgeführt werden, da clmBot standardmäßigconfig.yamlaus dem aktuellen Verzeichnis liest. - Alternativ kann das Verzeichnis beibehalten und der Pfad zur Konfigurationsdatei über den Parameter
-cangegeben werden:./clm-bot-linux-amd64 -c /opt/clm-bot/config.yaml update-certificate. - Bitte ersetzen Sie den Pfad durch das tatsächliche Installationsverzeichnis.
Die Ausgabe der Ausführung wird an update.log angehängt, während clmBot die Betriebsprotokolle im Verzeichnis der Konfigurationsdatei unter logs/clm-bot.log aufzeichnet.
Windows: Geplante Aufgabe konfigurieren
Erstellen Sie auf dem Windows-Server eine geplante Aufgabe, die zeitgesteuert ausgeführt wird:
cd /d C:\clm-bot && clm-bot-windows-amd64.exe update-certificate >> update.log 2>&1
Nach Abschluss der Erstellung können Sie mit einem Rechtsklick auf die Aufgabe Ausführen wählen, um sie zu verifizieren, und anschließend das Protokoll im Installationsverzeichnis einsehen, um das Ausführungsergebnis zu bestätigen.
Automatische Zertifikatsneuerstellung und -aktualisierung
Die von clmBot aktualisierten Zertifikate stammen aus der automatischen Neuerstellung in der Cloud. Melden Sie sich im Verwaltungs-Backend an, rufen Sie die Detailseite des SSL-Zertifikats auf, wählen oder geben Sie im Bereich „Automatische Neuerstellung“ den Neuerstellungszeitraum (z. B. 30 Tage) ein und speichern Sie.
Gesamtwirkung nach der Einrichtung:
- Vor Ablauf des Zertifikats führt die Cloud die Neuerstellung automatisch gemäß dem Neuerstellungszeitraum durch und generiert ein neues Zertifikat.
- clmBot bezieht das neue Zertifikat auf die konfigurierte Weise (Push oder zeitgesteuerter Pull).
- clmBot aktualisiert das lokale Zertifikat:
- Wenn das lokale Zertifikat mit dem neuesten Cloud-Zertifikat übereinstimmt, wird die Aktualisierung übersprungen.
- Bei Abweichungen wird die lokale Zertifikatsdatei automatisch gesichert (eine Sicherung mit Zeitstempel
.bakwird erstellt), dann werden nacheinanderbefore_scriptausgeführt, das neue Zertifikat geschrieben undafter_scriptausgeführt, um das Neuladen des Dienstes abzuschließen.
Wenn Sie einmal after_script ausführen müssen, ohne das Zertifikat zu aktualisieren (z. B. zum Debuggen des Reload-Skripts), können Sie den Parameter --force-after verwenden.