Caddy带有WebDAV插件,可以安装在OpenWRT上,用于提供WebDAV协议的NAS服务。
Windows资源管理器,WinSCP,MAC的Finder,Android上的CX文件管理器都可以作为WebDAV的客户端。
WebDAV使用过程中可以直接打开文件,修改后保存,非常方便,感觉Samb没区别。但其使用https协议,安全性有保证,也易于通过反代等实现各种穿透。
1. 下载caddy
访问caddy官网下载最新版本的caddy,根据CPU去选择,我的迅雷赚钱宝一代是Amlogic的S805,支持的是Armv7,所以选择Linux Armv7。
额外功能模块选择
插件模块 | 描述 |
---|---|
aksdb/caddy-cgi/v2 | 如果要取代uhttpd来与行luci,选上aksdb/caddy-cgi/v2。 |
mholt/caddy-webdav | 部署webDAV服务,作为NAS使用 |
caddy-dns/cloudflare | 用于通过API调用cloudflare |
sjtug/caddy2-filter | 记录访客IP到文件 |
下载后放到/usr/bin目录下,并重命名为caddy,并给予执行权限:
chmod +x /usr/bin/caddy
2. 配置caddy
增加下面的配置,并放到/etc/caddy/Caddyfile文件中:
{ # 全局配置order webdav before file_server # 启动 webdav 模块 # 全局配置admin off # 关闭 API 端口 # 全局配置auto_https off #JOP
} # 全局配置nasx.500599.xyz:63038 {basicauth {admin $2a$14$IVbIIBOJUoHC.WJ8oiDkbegJK8SELTi2Id2aM8U4O1s6dVzMPv8SO}tls /mnt/usb/WebApp/500599.xyz/cert/cf_origin_publickey.pem /mnt/usb/WebApp/500599.xyz/cert/cf_origin_privatekey.keywebdav {root /mnt/usb/WebApp/500599.xyz/webdav}
}
Hash-password:
/caddy# caddy hash-password -p yourpassword
3. 让Caddy开机运行起来
3.1 增加自启动脚本,并保存到/etc/init.d/caddy中:
#!/bin/sh /etc/rc.commonSTART=99SERVICE_USE_PID=1
SERVICE_WRITE_PID=1
SERVICE_DAEMONIZE=1start() {service_start /usr/bin/caddy run --config /etc/caddy/Caddyfile
}stop() {service_stop /usr/bin/caddy
}
3.2 给予执行权限:
chmod +x /etc/init.d/caddy
3.3 运行
执行下面脚本运行caddy服务,并加入到自启动中:
/etc/init.d/caddy enable # 设置自启动
/etc/init.d/caddy start # 立即启动
成功启动后,就可以愉快地访问WebDAV协议的NAS了
4. 性能/速度对比
自己直接下载安装的Caddy可以跑满带宽。因为我的这个设备最高就是100Mb,不能更快了。
OpenWRT下直接安装Caddy插件,上传下载速度都仅有40Mb.开启gzip也仅仅稍微有所提高。
5. 相关连接:
1. OpenWRT安装配置Caddy提供WebDAV协议的NAS服务
2. Windows,MAC,Android端连接WebDAV NAS
3. Windiws IIS开启WebDAV协议的NAS,安装配置方法及疑难问题解决
4. 矿渣迅雷赚钱宝1代烧写Openwrt
5. Openwrt挂载大容量NTFS磁盘,解决默认挂载不能写入问题,实现samba共享
6. Openwrt安装ddns-go
7. 原文链接: