Normal view

There are new articles available, click to refresh the page.
Before yesterdayTricks & Tech

群晖 WebDAV 套件因为SSL证书错误无法启动

By: Kaiyuan
5 September 2025 at 22:49

synology-webdavserver-ssl-error公司 NAS 之前一直开着 WebDAV 的,后来某一天不知道为什么不行了,然后我折腾了好久。最后发现是 SSL 证书问题…

我一直使用家里 NAS 自动申请 let’s encrypt 证书,然后同步到家里路由,公司路由和 NAS。使用的是 syno-acme 脚本更新。证书同步到公司 NAS 则是用修改版的脚本更新证书。

之前一直都没有问题的,出问题之后我在群里问,群友叫我先 ps -ef | grep webdav 查询一下进程,发现完全没有允许,很是无语。然后我搜了一下 webdav 目录,找到日志问题 /var/log/webdav/webdav-error.log 发现一直提示证书错误,key 和证书不匹配… webdav-error

看到这日志…我瞬间无语了,我更新脚本其他套件都没问题 ssl 正常的。但是到了 WebDAV 就出现证书错误,然后我重新跑一次证书脚本,还是一样,最后我是手动上传证书,这样才正常启动 WebDAV。


使用群晖唤醒局域网内其他设备

By: Kaiyuan
20 February 2020 at 00:18

之前我写了一篇用树莓派唤醒内网设备的文章,现在再写一篇通过群晖唤醒内网设备的。当然还是要你稍微了解 Linux 系统才可以。用的代码和之前文章的一样。

代码目录

首先在群晖套件中心安装 Web Station 和 Node.js v8(v12 的 npm 安装会提示 zlip 有问题的)。通常 Node.js 会在你安装某些应用时候就会装上的,如果没有装你需要先安装一下。

安装好之后打开 File Station 左边的列表应该就会出现一个 Web 文件夹,在文件夹里建一个 node 文件夹作为存放相关代码文件用,并且在 node 文件夹中再新建一个 logs 文件夹存放日志用。

群晖 Web Station 目录

然后修改一下之前树莓派文章的代码,主要是 pm2_config.json 文件改为绝对路径。一般 Web 文件夹绝对路径是 /volume1/web/,其中 volume1 是储存池的目录,如果你装了多个硬盘或者组阵列的话就需要你自己在终端查一下你 Web 文件夹的目录了。

{
    "apps" : [{
        "name"        : "nodewol",
        "script"      : "/volume1/web/node/index.js",
        "cwd"		 :	"/volume1/web/node/",
	"instances"  : "1",
	"log_date_format"  : "YYYY-MM-DD HH:mm Z",
	"log_file"   : "/volume1/web/node/log/wol.log",
	"error_file" : "/volume1/web/node/log/wol-err.log",
	"out_file"   : "/volume1/web/node/log/wol-out.log",
        "watch"      : true
    }]
}

群晖唤醒方式

群晖上不能安装 waleonlan,所以我们需要使用 nodejs 的 wol 包来实现唤醒设备。

/**
 * Post请求执行 shell 命令
 * 只要向这个地址提交 {"mac":"设备 MAC 地址"}
 * kaiyuan Hsie
 * https://boxks.com
 * */

//1. 导入express
var express = require('express');
// 解析器 需要安装 npm install -g body-parser
var bodyParser = require('body-parser');

// WOL 包 npm install wol
var wolfun = require('wol');

// 时间模块
var sd = require('silly-datetime');
var nowTime=sd.format(new Date(), 'YYYY-MM-DD HH:mm:ss');

// 创建 application/x-www-form-urlencoded 编码解析
var urlencodedParser = bodyParser.urlencoded({ extended: false });

// 创建服务器
var router = express.Router();

