【Cloudreve】正确地用Webdav服务把网盘挂在Windows上

这篇具有很好参考价值的文章主要介绍了【Cloudreve】正确地用Webdav服务把网盘挂在Windows上。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Cloudreve是一款基于Web平台的在线云存储管理系统。它支持各种常见云存储服务(如Google Drive、OneDrive、Dropbox等)的管理和集成,用户可以通过Cloudreve将这些云存储服务连接起来,方便地管理自己的云存储文件。同时,Cloudreve还具有多用户管理和权限控制,支持文件分享、加密和防盗链等功能,可用于个人、企业等多种场景。

简单的来说,电脑上装个Cloudreve就变成一个可以做资源共享(云盘)的网站了,也能简单地直接让别的(局域网或外网)的电脑通过网络盘符映射的方式直接访问到资源。

它的功能很强大,其中一个比较受到大家关注的功能就是让其他局域网的Windows电脑直接访问的功能,Cloudreve是通过WebDAV协议实现的。

相信各位看到这文章,也是因为碰到WebDAV使用不成功的问题。那么,如何排查无法通过WebDAV访问网盘的问题呢?主要的问题有以下几点:

  1. Cloudreve服务器内的设置
    其实这个应该不是大家的最主要碰到的问题。Cloudreve中可以为每个用户组单独设置“是否允许使用WebDAV访问”的开关,但是这玩意儿默认是开启的,所以如果不小心关掉了,请打开它。
    webdav 网盘,网络大杂烩,windows,Cloudreve,WebDAV,无法访问,https

  2. 确保需要连接的电脑可以被正确地访问到
    这点其实也比较好排查,主要是防火墙的问题,在Cloudreve运行的电脑上检查下端口是否被防火墙隔了,或者是直接建立一个简单的共享文件夹,看看是否可以从局域网其他电脑通过samba协议看到共享的文件即可,或者ping一下。一般来说也不会存在问题。

  3. Windows的资源管理器HTTPS协议及SSL证书问题
    这是最可能发生问题的点。下面详细展开讲。


解决由于证书和HTTPS协议导致的Cloudreve无法通过WebDAV协议问题


由于Windows系统内置的文件浏览器(也就是平时我们用来看文件那个)内置的WebDAV协议只支持https,但是Cloudreve是http服务,所以,无法直接添加到 “网盘/dav” 的网络映射。

有解决方案提出,需要在客户机电脑上对windows的注册表进行修改,使得其可以强行运行在http协议下,这种方案我没有测试过,也不是很推荐大家使用。

因为考虑到毕竟是网盘,局域网内还好,真是对外网开放的话,首先cloudreve不可能直接http裸奔,二来直接http传文件还是不够安全;所以,要做就做全了,而且通过nginx夹一层https也不是什么很复杂的事情。

下面就是windows系统下用nginx夹一层转发,使得其他windows电脑可以通过nginx开放的https接口链接到cloudreve服务器
webdav 网盘,网络大杂烩,windows,Cloudreve,WebDAV,无法访问,https
步骤大致分这几个:

  1. 准备https协议所需要的证书
  2. 配置Nginx

以下操作均在服务器上操作完成。

在一切开始进行之前,请确保您的 Cloudreve服务 可以在网页浏览器上正常地通过http协议访问。

制作自己的证书

证书这里自然是要用自己建立的证书了,如果是买的证书,那么需要注意一个很重要的点:

Windows网盘上添加网络位置必须要与证书上声明的地址一致才可以。
这也是大部分无法WebDAV无法访问的另一个重要原因

如果你没有购买证书/不知道啥是证书,那么太棒了,请跟着以下步骤做,WebDAV肯定可以跑起来……

选一个好的位置,比如 D:\Certificates\文件夹,在菜单栏中执行“cmd”命令。
webdav 网盘,网络大杂烩,windows,Cloudreve,WebDAV,无法访问,https
输入以下命令:

openssl req -x509 -newkey rsa:4096 -nodes -keyout my_root.pem -days 9999 -out my_root.crt

如果你提示 openssl 是一个未知命令…… 那么就去下载一个openssl并安装吧!

之后你将要输入一大堆东西,你可以输入一些奇怪的内容,但是这些内容将会存下来给其他任何访问你网盘的人看到,所以也别太奇怪了,下图中会有一些翻译来说明它们本应该是要填什么内容,但是既然是自建的证书嘛,这都无所谓啦。

webdav 网盘,网络大杂烩,windows,Cloudreve,WebDAV,无法访问,https
这个命令将会创建一个2个文件,my_root.pemmy_root.crt。很好,别弄丢它们,一会儿要用到。

