Caddy带有WebDAV插件,可以安装在OpenWRT上,用于提供WebDAV协议的NAS服务。Windows资源管理器,MAC的Finder,Android上的CX文件管理器都可以作为WebDAV的客户端。WebDAV使用过程中可以直接打开文件,修改后保存,非常方便,感觉Samb没区别。但其使用https协议,安全性有保证,也易于通过反代等实现各种穿透。
下载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
配置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.key
webdav {
root /mnt/usb/WebApp/500599.xyz/webdav
}
}
Hash-password:
/caddy# caddy hash-password -p yourpassword
增加启动脚本
增加自启动脚本,并保存到/etc/init.d/caddy中:
#!/bin/sh /etc/rc.common
START=99
SERVICE_USE_PID=1
SERVICE_WRITE_PID=1
SERVICE_DAEMONIZE=1
start() {
service_start /usr/bin/caddy run --config /etc/caddy/Caddyfile
}
stop() {
service_stop /usr/bin/caddy
}
给予执行权限:
chmod +x /etc/init.d/caddy
运行
执行下面脚本运行caddy服务,并加入到自启动中:
/etc/init.d/caddy enable # 设置自启动
/etc/init.d/caddy start # 立即启动
成功启动后,就可以愉快地访问WebDAV协议的NAS了