配置: 设置SSL

关于

嗨!提醒一下:Agent DVR的免费版本适用于使用HTTP进行本地连接。但是,当您进入远程连接的世界时,安全性至关重要,这就是SSL的作用。想要与Agent DVR建立安全的远程连接吗?只需使用我们的远程Web门户,即可获得安全的体验。

重要提示:设置SSL、DNS和端口转发可能会有些棘手,我们不能保证一切顺利。如果您不想涉足这些领域,我们建议您使用我们的服务器进行远程访问。

专业提示:一旦您设置好SSL和DNS,您可以通过移动设备访问Agent DVR,并将其添加为浏览器工具菜单中的应用程序。

Windows上的SSL

Agent DVR 现在自行终止 SSL,因此您只需要一个 PKCS#12 证书文件(一个 .p12.pfx),其中包含私钥。您不再需要将证书安装到 Windows 或与 netsh 绑定。

选项 1 - 快速自签名证书(用于测试): 在 PowerShell 中运行以下命令为 localhost 创建证书并导出为 .p12(更改密码以适合您的需求):

$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

对于公共主机名,请使用 -DnsName "youragentserver.ddns.net" 替代 localhost。

选项 2 - 真实证书(Let's Encrypt): 按照 letsencrypt 指南 ,然后使用 openssl 将生成的 .pem 文件转换为 .p12:

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

打开 Agent DVR,点击服务器图标 – 设置 – 本地服务器选项卡并设置:

  • SSL 端口: 提供 HTTPS 的端口,例如 8443(或标准 HTTPS 端口 443)。
  • SSL 证书: 您的 .p12 文件的完整路径,例如 C:\Agent\certificate.p12
  • SSL 密码: 创建证书时设置的密码。

点击确定。Agent 会自动重启本地服务器 – 监视日志以查看 Accepting SSL connections at https://...。您现在可以在 https://your.server.address:8443 加载用户界面。确保使用 https:// – 使用 http:// 浏览到 SSL 端口会返回空响应。

自签名证书(选项 1)不被浏览器信任,因此您第一次访问时会看到隐私警告。点击 高级 然后 继续访问 localhost(不安全) 以继续 – 自签名证书的这种情况是预期的。真实证书(选项 2)不会显示警告。

在 Linux / macOS 上的 SSL

Agent DVR 从包含私钥的 PKCS#12 证书文件(.p12.pfx)中自行终止 SSL。

快速自签名证书(用于测试):

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

真实证书(Let's Encrypt): 请按照 letsencrypt 指南 ,然后将生成的 .pem 文件转换为 .p12(在保存证书的文件夹中运行):

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

在 Agent DVR 的本地 UI 中点击服务器图标,服务器设置,本地服务器选项卡,然后设置 SSL 端口SSL 证书(.p12 文件的完整路径)和 SSL 密码,然后点击确定。Agent 会自动重启本地服务器,您可以在 https://your.server.address:8443 加载 UI(使用 https://)。

在 Linux 上,1024 以下的端口(包括标准 HTTPS 端口 443)需要 root 权限。作为服务安装的 Agent DVR 以 root 身份运行,因此 443 可用;如果您作为普通用户手动运行,请选择高端口,如 8443。
确保证书文件可被 Agent 进程读取 – 如有需要,请运行
chmod 644 certificate.p12
自签名证书在第一次使用时会触发浏览器隐私警告(点击 高级 然后继续);真实证书则不会。