Notice: Constant WP_SITEURL already defined in /homepages/2/d944451137/htdocs/app967954450/wp-content/plugins/ionos-sso/inc/DisableUrlChange.php on line 19

Notice: Constant WP_HOME already defined in /homepages/2/d944451137/htdocs/app967954450/wp-content/plugins/ionos-sso/inc/DisableUrlChange.php on line 20

Notice: Die Funktion _load_textdomain_just_in_time wurde fehlerhaft aufgerufen. Das Laden der Übersetzung für die Domain greeny wurde zu früh ausgelöst. Das ist normalerweise ein Hinweis auf Code im Plugin oder Theme, der zu früh läuft. Übersetzungen sollten mit der Aktion init oder später geladen werden. Weitere Informationen: Debugging in WordPress (engl.). (Diese Meldung wurde in Version 6.7.0 hinzugefügt.) in /homepages/2/d944451137/htdocs/app967954450/wp-includes/functions.php on line 6121
3CX MIT LET’S ENCRYPT UND CERTBOT MIT EIGENER DOMAIN – ELMORIA
Skip to content Skip to sidebar Skip to footer

3CX MIT LET’S ENCRYPT UND CERTBOT MIT EIGENER DOMAIN

Achtung!, Software wie Certbot auf dem 3CX Server zu installieren ist von 3CX nicht offiziell supportet und potentiell gefährlich

In diesem Blogeintrag zeige ich, wie man Certbot und Let’s Encrypt TLS-Zertifikate auf einem Debian Stretch (9) 3CX Server verwendet.

Schritt 1: SSH Verbindung zum Server herstellen

Schritt 2: Certbot über snap installieren:

Ausführliche Anleitung unter: https://certbot.eff.org/lets-encrypt/debianstretch-nginx

apt-get install snapd

sudo snap install core; sudo snap refresh core

sudo snap install –classic certbot

sudo ln -s /snap/bin/certbot /usr/bin/certbot

Schritt 3: Zertifikat im Standalone-Modus beantragen

Mit folgendem Befehlt das Zertifikat beantragen. „dein-fqdn.de“ durch den verwendetet FQDN ersetzen.

certbot certonly –standalone -d dein-fqdn.de

Schritt 4: Nun legen wir ein Script an, welches das Let’s Encrypt Zertifikat an die richtige Stelle verschiebt

Anlegen eines Ordners für das Script

mkdir /scripts

In den Ordner wechseln und dort das Script erstellen

cd /scrips/

nano update_cert_3cx.sh

Nun das Script einfügen und jeweils „dein-fqdn.de“ durch den verwendetet FQDN ersetzen.

#!/bin/bash

mv /var/lib/3cxpbx/Bin/nginx/conf/Instance1/dein-fqdn.de-crt.pem /var/lib/3cxpbx/Bin/nginx/conf/Instance1/dein-fqdn.de-crt.pem.old
mv /var/lib/3cxpbx/Bin/nginx/conf/Instance1/dein-fqdn.de-key.pem /var/lib/3cxpbx/Bin/nginx/conf/Instance1/dein-fqdn.de-key.pem.old

cp /etc/letsencrypt/live/dein-fqdn.de/fullchain.pem /var/lib/3cxpbx/Bin/nginx/conf/Instance1/dein-fqdn.de-crt.pem
cp /etc/letsencrypt/live/dein-fqdn.de/privkey.pem /var/lib/3cxpbx/Bin/nginx/conf/Instance1/dein-fqdn.de-key.pem

chown phonesystem:phonesystem /var/lib/3cxpbx/Bin/nginx/conf/Instance1/dein-fqdn.de-crt.pem chown phonesystem:phonesystem /var/lib/3cxpbx/Bin/nginx/conf/Instance1/dein-fqdn.de-key.pem

chmod 644 /var/lib/3cxpbx/Bin/nginx/conf/Instance1/dein-fqdn.de-crt.pem
chmod 640 /var/lib/3cxpbx/Bin/nginx/conf/Instance1/dein-fqdn.de-key.pem

systemctl restart nginx.service

Das Script nun mit folgendem Befehl ausführbar machen:

chmod +x update_cert_3cx.sh

Schritt 5: Dieses Script muss nach jedem „renewal“ des Let’s Encrypt Zertifikats automatisch ausgeführt werden.

Hierzu muss in der renewal config ein „renew_hook“, welcher das angelegte Script ausführt, angelegt werden.

Hierzu öffnet man die folgende Datei

nano /etc/letsencrypt/renewal/dein-fqdn.de.conf

Am Ende der Konfiguration muss folgende Zeile angefügt werden:

renew_hook = /scripts/update_cert_3cx.sh

Schritt 6: Renewal und Zertifikatsverteilung ausführen und testen

certbot renew –force-renewal

Nun das Webinterface der 3CX im Browser aufrufen und prüfen, ob das Let’s Encrypt Zertifikat korrekt deployed wurde.

3CX_Cert

Leave a comment