OpenWRT安裝Caddy實現WebDAV協議的NAS盤
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.key
webdav {
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.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
}
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. 原文鏈接:

浙公網安備 33010602011771號