InterspaceБаза знанияТехнически статииУроциНастройка на WebDAV сървър с Nginx на Linux Debian
УРОЦИ
15-Яну-202421-Май-2024
Настройка на WebDAV сървър с Nginx на Linux Debian
Това съдържание е налично само на английски.
This guide will help you quickly set up a WebDAV server using Nginx on Debian. It is intended for users with fundamental Linux and Nginx knowledge.

Your server should already have Linux Debian (version 11 or 12) and Nginx installed from the official Debian repositories. Alternatively, consider our cloud servers offering, known as Elastic Cloud VPS, which can be deployed with a pre-installed operating system and apps in about a minute.

1.Prerequisites

Before you begin, ensure that you have the WebDAV module and nginx-extras package installed.

1.1.Check for the nginx WebDAV module

If you installed Nginx on Debian 11 or 12 using the standard package repositories (e.g., using apt install nginx), the WebDAV module, known as ngx_http_dav_module, is normally included in the installation. To check, run:
nginx -V 2>&1 | grep -o with-http_dav_module

If the module is not present, you may need to install Nginx from source or use a package that includes this module.

1.2.Install the nginx-extras package

This package contains additional modules not included in the standard Nginx installation, which are necessary for extended WebDAV functionalities. Execute the following command to install it:
sudo apt install nginx-extras

If sudo is not already installed, run apt install sudo to install it.

2.WebDAV Directories

Create directories:
sudo mkdir /var/www/webdav
sudo mkdir -p /var/tmp/nginx/webdav

Modify permissions:
sudo chown www-data:www-data /var/www/webdav
sudo chown -R www-data:www-data /var/tmp/nginx
sudo chmod -R 755 /var/tmp/nginx
sudo chmod -R 755 /var/www/webdav

3.WebDAV Access Credentials

To configure user access and set up Basic Authentication, use the following one-liner command. It prompts for a username and password, then securely adds them to the password file webdav.passwd with the password encrypted.
read -p "Enter username: " username && read -sp "Enter password: " password && echo "$username:$(openssl passwd -apr1 $password)" | sudo tee -a /etc/nginx/webdav.passwd > /dev/null && echo -e "\nCredentials added successfully."

4.Configuring Nginx for WebDAV

In your site-specific Nginx configuration file, typically located in /etc/nginx/sites-available/, within the server block, add:
location /webdav {
alias /var/www/webdav; # This maps the URL .../webdav to /var/www/webdav
client_body_temp_path /var/tmp/nginx/webdav;
dav_methods PUT DELETE MKCOL COPY MOVE;
dav_ext_methods PROPFIND OPTIONS;
create_full_put_path on;

# Basic authentication setup
auth_basic "Restricted Access";
auth_basic_user_file /etc/nginx/webdav.passwd;

# Deny all access unless authenticated
satisfy all;
allow all; # This allows all authenticated users
deny all; # This denies all other users
}

5.Additional Access Protection (Optional)

5.1.IP Restrictions

For IP-based access control, in the location /webdav section of your site-specific Nginx configuration:
allow 192.168.1.1; # Replace with your IP
deny all;

5.2.Server Tokens Configuration

In your Nginx configuration file disable server tokens:
server_tokens off;

5.3.Enhancing Security with Headers

Within the server block of your site-specific Nginx configuration, add these security headers:
add_header X-Content-Type-Options "nosniff";
add_header X-XSS-Protection "1; mode=block";
add_header X-Frame-Options "SAMEORIGIN";

6.Applying Changes

Restart Nginx to implement the new settings:
sudo systemctl restart nginx

7.Testing the Setup

To ensure that your WebDAV setup is working correctly, it is recommended to test it using WinSCP, a free SFTP, FTP, WebDAV, and SCP client for Windows.

Please keep in mind that the built-in Windows WebClient used to map a network drive to a WebDAV location will not work properly, because it requires the LOCK and UNLOCK methods, which are not supported by the native Nginx WebDAV module.
Steps to test with WinSCP
  • Download WinSCP from the official website and install it.
  • Open WinSCP. Click the New Tab button. Select "WebDAV" as the file protocol. Enter your server's URL (e.g., http://your-domain.tld/webdav) and your WebDAV username and password.
  • Click "Login" to connect.
  • Verify connectivity and WebDAV functionality by navigating through the directories, creating, modifying, and deleting files and folders.

8.Разгръщане със сървъри в облака на Interspace

За тези, които търсят бърз старт, облачната платформа на Interspace предлага ефективно решение. Можете да разгърнете виртуален сървър с предварително инсталирана операционна система и приложения за около минута. Interspace отива отвъд бързото разгръщане, като ви позволява да предварително конфигурирате вашите системи с персонализирани настройки преди инсталацията да започне. Това включва задаване на детайли за достъп, домейни, портове за връзки и други специфични за приложенията опции.

В допълнение към бързото разгръщане, Interspace се отличава със своето съотношение цена-производителност. Каним ви да разгледате пакетите и цените на страницата за Elastic Cloud VPS.
Съдържанието на този документ е лицензирано от Interspace под MIT License

Свързано съдържание
Документация
Облак
Комуникации
Хостинг
My Interspace
Технически статии
Уроци
Научете
Новини
Последни новини
Последни събития
Свързани продукти
Премиум Интернет Достъп
Интернет достъп от най-висок клас за професионални нужди. Супериорна оптична връзка от точка до точка, симетрична скорост на сваляне/качване, неограничен трафик, SLA 99.9% и статичен IP. Директни връзки с водещите световни tier 1 доставчици. Нашата мрежова архитектура е проектирана с внимание към всеки детайл, за да осигури връзки с най-високо качество към всяка точка по света, с ненадминати скорости на трансфер и многостепенна резервираност.
Наети Сървъри
Выделени сървъри с висококачествен хардуер от утвърдени производители на сървъри. Те са хоствани в нашите собствени дейта центрове, което ни позволява пълен контрол при осигуряване на работоспособността 24/7. Избор от основни дейта центрове и дейта център за възстановяване при бедствия, разположен на безопасно разстояние. Опции за контрол на захранването (рестарт, изключване/включване) и безплатен KVM-over-IP достъпен 24/7 с едно кликване, включително поддръжка за отдалечено зареждане/инсталиране на ваши собствени ISO образи.
Еластичен Облачен VPS
Elastic Cloud VPS е виртуална машина, захранвана от съвременни облачни и мрежови технологии, предлагаща значителни предимства пред традиционния VPS хостинг на непобедимо съотношение цена-производителност. Инсталирайте ОС и приложения само за 1 мин. Добавяйте или премахвайте функции динамично. Автоматични архиви, моментни копия и копие за възстановяване при бедствия с едно кликване, съхранявани в отдалечен дейта център на безопасно разстояние. Ново поколение AMD EPYC процесори, ултра бързи NVMe дискове, выделени връзки и безплатна частна мрежа.


Нашият уебсайт използва бисквитки. Като продължавате да използвате нашия уебсайт, вие се съгласявате с използването на бисквитки и приемате нашите Общи условия. Разбирам