"description":"Sirve ProxMenux Monitor por HTTPS con el certificado del host Proxmox (detectado automáticamente, incluido el de Let’s Encrypt instalado mediante ACME de Proxmox) o un certificado personalizado en cualquier ruta del disco.",
"description":"Activa HTTPS para Monitor en 8008 con el certificado del host Proxmox detectado automáticamente o uno personalizado en disco. La opción Proxmox prefiere el certificado instalado mediante ACME, si existe, y reutiliza el Let’s Encrypt gestionado por Proxmox sin otra tarea de renovación.",
"body":"Cómo cambiar el Monitor de HTTP a HTTPS en el panel Settings → Security, a qué apunta realmente cada fuente de certificado en disco, cómo se comporta la opción de Proxmox cuando el host tiene un certificado Let's Encrypt y cómo establecer rutas personalizadas si gestionas certificados fuera de Proxmox."
"body":"Abre Monitor y ve a <strong>Ajustes → Seguridad → HTTPS / SSL</strong>. El panel muestra HTTP o HTTPS y, si HTTPS no está activo, las fuentes de certificados detectadas.",
"imageAlt":"Panel Settings → Security → HTTPS / SSL en el Monitor mostrando el estado HTTPS desactivado, el certificado de Proxmox autodetectado (subject, issuer, expiry) y la opción Use Custom Certificate",
"caption":"Panel Ajustes → Seguridad → HTTPS / SSL antes de activar HTTPS. Monitor muestra el certificado que usa Proxmox y permite elegirlo con un clic."
"bodyRich":"<code>pveproxy</code> aplica la misma selección: al elegir Proxmox, Monitor usa el certificado que la interfaz de Proxmox presenta en 8006, sin copiarlo ni mantener otro proceso de renovación."
"intro":"Proxmox VE incluye su propio cliente ACME. <em>«Order Certificate Now»</em> guarda el resultado en <code>/etc/pve/local/pveproxy-ssl.pem</code>, que Monitor lee. Los cinco pasos siguientes condensan el procedimiento de la <extlink1>guía oficial de Proxmox</extlink1> en los comandos necesarios.",
"<strong>O bien</strong> puerto 80 accesible desde Internet (verificación HTTP-01, la más sencilla), <strong>o bien</strong> proveedor DNS con credenciales API (DNS-01, funciona tras NAT y admite comodines).",
"afterRich":"Proxmox te pide aceptar los términos de servicio de Let's Encrypt. Tras eso la cuenta se persiste en <code>/etc/pve/priv/acme/</code> y la pestaña ACME en la GUI la mostrará."
},
"step2":{
"heading":"Paso 2 — Elige un tipo de challenge",
"http01Rich":"<strong>HTTP-01</strong> es el más fácil: está integrado, sin plugin extra. Let's Encrypt se conecta a <code>http://<your-host>/.well-known/acme-challenge/...</code> en el puerto 80, así que el puerto 80 debe estar abierto desde la internet pública a tu nodo — típicamente un port forward en tu router.",
"dns01Rich":"<strong>DNS-01</strong> funciona sin exponer el puerto 80 (bueno para homelabs detrás de CG-NAT) y es la única opción para certificados wildcard. Añades un plugin DNS una vez con el token API de tu proveedor. Ejemplo con Cloudflare:",
"outroRich":"Para otros proveedores (Gandi, OVH, AWS Route 53, etc.), consulta <code>pvenode acme plugin add dns --help</code>. Proxmox incluye <extlink2>todos los plugins DNS de acme.sh</extlink2>."
"http01Rich":"Para HTTP-01 (usa el plugin <code>standalone</code> integrado):",
"code1":"pvenode config set --acme domains=host.example.com,account=default",
"dns01":"Para DNS-01 con el plugin de Cloudflare del paso 2:",
"code2":"pvenode config set --acmedomain0 domain=host.example.com,plugin=cf\npvenode config set --acme account=default",
"wildcardRich":"¿Wildcard? Añade <code>domain=*.example.com</code> en una entrada <code>--acmedomainN</code> separada. Los wildcards requieren DNS-01."
},
"step4":{
"heading":"Paso 4 — Pide el certificado",
"code":"pvenode acme cert order",
"afterRich":"La primera ejecución suele tardar 30–60 segundos mientras el challenge se propaga. En caso de éxito Proxmox escribe <code>/etc/pve/local/pveproxy-ssl.pem</code> + <code>.key</code>, reinicia <code>pveproxy</code> y un cron de renovación se programa automáticamente (los certificados Let's Encrypt son válidos 90 días; Proxmox los renueva a los 60)."
"afterRich":"Debería imprimir un issuer empezando por <code>O = Let's Encrypt</code>. Si en su lugar pone <code>CN = Proxmox Virtual Environment</code> la orden falló y el archivo sigue siendo el certificado self-signed de PVE — vuelve a ejecutar <code>pvenode acme cert order --debug 1</code> para ver por qué."
},
"gui":{
"title":"¿Prefieres la GUI? Los mismos cinco pasos",
"bodyRich":"Una vez que <code>/etc/pve/local/pveproxy-ssl.pem</code> está firmado por Let's Encrypt, abre <strong>Ajustes → Seguridad → HTTPS / SSL</strong>, comprueba que el emisor sea <em>Let's Encrypt</em> y no la CA local de Proxmox, y pulsa <strong>Usar certificado de Proxmox</strong>. Monitor se reinicia y la siguiente carga usa HTTPS en 8008 con una cadena de confianza pública. Las renovaciones ACME posteriores se validan y seleccionan en la siguiente conexión TLS nueva, sin sondeo periódico ni reinicio del servicio por renovación. <strong>Actualizar certificado</strong> sigue disponible en Seguridad como acción explícita de diagnóstico y recuperación."
"outro":"Ambos archivos los lee el proceso del Monitor al arrancar. Asegúrate de que se mantengan legibles por el usuario con el que corre la unidad systemd (root por defecto). Ubicaciones comunes cuando ACME se gestiona fuera de Proxmox:",
"bodyRich":"<code>certbot</code> almacena los archivos reales en <code>/etc/letsencrypt/archive/</code> y la ruta <code>live/</code> es un symlink. Apunta el Monitor al symlink de <code>live/</code>, no al archivo de <code>archive/</code> — así cada ciclo de renovación simplemente reescribe el destino del symlink y el Monitor toma el nuevo certificado en el siguiente arranque del servicio."
}
},
"afterHttps":{
"heading":"Tras habilitar HTTPS",
"bodyRich":"Guardar el cambio escribe <code>/etc/proxmenux/ssl_config.json</code> y dispara un reinicio de la unidad systemd <code>proxmenux-monitor</code>. La pestaña del navegador perderá su conexión actual — recárgala en <code>https://<host>:8008/</code>. La primera carga con un certificado Let's Encrypt no debería mostrar warning; con el certificado self-signed de Proxmox el navegador requerirá una excepción, la misma que para el puerto 8006.",
"reverse":{
"heading":"Proxies inversos y webhooks",
"bodyRich":"Cuando el Monitor cambia a HTTPS, las URLs de webhook de Proxmox VE registradas para notificaciones también pasan de <code>http://</code> a <code>https://</code> automáticamente. Las entradas de webhook existentes se reescriben la próxima vez que una regla de notificación se guarda o se vuelve a detectar, así que no hace falta edición manual de la configuración de notificaciones de Proxmox."
}
},
"trustCa":{
"heading":"Confiar en la CA self-signed de Proxmox",
"intro1Rich":"Para conservar el certificado predeterminado de Proxmox sin ACME, importa la CA raíz del clúster en el almacén de confianza del sistema o navegador. Monitor detecta <code>/etc/pve/local/pve-ssl.pem</code> como certificado alternativo. El cliente confiará en su emisor; la URL aún debe coincidir con un nombre del certificado.",
"intro2Rich":"El archivo de la CA vive en <code>/etc/pve/pve-root-ca.pem</code> en cada nodo. En un clúster la ruta está en el sistema de archivos compartido <code>pmxcfs</code>, así que todos los nodos comparten la misma raíz, y una sola importación cubre el datacenter entero. Cópialo a tu máquina:",
"<strong>Linux (todo el sistema):</strong> ejecuta <code>sudo cp pve-root-ca.pem /usr/local/share/ca-certificates/pve-root-ca.crt</code> y después <code>sudo update-ca-certificates</code>. Los navegadores que usan el almacén del sistema (Chromium, Edge) lo reconocen tras reiniciar; Firefox usa su propio almacén y requiere la importación manual siguiente.",
"<strong>macOS:</strong> abre el archivo <code>.pem</code> con doble clic en Acceso a Llaveros, añádelo al llavero <em>Sistema</em> y configura <em>Confiar → Confiar siempre</em>.",
"<strong>Windows:</strong> clic derecho en el archivo → <em>Instalar certificado</em> → guárdalo en <em>Entidades de certificación raíz de confianza</em>.",
"<strong>Firefox (cualquier SO):</strong> <em>Ajustes → Privacidad y seguridad → Certificados → Ver certificados → Autoridades → Importar</em>; marca <em>Confiar en esta CA para identificar sitios web</em>."
"bodyRich":"Cada host Proxmox no clusterizado tiene su propio <code>pve-root-ca.pem</code>. Si gestionas varios hosts standalone, repite la copia/importación para cada uno, o únelos a un clúster para que compartan una sola raíz."
"bodyRich":"Pulsa <strong>Deshabilitar HTTPS</strong> en el mismo panel. Monitor reinicia con HTTP sin cifrar, útil si un certificado personalizado no se puede leer y el servicio no arranca. No hay otra desinstalación y los archivos de certificado no se modifican.",
"bodyRich":"<code>/etc/proxmenux/ssl_config.json</code> almacena las rutas de certificado activas y la fuente (<code>none</code>, <code>proxmox</code>, <code>custom</code>). Borrar el archivo equivale a deshabilitar HTTPS — en el siguiente arranque el Monitor recae en HTTP."