接下来,你需要输入另外两条命令,第一条是:

openssl genrsa -out server.pem 4096

这个会生成一个叫做server.pem的文件。然后在输入第二条命令:

openssl req -new -key server.pem -out server.csr

你又会被问到一堆问题,这次稍微会有一些不一样,它最后会问你输入一个“挑战性的密码”,这里,你可以完全不要挑战,两次回车,留空即可。

webdav 网盘,网络大杂烩,windows,Cloudreve,WebDAV,无法访问,https
好了,你还剩2个步骤就可以结束这一切痛苦了。加油!

然后,用打开记事本,填入以下内容:

authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
subjectAltName=IP:127.0.0.1,IP:123.222.211.198,DNS:localhost,DNS:www.goodweb.xyz

上述内容中,最后的 subjectAltName 一行需要根据具体部署的情况来进行更改。比如IP具体是多少,域名具体是什么,比如域名是 www.a123b.net,那就要改成

subjectAltName=IP:127.0.0.1,IP:123.222.211.198,DNS:localhost,DNS:www.a123b.net

而且这一行中可以不填写IP,也可以不填写DNS(域名),也可以只填写一个域名/IP。

假设你的域名是 www.abc.net , 服务器地址是 147.23.22.218
那么使用下面一行生成的证书只可以通过 https://www.abc.net/ 来访问(https://147.23.22.218/ 访问时则会提示证书问题,因为访问的方式和证书里声明的方式不一样)

subjectAltName=DNS:localhost

同样的,下面一行生成的证书则只认证通过https://147.23.22.218/的访问

subjectAltName=IP:147.23.22.218

可自由组合多个需要从其他电脑访问的方式,IP/DNS按照上述格式填写即可,用英文逗号分隔

记事本保存上述内容至当前的操作目录,起名字可以很随意,一般来说扩展名为 .ext。本例中就存了D:\Certificates\server.ext,这个文件名字一会儿用得到。

生成证书的最后一步,输入命令:

openssl x509 -req -CA my_root.crt -CAkey my_root.pem -in server.csr -days 9999 -extfile server.ext -out server.crt

其中 -extfile 参数后接的就是上一步记事本保存的ext文件。

最终,生成了我们在 Nginx 里需要用到的文件:server.crt

让我们在进行 Nginx 设置之前,回顾一下我们在这个证书步骤中干了什么,最终得到了什么:

  1. 通过一个命令,一次性生成了两个文件 my_root.pemmy_root.crt
  2. 通过另一个命令,生成了 server.pem
  3. 通过另一个命令,生成了 server.csr(用到了步骤2的文件)
  4. 打开记事本,输入了一堆内容,保存成为了 server.ext
  5. 通过一个命令,生成了 server.crt (用到了1、3、4里的文件)

最终,我们在 Nginx 中需要的是 server.pem (步骤2)和 server.crt(步骤5)。

配置Nginx

首先,需要安装一个Nginx。下面给出CSDN的 INSCODE AI 对于“如何在Windows系统下安装一个Nginx”这个问题的回答,感觉还蛮靠谱的:

以下是在 Windows 系统下安装 Nginx 的步骤:

  1. 下载 Nginx for Windows 程序包,可以从官方网站(http://nginx.org/en/download.html)或者其他安全可靠的网站下载。
  2. 解压缩下载的程序包到合适的目录中,比如 C:\nginx。
  3. 打开 C:\nginx 目录,运行 nginx.exe。Nginx 将会在后台运行。
  4. 打开浏览器,输入 http://localhost,可以看到 Nginx 的欢迎页面。
  5. 如果想要修改 Nginx 的配置文件,可以在 C:\nginx\conf 目录下修改 nginx.conf 文件。在修改后,需要重新启动 Nginx 服务,可以在 C:\nginx 目录下运行 nginx.exe -s reload 命令重启 Nginx。

如果在启动 Nginx 时遇到问题,可以在 C:\nginx 目录下运行 nginx.exe -t 命令,检查 Nginx 配置文件是否存在语法错误。
需要注意的是,在 Windows 系统下使用 Nginx 后,如果想要将其作为服务启动,需要安装 nssm 工具,具体操作可以参考:https://nginx.org/en/docs/windows.html#running-as-a-service-under-windows

打开 Nginx 的配置文件,一般都在nginx的可执行文件目录下的 conf文件夹下可以找到nginx.conf,也就是上述AI回答里的 第5条 中说明的配置文件。

建议将这个默认的配置文件在其他地方做个备份,免得出问题… 因为接下来你将会把里面的东西都删了,改换成我提供的内容:

worker_processes  1;

error_log  logs/error.log;
error_log  logs/error.log  notice;
error_log  logs/error.log  info;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;
    keepalive_timeout  65;

    # HTTPS server
    server {
       listen       5213 ssl;
       server_name  ns-server;

       ssl_certificate      server.crt;
       ssl_certificate_key  server.pem;

       ssl_session_cache    shared:SSL:1m;
       ssl_session_timeout  5m;

       ssl_ciphers  HIGH:!aNULL:!MD5;
       ssl_prefer_server_ciphers  on;

       location / {
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header Host $http_host;
            proxy_redirect off;
            proxy_pass http://127.0.0.1:5212;
            client_max_body_size 20000m;
       }
    }
}

