Configuración: Configurando SSL

Acerca de

La versión gratuita de Agent DVR es excelente para conexiones locales mediante HTTP. Para conexiones remotas, sin embargo, la seguridad es esencial, y ahí es donde entra SSL. Para una conexión remota segura a tu Agent DVR sin configuración, utiliza nuestro portal web remoto.

Importante: Configurar SSL, DNS y reenvío de puertos puede ser un poco complicado, y no podemos garantizar que funcione de forma fiable en todas las redes. Te recomendamos que utilices nuestro portal web remoto para el acceso remoto. Seguirás necesitando un equipo ejecutando Agent conectado a tus cámaras, pero no tendrás que ocuparte de nada más.

Consejo profesional: Una vez que tengas SSL y DNS funcionando, puedes acceder a tu Agent DVR desde tu dispositivo móvil y añadirlo como una aplicación a través del menú de herramientas de tu navegador.

SSL en Windows

Agent DVR ahora termina SSL por sí mismo, por lo que todo lo que necesita es un archivo de certificado PKCS#12 (un .p12 o .pfx) que contenga la clave privada. Ya no necesita instalar el certificado en Windows ni vincularlo con netsh.

Opción 1 - certificado autofirmado rápido (para prueba): ejecute esto en PowerShell para crear un certificado para localhost y exportarlo a un .p12 (cambie la contraseña según sea necesario):

$cert = New-SelfSignedCertificate -DnsName "localhost" -CertStoreLocation "Cert:\CurrentUser\My" -NotAfter (Get-Date).AddYears(5)
$pwd = ConvertTo-SecureString -String "yourpassword" -Force -AsPlainText
Export-PfxCertificate -Cert $cert -FilePath "C:\Agent\certificate.p12" -Password $pwd

Para un nombre de host público, utilice -DnsName "youragentserver.ddns.net" en lugar de localhost.

Opción 2 - certificado real (Let's Encrypt): siga las instrucciones de letsencrypt , luego convierta los archivos .pem generados a un .p12 con openssl:

openssl pkcs12 -export -out C:\Certbot\live\youragentserver.ddns.net\certificate.p12 -inkey C:\Certbot\live\youragentserver.ddns.net\privkey.pem -in C:\Certbot\live\youragentserver.ddns.net\fullchain.pem

Abra Agent DVR, haga clic en el icono de Servidor - Ajustes - pestaña Servidor local y configure:

  • Puerto SSL: el puerto para servir HTTPS, por ejemplo, 8443 (o 443 para el puerto HTTPS estándar).
  • Certificado SSL: la ruta completa a su archivo .p12, por ejemplo, C:\Agent\certificate.p12
  • Contraseña SSL: la contraseña que estableció al crear el certificado.

Haga clic en Aceptar. Agent reinicia el servidor local automáticamente. Observe el registro para Accepting SSL connections at https://.... Ahora puede cargar la interfaz en https://your.server.address:8443. Asegúrese de utilizar https:// ya que navegar con http:// al puerto SSL devuelve una respuesta vacía.

Un certificado autofirmado (Opción 1) no es de confianza para los navegadores, por lo que la primera vez que visite verá una advertencia de privacidad. Haga clic en Avanzado y luego en Continuar a localhost (inseguro) para proceder. Esto es lo esperado para certificados autofirmados. Un certificado real (Opción 2) no mostrará la advertencia.

SSL en Linux / macOS

Agent DVR termina SSL desde un archivo de certificado PKCS#12 (un .p12 o .pfx) que contiene la clave privada.

Certificado autofirmado rápido (para prueba):

openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 1825 -nodes -subj "/CN=localhost"
openssl pkcs12 -export -out certificate.p12 -inkey key.pem -in cert.pem -passout pass:yourpassword

Certificado real (Let's Encrypt): siga las instrucciones de letsencrypt , luego convierta los archivos .pem generados a un .p12 (correr desde la carpeta donde se guardó su certificado):

openssl pkcs12 -export -out certificate.p12 -inkey privkey.pem -in fullchain.pem

En la interfaz local de Agent DVR haga clic en el icono Servidor, Configuración del servidor, pestaña Servidor local, luego establezca Puerto SSL, Certificado SSL (la ruta completa a su archivo .p12) y Contraseña SSL, y haga clic en Aceptar. Agent reinicia el servidor local automáticamente y puede cargar la interfaz en https://su.dirección.servidor:8443 (use https://).

En Linux, los puertos por debajo de 1024 (incluido el puerto HTTPS estándar 443) requieren acceso raíz. Agent DVR instalado como servicio se ejecuta como raíz, por lo que 443 funciona; si lo ejecuta manualmente como usuario normal elija un puerto alto como 8443.
Asegúrese de que el archivo de certificado sea legible por el proceso de Agent. Si es necesario correr chmod 644 certificate.p12. Un certificado autofirmado genera una advertencia de privacidad del navegador la primera vez (haga clic en Avanzado luego continúe); un certificado real no lo hará.