Let’s Encrypt y certbot para HTTPS¶
Desde la versión 1.9.2.340, Perfect Streamer soporta la renovación automática de certificados Let’s Encrypt para HTTPS en Web Server, HTTP Server y EPG Server.
Configuración de certbot para RHEL.¶
Limitación:
El puerto TCP/80 debe estar libre y debe haber asignada una IP pública con nombre de dominio público.
Todos los servidores HTTPS usan el mismo nombre de host (web server, http server, epg server).
Instalación de 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
Configuración de certbot:
sudo ln -s /snap/bin/certbot /usr/bin/certbot
sudo certbot certonly --standalone
Comprobación de certbot:
sudo certbot renew --dry-run
Comprobación del temporizador de certbot:
systemctl list-timers | grep certbot
En el panel admin de Perfect Streamer activar HTTPS en los servidores (Web Server, HTTP Server, EPG Server).
Crear el script hook (https://pstreamer.tv/distrib/scripts/cert_update.zip) y colocarlo en la ruta:
/opt/pss/scripts/cert_update.sh
Allí se puede indicar el nombre de dominio del host; por defecto se toma de /etc/hostname.
Hacer el archivo ejecutable.
chmod +x /opt/pss/scripts/cert_update.sh
Comprobar la ejecución del script, no debe haber errores:
/opt/pss/scripts/cert_update.sh
Los ajustes HTTPS deben aplicarse; el cambio de estado se reflejará en los logs.
Añadir archivo hook a certbot:
certbot renew --deploy-hook "/opt/pss/scripts/cert_update.sh"
Volver a comprobar certbot:
sudo certbot renew --dry-run
Configuración de certbot para Debian/Ubuntu.¶
La configuración para Debian es análoga a RHEL; descripción breve con el ejemplo de Ubuntu 24.04.2 LTS.
Instalación de certbot:
apt install certbot
certbot certonly
Hacer el script ejecutable:
chmod +x /opt/pss/scripts/cert_update.sh
Ejecutar el script:
/opt/pss/scripts/cert_update.sh
Emite:
Select domain name (your domain name)
Comprobar si los certificados se han renovado:
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
La fecha debe ser actual.