其中,仔细观察 HTTPS server 注释行后面的内容。要依照具体情况改一些配置:

  1. listen 后的数字为端口号,也就是接受HTTPS请求的端口。ssl 这个单词别给删了。
    由于 Cloudreve 的默认端口是5212,如果你没有改过这个端口,那么我建议就直接使用5213端口做HTTPS的端口好了。也可以改成你自己喜欢的端口号,别与其他软件存在可能的冲突就好了。
  2. ssl_certificatessl_certificate_key 后的文件名就是刚刚证书生成的时候最终的结果里的两个文件,一个是 key(私钥),一个是 certificate(证书)。最后还要把刚刚生成的两个文件拷贝到这个ngnix.conf配置文件同一文件夹里。(我会在后面再提示你一遍的)
  3. location / 后的大括号内的内容:
    proxy_pass 表明是转发请求,后面是你本地部署的 Cloudreve 的访问地址,由于是本地,所以可以是 http://127.0.0.1:5212,也可以是 http://localhost:5212
    如果你更改过 Cloudreve 的运行端口,那么此处请对应更改端口号。
    此处为http,不是https,请注意检查。

改完 nginx.conf 文件之后,保存它,然后 server.pemserver.crt 两个文件拷贝到这个conf文件同文件夹下 (否则启动时会提示找不到证书文件)。

最后,在nginx可执行文件的目录下运行

nginx.exe -s reload

来重新加载配置文件。

让我们打开浏览器,访问:https://localhost:5213 (此时提示不受信任证书是正常现象,点接受风险并继续访问即可)

如果可以正常访问到 Cloudreve,那么恭喜你,已经要成功了。

接下来我们的工作就要转到想要用WebDAV连接到 Cloudreve 服务器的另外的电脑上面了。
在把屁股从椅子上挪开之前,还有一件事情,请 my_root.crt文件通过任何你喜欢的方式传到其他需要访问 Cloudreve 的电脑上,因为在这些电脑上还需要这个文件。

信任证书,并成功使用 WebDAV 连接到 Cloudreve !

下面的操作都将要在想要通过 WebDAV 连接至 Cloudreve 的电脑上进行(Windows系统)。

首先,相信你在这个电脑上已经有刚刚在证书创建过程中获得的 my_root.crt 文件了。(请注意,不是server.crt

双击这个文件,这时会弹出一个证书导入向导,里面可以看到你刚刚在证书创建过程中输入的一些文字,还说这个证书不受信任blablabla… 完全不用担心,这个证书是我们刚刚自己创建的,电脑还不咋认识它,现在我们要做的就是要让电脑相信这个我们自己创建的玩意儿。

点击“安装证书”,并将这个证书安装到“受信任的根证书”位置:
webdav 网盘,网络大杂烩,windows,Cloudreve,WebDAV,无法访问,https
安装完成即可。

此时再打开浏览器去通过https访问 Cloudreve 服务器,浏览器应该不会再提示“不受信任的证书”的错误了。

最后就是按照 Cloudreve 的官方教程,打开“此电脑“,映射网络驱动器,添加位置为 https://www.abcde.net:5213/dav 即可!

恭喜你,你已经成功了。

webdav 网盘,网络大杂烩,windows,Cloudreve,WebDAV,无法访问,https文章来源地址https://www.toymoban.com/news/detail-561721.html

到了这里,关于【Cloudreve】正确地用Webdav服务把网盘挂在Windows上的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • CloudDriver一款将各种网盘云盘挂在到电脑本地变成本地磁盘的工具 教程

    平时我们的电脑可能由于大量的文件资料之类的导致存储空间可能不够,所以我们可以选择将网盘我们的本地磁盘用来存放东西。 CloudDrive  是一款可以将  115、阿里云盘、天翼云盘、沃家云盘、WebDAV  挂载到电脑中,成为本地硬盘的工具,支持 Windows 与 Docker 部署,使用简单

    2024年02月14日
    浏览(42)
  • 【搭建服务器】Win10 IIS搭建webdav服务以及公网访问教程 - 挂载webdav

    自己用Windows Server搭建了家用NAS主机,WebDAV的文件共享方式当然也是必不可少的。 本文使用的是WIN10 专业版。 1.1 打开控制面板,查看方式改为“类别”,进入“程序”,“启用或关闭Windows功能” 1.2 在Internet Information Services(IIS)中勾选“IIS管理控制台”、“Windows身份验证

    2024年02月06日
    浏览(94)
  • 【教程】使用docker搭建WebDAV服务

    由于zotero和joplin等软件同步需要用到WebDAV,而国内WebDAV用的最多的坚果云存在一些限制,用的还是不太放心,于是便自建WebDAV服务.WebDAV是一项比较成熟的技术,其实现方式很多.本次使用的是docker-webdav的开源项目,其使用docker进行部署,操作十分方便. 腾讯云服务器 CentOS 8.2 docker安装

    2024年02月03日
    浏览(35)
  • CentOS 7 搭建 WebDav 服务器

    大部分参考了这篇文章:https://blog.acesheep.com/index.php/archives/834/ 本文对其中的关键点进行记录,并调整了部分配置,解决mac os finder连接上之后,无法新建和修改文件的问题 1、安装编译环境 增加了ghostscript,后面zlib会依赖到 2、创建非特权账户 这里和原文的区别是第一条命令

    2024年04月16日
    浏览(33)
  • 使用服务器搭建alist和webdav

    docker镜像官网:https://hub.docker.com/r/xhofe/alist 环境:centos7、docker 1.拉取alist镜像 在根目录下执行以下命令: 2.运行alist 3.进入alist容器,查看用户和密码 注意: 这些命令都是在根目录下执行,想指定目录也行 效果如下: 其他方式: docker-compose: https://alist.nn.ci/zh/guide/install/

    2024年02月19日
    浏览(40)
  • WebDav协议相关软件@简单配置局域网内的http和WebDav服务器和传输系统

    windows自带 IIS webdav windows自带的服务,启用相关功能后还要进行一系列的配置 而且在WebDav客户端上传到站点的文件大小存在限制问题 总体体验并不好,因此推荐第三方专业软件,灵活而且易于配置 第三方软件 CuteHttpFileServer | iscute.cn👺 提供了windos端的命令行程序和图形界面程序

    2024年01月21日
    浏览(55)
  • 搭建WebDAV服务手机ES文件浏览器远程访问

    有时候我们想通过移动设备访问群晖NAS 中的文件,以满足特殊需求,我们在群辉中开启WebDav服务,结合cpolar内网工具生成的公网地址,通过移动客户端ES文件浏览器即可实现移动设备远程访问NAS文件,下面介绍步骤 在群晖套件中心,我们搜索 webdav ,找到且点击安装套件(如已安装可以

    2024年02月12日
    浏览(43)
  • 一种采用KeePass+自建webdav服务的密码管理方案

    出于密码管理需求,查找了几种密码方案,发现KeePass+坚果云+keepass2android是大家反馈比较好的一种,支持电脑手机同步管理密码,深入使用后发现体验还不错,恰巧本身有公网ip,遂决定自建webdav服务来进行密码管理,进一步把安全掌握在自己手里。 需要有一台已经安装了

    2024年02月11日
    浏览(49)
  • 【搭建WebDAV服务手机ES文件浏览器远程访问】

    有时候我们想通过移动设备访问群晖NAS 中的文件,以满足特殊需求,我们在群辉中开启WebDav服务,结合cpolar内网工具生成的公网地址,通过移动客户端ES文件浏览器即可实现移动设备远程访问NAS文件,下面介绍步骤 在群晖套件中心,我们搜索 webdav ,找到且点击安装套件(如已安装可以

    2024年02月12日
    浏览(41)
  • 阿里云服务器docker配置实现NAS/webdav访问

    最终踩雷是 未设置端口 (第四点),公网IP访问始终没有响应,在此感谢以下四位作者 1、NAS访问阿里云 使用阿里云盘打造免费 WebDAV 服务 nas访问阿里云 plex挂载阿里云访问_NAS存储_什么值得买 2、阿里云本地访问 zotero+阿里云盘+aliyun driver 实现文献管理云存储_北边颇有心气儿

    2024年02月12日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包