关于
Agent DVR 的免费版本非常适合使用 HTTP 进行本地连接。但是,对于远程连接,安全至关重要,这就是 SSL 的用处所在。要安全地远程连接到您的 Agent DVR 而无需设置,请使用我们的远程网络门户。
专业提示:一旦您设置好 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):按照 Let's Encrypt 说明 ,然后使用 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(或 443 用于标准 HTTPS 端口)。
- SSL 证书:.p12 文件的完整路径,例如 C:\Agent\certificate.p12
- SSL 密码:您在创建证书时设置的密码。
点击"确定"。Agent 会自动重新启动本地服务器。查看日志中是否显示 Accepting SSL connections at https://...。您现在可以在 https://your.server.address:8443 加载界面。务必使用 https://,因为使用 http:// 访问 SSL 端口会返回空响应。
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):按照 Let's Encrypt 说明 操作,然后将生成的 .pem 文件转换为 .p12(从保存证书的文件夹运行):
openssl pkcs12 -export -out certificate.p12 -inkey privkey.pem -in fullchain.pem
在 Agent DVR 的本地用户界面中点击服务器图标、服务器设置、本地服务器选项卡,然后设置 SSL 端口、SSL 证书(.p12 文件的完整路径)和 SSL 密码,并点击确定。Agent 会自动重启本地服务器,您可以在 https://your.server.address:8443 加载用户界面(使用 https://)。
chmod 644 certificate.p12。自签名证书会在首次访问时触发浏览器隐私警告(点击 高级然后继续);真实证书则不会。