原文链接:【安装教程】信创终端跨平台文件共享利器–WebDAV|统信|麒麟|方德
Hello,大家好啊!今天给大家带来一篇关于如何在信创终端操作系统上搭建 WebDAV 服务的文章。WebDAV 是一种基于 HTTP 协议的文件共享服务,支持文件的上传、下载和编辑,非常适合团队协作和个人使用。通过简单的配置,我们就可以在信创系统上快速搭建 WebDAV 服务,实现文件的高效共享!欢迎大家分享点赞,点个在看和关注吧!
什么是 WebDAV?
WebDAV(Web Distributed Authoring and Versioning)是一种扩展 HTTP 协议的技术,允许用户通过网络访问服务器上的文件。它可以被用作文件共享、版本控制或远程编辑的工具,与许多客户端(如 Windows 资源管理器、macOS Finder)兼容,使用起来非常方便。
为什么要使用 WebDAV?
跨平台文件共享:支持多种操作系统和客户端。
灵活的权限管理:可以控制用户访问权限。
简单的 HTTP 协议支持:无需额外安装复杂的文件传输协议。
1.查看系统信息
pdsyw@pdsyw-PC:~/Desktop$ cat /etc/os-version pdsyw@pdsyw-PC:~/Desktop$ uname -a
2.更新软件源
pdsyw@pdsyw-PC:~/Desktop$ sudo apt update
目的:更新本地的包索引,以确保能够安装最新版本的软件。
作用:从配置的软件源中拉取最新的软件列表。
3.安装Apache
pdsyw@pdsyw-PC:~/Desktop$ sudo apt install apache2 -y
目的:安装Apache Web服务器。
作用:apache2 是Linux上的常见Web服务器,用于提供HTTP服务。
4.启用WebDAV模块
pdsyw@pdsyw-PC:~/Desktop$ sudo a2enmod davpdsyw@pdsyw-PC:~/Desktop$ sudo a2enmod dav_fs
目的:启用Apache的WebDAV(Web分布式创作和版本控制)功能模块。
作用:
dav 模块:启用WebDAV功能。
dav_fs 模块:允许通过WebDAV访问文件系统。
5.重启Apache服务
pdsyw@pdsyw-PC:~/Desktop$ sudo systemctl restart apache2pdsyw@pdsyw-PC:~/Desktop$ sudo systemctl status apache2
目的:使启用的模块生效并检查Apache服务状态。
作用:
restart:重启Apache服务。
status:查看Apache服务是否正常运行。
6.创建WebDAV目录并设置权限
pdsyw@pdsyw-PC:~/Desktop$ sudo mkdir -p /var/www/webdavpdsyw@pdsyw-PC:~/Desktop$ sudo chown -R www-data:www-data /var/www/webdavpdsyw@pdsyw-PC:~/Desktop$ sudo chmod -R 755 /var/www/webdav
目的:为WebDAV创建存储文件的目录并设置适当权限。
作用:
mkdir -p:创建目录,-p确保上级目录不存在时自动创建。
chown:将目录的所有者改为Apache运行用户www-data。
chmod:设置目录权限为755,确保Apache有读取和写入权限。
7.编辑Apache配置文件
pdsyw@pdsyw-PC:~/Desktop$ sudo vim /etc/apache2/sites-available/000-default.confpdsyw@pdsyw-PC:~/Desktop$ cat /etc/apache2/sites-available/000-default.conf<VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www/html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined # WebDAV 配置 Alias /webdav /var/www/webdav <Directory /var/www/webdav> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory> <Location /webdav> DAV On AuthType Basic AuthName "WebDAV" AuthUserFile /etc/apache2/webdav.passwd Require valid-user </Location></VirtualHost>
目的:为WebDAV功能添加配置。
作用:
Alias:定义WebDAV的虚拟路径。
:设置WebDAV目录的访问权限。
:启用WebDAV,设置身份验证。
VirtualHost 配置<VirtualHost *:80>
作用:定义一个虚拟主机,监听所有IPv4和IPv6地址的80端口(HTTP默认端口)。
用途:配置HTTP协议下的服务。
ServerAdminServerAdmin webmaster@localhost
作用:设置管理员的电子邮箱地址。当用户访问错误页面时,此邮箱地址可能会显示。
默认值:webmaster@localhost。
DocumentRootDocumentRoot /var/www/html
作用:指定网站的根目录。所有未配置别名的请求都会被定向到此目录。
值:/var/www/html 是Apache默认的网站根目录。
ErrorLogErrorLog ${APACHE_LOG_DIR}/error.log
作用:指定Apache错误日志的文件路径。
值:${APACHE_LOG_DIR} 是Apache的环境变量,通常指向/var/log/apache2/。
CustomLogCustomLog ${APACHE_LOG_DIR}/access.log combined
作用:配置Apache访问日志的路径和格式。
值:
${APACHE_LOG_DIR}/access.log 是日志文件路径。
combined 是日志格式,包含客户端IP地址、请求方法、访问URL、状态码等。
AliasAlias /webdav /var/www/webdav
作用:为WebDAV功能创建别名,将http://服务器地址/webdav映射到本地文件系统的/var/www/webdav目录。
用途:实现虚拟路径和物理路径的分离。
Directory 配置<Directory /var/www/webdav> Options Indexes FollowSymLinks AllowOverride None Require all granted</Directory>
作用:定义/var/www/webdav目录的访问权限。
配置说明:
Options Indexes FollowSymLinks:
Indexes:允许显示目录列表(如果没有默认文件,如index.html)。
FollowSymLinks:允许访问符号链接指向的文件。
AllowOverride None:禁用.htaccess文件覆盖配置。
Require all granted:允许所有用户访问目录内容。
Location 配置<Location /webdav> DAV On AuthType Basic AuthName "WebDAV" AuthUserFile /etc/apache2/webdav.passwd Require valid-user</Location>
作用:为/webdav路径启用WebDAV功能和访问控制。
配置说明:
DAV On:开启WebDAV功能。
AuthType Basic:启用基本认证方式(用户需要输入用户名和密码)。
AuthName “WebDAV”:设置身份验证提示信息,用户会看到此提示框标题。
AuthUserFile /etc/apache2/webdav.passwd:指定存储用户密码的文件路径。
Require valid-user:仅允许已通过身份验证的用户访问。
结束VirtualHost</VirtualHost>
作用:标记虚拟主机配置结束。
8.创建用户认证文件
pdsyw@pdsyw-PC:~/Desktop$ sudo htpasswd -c /etc/apache2/webdav.passwd pdsywpdsyw@pdsyw-PC:~/Desktop$ sudo htpasswd /etc/apache2/webdav.passwd pdsyw1024
目的:为WebDAV服务创建认证用户。
作用:
-c:首次创建文件并添加用户。
第二条命令为现有文件添加额外用户。
9.启用配置
pdsyw@pdsyw-PC:~/Desktop$ sudo a2ensite 000-default.confpdsyw@pdsyw-PC:~/Desktop$ sudo systemctl reload apache2
目的:启用配置文件并重新加载Apache。
作用:
a2ensite:激活配置文件。
reload:重载配置而无需停止服务。
10.验证WebDAV服务
http://10.211.55.128/webdav
目的:测试是否可以通过浏览器访问WebDAV目录。
作用:验证配置是否正确。
11.安装SSL模块并生成证书
pdsyw@pdsyw-PC:~/Desktop$ sudo a2enmod sslpdsyw@pdsyw-PC:~/Desktop$ sudo openssl req -newkey rsa:2048 -nodes -keyout /etc/ssl/private/webdav.key -x509 -days 365 -out /etc/ssl/certs/webdav.crtCountry Name (2 letter code) [AU]:CNState or Province Name (full name) [Some-State]:SHANGHAILocality Name (eg, city) []:shanghaiOrganization Name (eg, company) [Internet Widgits Pty Ltd]:PDSYWOrganizational Unit Name (eg, section) []:pdsywCommon Name (e.g. server FQDN or YOUR name) []:PDSYWEmail Address []:pdsyw@pdsyw.cn
目的:启用HTTPS支持并生成自签名证书。
作用:
启用ssl模块。
使用openssl生成密钥和证书。
12.配置SSL支持
pdsyw@pdsyw-PC:~/Desktop$ sudo vim /etc/apache2/sites-available/000-default.confpdsyw@pdsyw-PC:~/Desktop$ cat /etc/apache2/sites-available/000-default.conf<VirtualHost *:443> ServerAdmin webmaster@localhost ServerName pdsyw ServerAlias www.pdsyw.cn # 启用 SSL 并指定证书文件和密钥文件 SSLEngine on SSLCertificateFile /etc/ssl/certs/webdav.crt SSLCertificateKeyFile /etc/ssl/private/webdav.key # 优化 SSL/TLS 安全性 SSLProtocol all -SSLv2 -SSLv3 SSLCipherSuite HIGH:!aNULL:!MD5 SSLHonorCipherOrder on # 日志配置 ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined # WebDAV 配置 Alias /webdav /var/www/webdav <Directory /var/www/webdav> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory> <Location /webdav> DAV On AuthType Basic AuthName "Secure WebDAV" AuthUserFile /etc/apache2/webdav.passwd Require valid-user </Location></VirtualHost>
目的:启用443端口的SSL支持。
作用:保护WebDAV传输的安全性。
VirtualHost 配置<VirtualHost *:443>
作用:定义一个虚拟主机,监听所有IPv4和IPv6地址的443端口(HTTPS默认端口)。
用途:配置通过HTTPS协议访问的服务。
ServerAdminServerAdmin webmaster@localhost
作用:设置网站管理员的电子邮箱地址。当用户访问错误页面时,此邮箱地址可能会显示。
默认值:webmaster@localhost。
ServerName 和 ServerAliasServerName pdsywServerAlias www.pdsyw.cn
作用:
ServerName:指定虚拟主机的主域名,用于区分不同虚拟主机。
ServerAlias:为虚拟主机配置额外的域名或子域名。
用途:通过pdsyw和www.pdsyw.cn访问此虚拟主机。
启用SSLSSLEngine onSSLCertificateFile /etc/ssl/certs/webdav.crtSSLCertificateKeyFile /etc/ssl/private/webdav.key
作用:
SSLEngine on:启用SSL加密功能。
SSLCertificateFile:指定SSL证书文件的位置。
SSLCertificateKeyFile:指定SSL密钥文件的位置。
用途:启用HTTPS服务,提供数据加密和安全传输。
优化SSL/TLS安全性SSLProtocol all -SSLv2 -SSLv3SSLCipherSuite HIGH:!aNULL:!MD5SSLHonorCipherOrder on
作用:
SSLProtocol all -SSLv2 -SSLv3:启用所有安全的TLS版本,禁用已过时的SSLv2和SSLv3协议。
SSLCipherSuite HIGH:!aNULL:!MD5:启用高安全级别的加密套件,禁用弱加密套件如aNULL(无认证)和MD5。
SSLHonorCipherOrder on:优先使用服务器端指定的加密算法。
用途:增强HTTPS连接的安全性,防止使用不安全的协议和加密算法。
日志配置ErrorLog ${APACHE_LOG_DIR}/error.logCustomLog ${APACHE_LOG_DIR}/access.log combined
作用:
ErrorLog:记录错误信息的日志文件。
CustomLog:记录访问信息的日志文件,使用combined格式。
用途:帮助管理员监控和排查网站运行中的问题。
AliasAlias /webdav /var/www/webdav
作用:将虚拟路径/webdav映射到物理路径/var/www/webdav。
用途:通过https://domain/webdav访问服务器上的WebDAV资源。
Directory 配置<Directory /var/www/webdav> Options Indexes FollowSymLinks AllowOverride None Require all granted</Directory>
作用:
Options Indexes FollowSymLinks:
Indexes:允许显示目录列表(如果没有默认文件)。
FollowSymLinks:允许访问符号链接指向的文件。
AllowOverride None:禁用.htaccess文件覆盖配置。
Require all granted:允许所有用户访问此目录的内容。
用途:设置WebDAV目录的权限和访问规则。
Location 配置<Location /webdav> DAV On AuthType Basic AuthName "Secure WebDAV" AuthUserFile /etc/apache2/webdav.passwd Require valid-user</Location>
作用:
DAV On:启用WebDAV功能。
AuthType Basic:启用基本身份认证(用户名和密码)。
AuthName “Secure WebDAV”:设置身份验证提示信息,用户会看到此标题。
AuthUserFile /etc/apache2/webdav.passwd:指定用户认证文件路径。
Require valid-user:仅允许经过身份验证的用户访问。
用途:保护WebDAV目录,确保只有授权用户可以访问。
结束VirtualHost</VirtualHost>
作用:标记虚拟主机配置结束。
13.验证配置文件语法
pdsyw@pdsyw-PC:~/Desktop$ sudo apachectl configtest
目的:检查Apache配置文件是否正确。
作用:输出Syntax OK表示配置无误。
14.启用必要模块
pdsyw@pdsyw-PC:~/Desktop$ sudo a2enmod headers
目的:启用headers模块,确保HTTP头的正常处理。
作用:增强SSL和WebDAV的兼容性。
重启 Apache 服务pdsyw@pdsyw-PC:~/Desktop$ sudo systemctl restart apache2pdsyw@pdsyw-PC:~/Desktop$ sudo systemctl status apache2
目的:使所有更改生效并检查服务状态。
作用:确保Apache和SSL配置正常运行。
16.通过浏览器访问测试
目的:通过浏览器访问http://10.211.55.128/webdav及https://10.211.55.128/webdav。
作用:验证SSL和WebDAV功能。
17.安装gigolo
pdsyw@pdsyw-PC:~/Desktop$ sudo apt install gigolo
目的:安装Gigolo,方便在图形界面管理WebDAV连接。
18.新建连接
19.输入信息
20.点击继续
21.点击连接
22.点击打开
23.新建文件夹测试
24.在网页端查看
通过本文的介绍,大家学会了如何在信创终端操作系统上搭建 WebDAV 服务。无论是文件共享还是团队协作,WebDAV 都是一个非常实用的工具。希望这篇文章能够帮助大家快速部署 WebDAV 服务!如果觉得有帮助,欢迎分享点赞,记得点个在看和关注哦!感谢大家的支持,我们下次再见!