更加安全的win端webdav服务器--hacdias/webdav--继我的chfs服务器后
杏子甜123
2022年08月18日 23:03

前提提要:如果需要网页访问,我暂时没有找到解决方案,按照这个程序设计的样子来看你,很难做到。  

  一、在听取了热心网友的建议后,我了解到chfs的不安全性以及新版本的限制,故现在对原不愿意学习的程序重新拾起,进行简单研究深入,给大家一个更加安全的服务端。(永远不变的信念)

  首先我们到github上将程序下载--github.com/hacdias/webdav/releases

默认我们选择最新版本,在windows下我们选择windows系列,可以根据自己的架构来选择,32位选择386,64位版本选择amd64,我现在写文章时最新版本为4.2.0。

下载选择界面

二、然后我们将它解压至你自己喜欢或程序存的文件夹内,解压后应该会有三个文件,我是一般使用官方提供的文档然后改出来自己配置github.com/hacdias/webdav,所以建议

1、将官方文档复制下来并且粘贴到一个文本文档内,名字可以自己定,请使用英文,并且后缀名改为yml,使用打开方式为记事本打开即可

# Server related settings address: 0.0.0.0 port: 0 auth: true tls: false cert: cert.pem key: key.pem prefix: / debug: false # Default user settings (will be merged) scope: . modify: true rules: [] # CORS configuration cors:   enabled: true   credentials: true   allowed_headers:     - Depth   allowed_hosts:     - http://localhost:8080   allowed_methods:     - GET   exposed_headers:     - Content-Length     - Content-Range users:   - username: admin     password: admin     scope: /a/different/path   - username: encrypted     password: "{bcrypt}$2y$10$zEP6oofmXFeHaeMfBNLnP.DO8m.H.Mwhd24/TOX2MWLxAExXi4qgi"   - username: "{env}ENV_USERNAME&#​34;     password: "{env}ENV_PASSWORD&#​34;   - username: basic     password: basic     modify:   false     rules:       - regex: false         allow: false         path: /some/file       - path: /public/access/         modify: true

2、一些设置

2-1port,这个是我们访问的端口,你可以自定。

2-2prefix,这个是访问时候加的地址,用于在最终地址后面的地址。

2-3tls即关于ssl的设置我会在后面写。(默认关闭)

2-4一般来说可以将# Default user settings (will be merged)删除,我个人认为这个设置与下方的用户设置重复,如有问题可以联系我。

2-5users大类的设置,可以看到,这里已经有了固定的模板

- username: admin(用户名)

    password: admin(密码)

    scope: /a/different/path(该用户的目录)

    modify:   false(是否允许用户修改文件夹,明白说也就是能不能上传下载)

其他的设置在我的测试中对我的日常使用基本没有影响,如果你觉得没关系,也可以删除

那么我们就可以得到这样一份配置文件

# Server related settings address: 0.0.0.0 port: 12301 auth: true prefix: / debug: false # CORS configuration cors:   enabled: true   credentials: true   allowed_headers:     - Depth   allowed_hosts:     - http://localhost:8080   allowed_methods:     - GET   exposed_headers:     - Content-Length     - Content-Range users:   - username: admin     password: admin     scope: Y:/test     modify:   true

三、启动

1、我们编写一个启动脚本试一下能不能启动

在含有wendav.exe程序目录下创建一个文本文档,将下列命令粘贴进去

webdav.exe -c config.yml

webdav.exe为通用

-c命令为加载配置文件

config.yml为配置文件的名称,前面你定的名字,后缀没有变

2、然后启动脚本,你应该就可以看到如下图

成功了

3、挂载,这个是无法使用网页访问的,所以我们使用winscp,最终我们在winscp中配置时的样图

基本

在2-2中的prefix则对应的是高级这个地方

高级

那么我们就完成了webdav的简单搭建

附:

一、设置程序开机自动启动,这个根本不需要网上所说的什么注册为一个服务,一般人很难搞定,所以我们使用任务计划的方式(这里使用我以前那篇文章的一些内容,可能有些许出入,抱歉)

1、尽量将程序与启动脚本放到同一文件夹内(接上文的配置文档),这里方便我们创建计划任务。这里我们选择一个保险一点的方法,主动将启动命令指定到软件目录下

cd Y:\test(你的程序目录)

webdav.exe -c config.yml

其实没有多大区别对吧

2.打开任务计划任务的列表,注意选择到任务计划任务库。

3.首先新建一个任务,路径选择之前创建好的批处理文件。名称随意定。在设置那里选择你的启动脚本。

应为我这里用的旧图,所以没有改,抱歉。

然后在常规页面选择只在用户登录时运行(要不然可能导致网络断开无法启动)

tips:1、这里需要提前设置一个用户开机自动登录(设置密码情况下),

       2、当然如果你的电脑没有密码的话,本身就是自动登录。

3.然后配置一下高级启动规则:一定要在有网路连接是运行(选择自己电脑打开时的网络连接名称)(我这里使用了任何连接)

然后就可以重启试试了!!

二、添加ssl证书(后面有时间再写,可以看看我以前的文章)