Let’s Encrypt und certbot für HTTPS¶
Ab Version 1.9.2.340 unterstützt Perfect Streamer die automatische Erneuerung von Let’s-Encrypt-Zertifikaten für HTTPS in Web Server, HTTP Server und EPG Server.
certbot für RHEL einrichten.¶
Einschränkung:
Der TCP-Port 80 muss frei sein und es muss eine öffentliche IP mit Public-Domain-Name vergeben sein.
Alle HTTPS-Server nutzen denselben Hostnamen (Web Server, HTTP Server, EPG Server).
Installation von certbot (https://certbot.eff.org/instructions?ws=other&os=snap):
sudo yum install snapd
sudo systemctl enable --now snapd.socket
sudo ln -s /var/lib/snapd/snap /snap
sudo snap install certbot --classic
certbot konfigurieren:
sudo ln -s /snap/bin/certbot /usr/bin/certbot
sudo certbot certonly --standalone
certbot-Prüfung:
sudo certbot renew --dry-run
certbot-Timer prüfen:
systemctl list-timers | grep certbot
In der Perfect-Streamer-Adminoberfläche HTTPS für Web Server, HTTP Server und EPG Server aktivieren.
Hook-Skript erstellen (https://pstreamer.tv/distrib/scripts/cert_update.zip) und es unter folgendem Pfad ablegen:
/opt/pss/scripts/cert_update.sh
Dort kann bei Bedarf der Hostname eingetragen werden; standardmäßig wird er aus /etc/hostname übernommen.
Datei ausführbar machen.
chmod +x /opt/pss/scripts/cert_update.sh
Skriptausführung prüfen, es sollten keine Fehler auftreten:
/opt/pss/scripts/cert_update.sh
Die HTTPS-Einstellungen sollten greifen; die Statusänderung wird in den Logs angezeigt.
Hook-Datei in certbot hinzufügen:
certbot renew --deploy-hook "/opt/pss/scripts/cert_update.sh"
certbot erneut prüfen:
sudo certbot renew --dry-run
certbot für Debian/Ubuntu einrichten.¶
Die Einrichtung unter Debian läuft analog zu RHEL; kurze Beschreibung am Beispiel Ubuntu 24.04.2 LTS.
certbot installieren:
apt install certbot
certbot certonly
Skript ausführbar machen:
chmod +x /opt/pss/scripts/cert_update.sh
Skript ausführen:
/opt/pss/scripts/cert_update.sh
Ausgabe:
Select domain name (your domain name)
Prüfen, ob die Zertifikate erneuert wurden:
ls -lat /opt/pss/config/cert/
total 44
-rw------- 1 root root 241 May 26 07:52 epgserver.key
-rw------- 1 root root 241 May 26 07:52 httpserver.key
-rw------- 1 root root 241 May 26 07:52 webserver.key
-rw-r--r-- 1 root root 1338 May 26 07:52 epgserver.crt
-rw-r--r-- 1 root root 1338 May 26 07:52 httpserver.crt
-rw-r--r-- 1 root root 1338 May 26 07:52 webserver.crt
Das Datum muss aktuell sein.