router.post("*", urlencodedParser, function (request, response) {
	//
	if (!request.body) {
		response.send("请提交设备 MAC 地址");
	} else {
		var thisMAC = request.body.mac;
		wolfun.wake(thisMAC, function(error, postText){
			if (error !== null) {
				console.log('-wol- exec error: ' + error+' '+nowTime);
				response.send('exec error: ' +error);
			} else {
				console.log("-wol- "+thisMAC+' '+postText+' '+nowTime);
				response.send('已经叫咗电脑开机!');
			}
		});
		  
	}
});

module.exports = router;

安装 PM2

开启群晖 SSH

在群晖控制面板的「终端机和 SNMP」中勾选「打开 SSH」然后应用。

接着打开你电脑上的终端,Windows 上按 Win+R 然后输入 CMD,或者在开始菜单按钮上右键,选择打开 CMD。

终端 SSH 连接

打开只会输入 ssh user@192.168.2.117 这样的命令,其中 192.168.2.117 替换为你群晖的 IP。通常在群晖页面右下角的系统状况可以看到。而 user 替换为你群晖的账号名。然后会提示你输入密码,这个时候你输入任何内容都不会显示出来的,你不用管,直接输入密码只会按 Enter 就好了。

如果你 nodejs 默认是 v12,则先输入 nvm set 8.9.4 切换回 v8 才能正常使用 npm!

然后安装 PM2

npm install pm2 -g

等待安装好只会会直接显示 pm2 的路径的,注意记下来,因为后面我们要用绝对路径来运行 pm2 的。这个路径一般都是在 Node.js 目录下面。

/volume1/@appstore/Node.js_v8/usr/local/bin/pm2
or
/volume1/@appstore/Node.js_v8/usr/local/lib/node_modules/pm2/bin/pm2

你可以测试一下运行上传的代码。

/volume1/@appstore/Node.js_v8/usr/local/bin/pm2 start /volume1/web/node/pm2_config.json

如果没有提示红色错误,直接显示表格运行状态的话就 OK 了。然后现在关掉这个测试。因为我们要用群晖的任务计划让他开机自动启动。

/volume1/@appstore/Node.js_v8/usr/local/bin/pm2 stop /volume1/web/node/pm2_config.json

设置开机启动

打开群晖的控制面板,选择任务计划,新增>触发的任务>用户定义的脚本。

设置群晖开启启动命令

任务名称随便你填写一个,用户账号选择 root。然后在任务设置页面「用户定义的脚本」上面测试的那段代码,然后按确定。

设置群晖开机启动命令

保存好只会记得勾选刚新建的项目前面的勾,然后右键>运行。这样就完成了。

设置反向代理

在控制面板中的「应用程序门户」里面的「反响代理服务」新增一项。

设置群晖反向代理

描述随便填,协议选择 Https,端口就是你想用来访问的端口,例如 10505(填5位数可以防止和常用端口冲突),勾选「启动 HTTP/2」,下面的「目的地」就是填 node.js 应用的信息,地址就是 127.0.0.1,端口就是应用的端口 5050。然后确定。

这样就可以把 mac 地址通过 post 发给 https://192.168.2.117:10505/wol 这个地址来唤醒局域网内的设备了。

至于 https 证书问题,如果你用群晖的 DDNS 就不需要额外操作,如果你是用自己的域名就需要用 acme 申请Let’s Encrypt证书了。

当然你要在外网访问还要在路由器上设置端口映射。我之前的文章有写,这这里就不重复了。


给群晖加一个UPS

18 December 2019 at 21:39

UPS——不间断电源,就是一个大型的充电宝,能在停电后给你的机器提供几分钟的供电时间,让你有时间思考一下是不是得换个小区住了。
——五花肉肉。

在一个月时间内家里连续停电两次,都是发生在夜间,停电后又恢复。第一次由于没有给群晖NAS设置停电后来电重启,导致我到了公司却连不上家里的NAS,耽误了些事。那次就决定买一个UPS不间断电源了,结果双十二忘记了,第二次发生在前天,起床后蹲马桶上就下了一单。

