为浏览器部署 NAS 的自定义证书

最近 NAS 遇到一些软件上的小毛病,群晖技术支持让我给 NAS 重装系统,这样相当于 reset 系统设置但是数据不会丢。我搞完以后发现 https 证书忘了备份了,于是得重新搞一次。

https 可以令网络数据传输完全暗号化,这样像运营商、网络设备等网络中间层只能知道你访问了哪个站点,而无法获取或篡改传输的数据。这在网络劫持盛行的国内显得非常重要。

简单点说,就是浏览器和操作系统里有注册好的可信证书发行机构,而站点用自己的域名从发行机构那里申请证书挂到自己的网站上。当浏览器访问该网站时,只要网址和可信发行机构发行的证书对得上号,浏览器便启动 https 加密传输。

而 NAS、路由器这样的一般家用网络设备虽然有自己的证书,但一是各种 DDNS 网址变化多端,二是证书没有有效的发行机构,所以一般通过 https 访问过去会遇到这样的警告。

虽然可以强行访问(Chrome)或把这张被认为不安全的证书加入信任列表(Firefox),但浏览器依旧会标注这个不安全的 https 连接,和安全的 https 连接有着显著区别。

其实群晖 DSM 6.0 就可以直接申请可信机构 Let’s Encrypt 颁发的证书,但这种做法在国内相当不可行,所以到头来还是需要自行部署自定义证书。反正我是看这个警告不爽。而且如果因为每次都看见警告而忽略它的存在,万一被中间人攻击了都可能发现不了。

现阶段最靠谱的办法,就是让群晖自己签发一张证书并替换掉默认的群晖证书。在 DSM 6.0 控制面板的 安全 – 证书 里点击“新增”并选择“创建自我签署证书”即可。

证书信息其他的都可以随便填,但是域名一定要填写访问 NAS 用的 DDNS 域名,否则域名对不上号一样会被判断为无效证书。证书签署完成后设置为默认,再把证书导出保存即可。有了这份保存出来的证书,接下来就可以在各个设备里导入了。

————— Windows 篇 —————

对于 Chrome 浏览器,管理证书的选项在 设置 – 高级设置 – HTTPS/SSL 这里。找到“受信任的根证书颁发机构”,点击导入,选择群晖导出的证书文件包 archive.zip里解压出来的 syno-ca-cert.pem 文件,全部确认以后重启浏览器。

因为 Chrome 的证书设置和 Windows 系统共享,所以这样一搞以后不仅仅是 Chrome,连 IE 和 Edge 也能以 https 安全连接正常访问 NAS 了。

而 Firefox 的证书管理系统是独立的,在这个地方。导入过程大同小异,对了好像 Firefox 还没有禁掉 CNNIC 和沃通的证书,顺手干掉它们吧。

————— macOS 篇 —————
mac 版本的 Chrome 和系统本身共享证书设定,至于如何设置在苹果官网就可以找到教程;而 mac 版 Firefox 的设置方式和 Windows 版完全相同。

————— iOS 篇 —————
相比于同属苹果家的 macOS 来说,iOS 导入证书的过程真可谓轻松愉快:只要把 syno-ca-cert.pem 文件通过邮件发给自己,再点开就可以一路安装完成了。

————— Android 篇 —————
同样是系统级别的证书,由于 Android 支持文件系统,所以导入比 iOS 还要方便一点:只要把证书文件复制到内部存储设备上,在系统 – 安全里就能够选择导入。导入时会要求强制开启锁屏密码,开启后导入成功再关闭也行。

嗯,https 是个好东西,希望大家都能好好利用。说起来其实本站也能申请 https 证书,这看我什么时候心血来潮搞一下了。

为浏览器部署 NAS 的自定义证书》有2个想法

  1. synology

    你好,按照你的方法我用自签证书,只有火狐能验证通过,chrome和safari都提示无法验证服务器身份(没有windows没测试过ie)。Ds file等app也验证不通过,难道现在浏览器都加强了验证?

    回复

发表评论

电子邮件地址不会被公开。 必填项已用*标注