使用mkcert免费给群晖创建十年期自签ssl证书

2023-08-27 16:04:10 15点赞 159收藏 18评论

nas玩家一般都有外网访问的需求,而外网访问需求则需要加密手段来保护安全。大多数nas都提供给基于https的加密就是一个非常好用的加密手段。

但https要确保安全的话就需要申请一个ssl证书,ssl证书签发机构通过自己的信誉担保用户访问的服务器是真正的服务器,没有被中间人监听篡改的服务器。因此ca机构签发证书是需要收取费用的,虽然ca机构免费签发ssl证书。但是多少有点限制,比如证书有效时间很短需要经常续签等等。

那为何不能自己给自己签发一个ssl证书了,只要保证自己的根证书私钥不泄露就没有人可以伪造ssl证书。反正nas也不是对公服务的,现在的设备又可安装自定义根证书。

mkcert安装和配置根证书

首先到github下载mkcert工具,下面我以windows平台作为演示

在cmd中cd到mkcert所在的目录运行下面的命令

mkcert.exe -install

这条命令会创建一组根证书和私钥,根证书会被安装到系统中。输入下面的命令就可以查看到ca证书存放的位置。其中“rootCA.pem“就是根证书,有些系统比如windows可能不会认rootCA.pem可以把他改成rootCA.crt。将他发送给需要安装的自定义证书的设备,安装好之后自签名证书就不会显示不安全了。另外rootCA-key.pem是根证书的私钥文件,不可公开需要妥善保管。

mkcert.exe -CAROOT

签发证书

mkcert签发证书非常的简单,用下列的命令就可以给“192.168.100.100”签发一个ssl证书

mkcert.exe 192.168.100.100

当然也可以给域名签发一个ssl证书,比如给*.home.com这个泛解析域名签发ssl证书

mkcert.exe *.home.com

也可以给多个域名多个ip签发ssl证书,比如我给*.home.com, *.nas.com, *.Router.com, 192.168.100.100, 10.10.100.100。等三个域名,2个ip签发在同一张ssl证书中。

mkcert.exe *.home.com *.router.com *.nas.com 192.168.100.100 10.10.100.100

群晖签发证书

如果上面这种方法给群晖添加自定义证书,群晖虽然可以添加但是没办法使用。得使用群晖自己生成csr文件和私钥,然后用csr文件给mkcert签发的ssl证书才能使用。具体操作可以看下图。

使用mkcert免费给群晖创建十年期自签ssl证书使用mkcert免费给群晖创建十年期自签ssl证书使用mkcert免费给群晖创建十年期自签ssl证书

把证书下载好后,将server.csr复制到mkcert所在的目录执行下面的命令,就可以根据csr文件签发出ssl证书。

mkcert.exe -csr server.csr

将生成的证书和刚才下载里面的server.key(私钥)一起倒入到群晖中,并设置配置好证书的使用就可以了。

使用mkcert免费给群晖创建十年期自签ssl证书使用mkcert免费给群晖创建十年期自签ssl证书

设备安装根证书

1.windows

直接打开rootCA.crt,并将证书安装到受信任的根证书

2.安卓

直接在文件管理器安装rootCA.crt

3.macos

直接在文件管理器安装rootCA.crt,然后打开钥匙串-系统找到mkcert开头的证书,双击打开。设置为下图的模式就可以了。

使用mkcert免费给群晖创建十年期自签ssl证书

4.ios

ios安装根证书就相对比较复杂

我的解决办法就是将ca根证书传到群晖或者unraid上,用它们充当简单的http下载服务器。在ios自带的safari登陆群晖在file station上选中证书,长按打开菜单选择下载就可以安装描述文件。对于unraid就更简单了,打开存储证书的磁盘,找到证书存储的位置直接击就可以下载安装描述文件。

ios要先安装ca证书,然后在“设置”——“通用”——“描述文件和设备管理”——验证刚才安装的ca证书。然后在“通用”——“关于本机”——“证书信任设置”信任刚才的ca证书

mkcert签发自签名证书的教程就已经结束了,rootCA.crt可以保存在一些容易获取到的地方,比如网盘上,这样去到新的地方就可以安装根证书确保访问安全了。而且根证书本身就是公开的,不需担心安全性问题,确保不被篡改就行了。

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起
18评论

  • 精彩
  • 最新
  • 我是不是在自己每个设备都要安装这个证书才会生效?

    校验提示文案

    提交
    是的

    校验提示文案

    提交
    到现在依然有效,每个设备都是十年有效期,关键是你要掌握好使用技巧

    校验提示文案

    提交
    收起所有回复
  • 能不能细说下群晖如何生成?执行命令的位置还是软件放的位置?

    校验提示文案

    提交
    总是提示ERROR: failed to read the CSR: open server.csr: The system cannot find the file specified.

    校验提示文案

    提交
    你要把csr文件放在mkcert.exe所在的目录

    校验提示文案

    提交
    还有3条回复
    收起所有回复
  • PC,安卓,都成功了,但是苹果手机也安装成功,上群晖还是提示网站不安全。

    校验提示文案

    提交
    自签证书就是这样。浏览器仍然会认为它是不安全的。我用chrome登录同一局域网内的两台群晖,一台有自签证书,一台没证书。有证书的提示是一个带感叹号的三角“不安全”,没证书的直接是一个红X“不安全”。要想安全就得正儿八经弄域名,申请CA证书。

    校验提示文案

    提交
    ios和macos还需要额外配置

    校验提示文案

    提交
    收起所有回复
  • 这篇内容太有趣了!特别是最后使用 mkcert 免费给群晖创建十年期自签 SSL 证书的部分,真是大招啊!

    校验提示文案

    提交
    说得好,下次别说了

    校验提示文案

    提交
    小白 NAS 入门篇四:使用 mkcert 免费给群晖创建十年期自签 SSL 证书

    校验提示文案

    提交
    收起所有回复
  • mark下,大佬威武

    校验提示文案

    提交
  • 为什么,我的有效期是2年?你们确实十年?

    校验提示文案

    提交
  • 我的有效期也是2年?

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
159
扫一下,分享更方便,购买更轻松