我知道现在的UPS都无法在停电后提供很长时间的供电,我想要的是停电后能自动关机,确保数据不会因为自动断电而损坏就行了,在这个基础上UPS的体积越小越好。

首先在群晖官网的兼容性列表里查我的918+兼容的UPS型号,大概考虑购买渠道、价钱、体积、外观几个因素后选定了Santak的TG-BOX 600,到底是不是最适合我的那些条件的,我也不知道,毕竟马桶不能蹲太久。

别废话,先看东西。

包装很简单,附送一条USB数据线和一张说明书就完了。说实话虽然选的最小号的UPS,但实物之大还是超乎我的想象,比我的脚大多了。需要注意的是左侧这一排是不间断电源,而右侧这一排则是普通防雷电源。

电源的顶部开关,保险,两个USB充电口(都说是个充电宝了嘛),还有一个USB通讯口,可以和NAS连接。背部还可以拆卸电池,如果内置电池寿命到了可以自行更换。

连接NAS

电源接入家里的电源插座,NAS电源插入UPS”不间断电源“这一排插座,附赠的USB数据线连接UPS的通讯口和NAS的USB接口就行了。

NAS设置

在群晖系统设置-电源-不断电系统里勾选“启用UPS支持”,应用即可。因为我购买的是群晖兼容性列表里提供的UPS型号,所以没什么其它设置了,如果不是的话可能还要选择UPS的型号。

”Diskstation进入安全模式之前的等待时间”选项是说当停电时不会马上关机,而是达到你设置的时间或者电池用完后才关机。

“设备信息”则可以查看UPS的状况。如下图

另外还要在电源-常规里勾选“电力故障排除后自动重启启动”,这样来电后就会自动开机了。

祝大家玩得开心。

威联通还是群晖

15 December 2019 at 17:33

一年前入坑玩NAS买了台威联通(QNAP)的TS-453B mini,一年后我换了台群晖918+,如果上网搜的话会感觉到群晖的用户远多于威联通用户,是不是群晖就一定比威联通的好呢?

我的答案

不是

为何要换群晖

没用过,想试试,仅此而已。

凭记忆来聊聊两个机器的印象

因为我的威联通已经咸鱼出掉了,所以只能凭记忆尬聊。

以下比较仅限于威联通TS-453B mini和群晖918+,两台设备实际入手价相差一千多元,所以有些东西看看就好。

硬件

  1. 群晖做工略好,虽然都是塑料壳子,但群晖摸起来明显高档,不过两台机器相差一千多元所以也不具备可比性。
  2. 群晖散热略好,从系统读取的数据来看硬盘温度35°左右,而威联通基本都在38°~40°。
  3. 群晖风扇声音较小,但硬盘声音比较大,两台设备都只能放在客厅,绝对不能放在写字桌旁,都是无法忽略的吵。
  4. 两台机器都有双千兆网口,都可以链路聚合,但我家其他硬件不支持所以没试过效果。
  5. 两台机器都有两个内存插槽,威联通可以在机器外部更换,较为方便,而群晖必须拆掉硬盘才能更换。威联通随机配的是两条2G频率1677的内存,群晖随机配的是单条4G频率1866的内存,最后都换成了我自己买的两条8G频率1677的,目前使用没问题。(不玩虚拟机的话4G足够用了)
  6. 威联通的很多机型都有HDMI接口,可以方便地直接接电视使用,但至少我用的这款TS-453Bmini不推荐这样使用,它并不是在电脑上管理NAS后台,而是用虚拟机另外虚拟了一个系统,有专用的app,太卡了,别说播放4k电影了,操作个界面我都想把机器砸了,随便买个几百块的电视盒子都比它流畅。另外,如果用了这套虚拟系统后,就无法再安装其他虚拟机了。
  7. 群晖918+没有HDMI接口,但是有两个ssd缓存插槽(仅能做缓存使用),目前我还未使用,网上看了一下,一般情况下对文件传输没有太大影响,但如果经常需要传输大量小文件的话速度提升非常明显。我一个人使用的话没有必要,啥时候捡到便宜的ssd了再插。
  8. 同样的网络环境里,两台机器都能跑满我家的千兆网,传输速度都在100M/s以上,但威联通的传输速度略好一些,可以达到113M/s,而群晖只能达到110M/s,传输大文件的时候威联通的稳定性也要好一些几乎不掉速,群晖就不那么稳定了。两台机器的硬盘我都是采用的基本模式,没有组raid。
  9. 两台机器对于3.5寸硬盘都可以做到免工具拆装,对于硬盘槽群晖略好,有弹簧助力还可以上锁,进一步防止意外,两台机器都支持硬盘的热插拔。
  10. 群晖的开关机速度明显快于威联通,尤其是开机速度,提升明显。

系统

网上说的比较多的应该是这部分,基本都说群晖系统好,但我不太同意。

  1. 外观界面群晖显得更精致,字体啊,图标啊,都更漂亮,整体布局比较土。
  2. 大家都称赞群晖系统易用,这个我觉得是最大的误解,对于没接触过NAS且网络相关知识不太熟悉的人来说也许是对的,但我是先接触的威联通再换的群晖,我的感觉是群晖不是“简易”,是“简陋”,比如web服务器,你得单独安装一个套件,webdav你得单独安装一个套件等等,而每个功能显示的内容,可设定的选项都要远少于威联通,所以你可以说这是易用,但对于喜欢掌控自己机器的人来说威联通会更好。
    再举一个例子,创建虚拟机时威联通会直接显示出各虚拟网关,物理网关的拓扑图,而群晖只有纯文字显示。
  3. 两台机器的cpu是一样的,系统响应速度感觉上也差不多,后台管理都很流畅,稳定性上感觉威联通好一点,例如第一方的网盘功能群晖偶尔会重启,威联通从未遇过,当然也可能有只是我不知道;而第三方的功能已经碰到好几次emby停止服务要手动重启了,威联通一次都没碰到,当然也可能是软件本身的问题。
  4. 手机软件,界面仍然是群晖的美观,但登录方面还是威联通的方便,威联通设置好账号,局域网地址,外网地址后会自动根据你上网的环境切换登录方式,只要网络没问题肯定有一种方式能连接后台,但群晖不行,如果你登录的是局域网,到了外网后还得手动退出再切换一下外网登录方式才行。而使用功能上我觉得对于后台系统管理威联通比较详细,群晖太简陋,其他功能差不多,下载,网盘,这些两者差不多。(影音,相片这些功能我并未使用,所以不太清楚)

软件

  1. 第一方软件,威联通数量较多,但常用的两者都差不多,这方面不用纠结,而下载速度上群晖优势明显。
  2. 第一方软件我常用的网盘,网站服务器,这些都是群晖较好,但网络连接各种协议的设定威联通比较集中也更清晰。虚拟机,docker这方面也是威联通的更清楚。
  3. 最近群晖系统升级后与迅雷合作推出“玩物下载”,其实就是官方的迅雷远程下载,速度还行,但也跑不满我家300Mb带宽,使用这项服务需要迅雷会员,没有白金以上会员的话会限速。目前这个可能是群晖独享,不知威联通上以后会不会有。
  4. 第三方软件,群晖的使用群体大,所以软件质量也好一点,各种社区也比威联通的要活跃,大多数时候下载速度也会快一点。有些第三方开发商也会直接提供下载源,这样就不用去网站下载app了,在群晖套件中心就能更新,例如emby。但这其实未必是好事,国内的互联网说不能访问就不能访问了。

综上

  1. 硬件配置,系统稳定性上威联通略好。
  2. 系统美观性,易用性(针对普通用户)群晖略好。
  3. 第一方软件,群晖略好。
  4. 喜欢折腾,玩虚拟机,熟悉各种网络协议的,威联通更好。
  5. 外观、做工,一分钱一分货。

❌
❌