Ubuntu как подключить webdav

Обновлено: 06.07.2024

Это расширение можно установить на веб-сервер, что откроет удаленный к локальным файлам в браузере (доступ с правами на чтение и запись). Данное руководство поможет установить WebDAV на сервер Ubuntu 12.04 и настроить его под веб-сервер Apache.

Установка Apache

Для использования WebDAV сервер Apache имеет специальный модуль WebDAV.

Сначала нужно установить Apache из стандартных репозиториев Ubuntu.

sudo apt-get update
sudo apt-get install apache2

После установки веб-сервер доступен в браузере; для этого нужно ввести IP.

Включение поддержки WebDAV

Встроенную поддержку WebDAV для Apache обеспечивают несколько модулей. Нужно дать им доступ к их функциям.

Чтобы включить поддержку WebDAV, используйте команды:

sudo a2enmod dav
sudo a2enmod dav_fs

Чтобы обновить настройки, перезапустите веб-сервер:

sudo service apache2 restart

Теперь веб-сервер Apache поддерживает WebDAV, но его настройка ещё не завершена.

Создание файловой системы

Создайте каталог для хранения файлов WebDAV.

Однако в данном руководстве контент WebDAV будет храниться в каталоге -/webdav/.

sudo mkdir /webdav

Передайте пользователю веб-сервера (www-data) права собственности на этот каталог, чтобы веб-сервер мог обслуживать его содержимое.

sudo chown www-data /webdav

Защита паролем

Теперь можно настроить процедуру аутентификации для получения доступа к содержимому каталога, создав файл htpasswd.

Этот файл нужно поместить вне только что созданного каталога, иначе пользователи будут иметь к нему доступ. Также нужно создать нового пользователя и ввести его пароль.

sudo htpasswd -c /etc/apache2/webdav.password username

Теперь файл содержит данные о новом пользователе и его хэшированный пароль. Передайте права собственности на файл группе www-data и заблокируйте доступ к файлу для всех остальных:

sudo chown root:www-data /etc/apache2/webdav.password
sudo chmod 640 /etc/apache2/webdav.password

Настройка Apache

Теперь нужно настроить доступ к каталогу, хранящему контент, и обслуживание этого каталога при помощи модулей WebDAV. Также нужно отметить настроенную аутентификацию.

Отредактируйте основной конфигурационный файл виртуального хоста:

sudo nano /etc/apache2/sites-available/default

После разделов Directory добавьте директиву alias. После этого Apache будет обслуживать запросы, заканчивающиеся на /webdav, из каталога /webdav.

Также нужно добавить данные о настроенной аутентификации.

. . .
. . .
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
Alias /webdav /webdav
<Location /webdav>
Options Indexes
DAV On
AuthType Basic
AuthName "webdav"
AuthUserFile /etc/apache2/webdav.password
Require valid-user
</Location>
. . .
. . .

Сохраните и закройте файл.

sudo service apache2 restart

Тестирование

Теперь можно проверить настройку в браузере, а затем на клиенте WebDAV.

Чтобы убедиться, что аутентификация настроена правильно, перейдите к IP-адресу или домену сервера с помощью веб-браузера.

На экране должна появиться стандартная страница index.html сервера Apache:

It works!
This is the default page for this server.
The web server software is running but no content has been added, yet.

Теперь попробуйте добавить к IP или домену секцию /webdav:

Сервер должен запросить имя пользователя и пароль (созданные вместе с файлом паролей).

Клиент WebDAV

Существует много клиентов WebDAV; в данном руководстве для простоты используется клиент командной строки cadaver.

Установите cadaver из стандартных репозиториев (предпочтительно на другой сервер или машину Linux).

sudo apt-get install cadaver

Создайте файл, который потом можно будет подгрузить в каталог WebDAV.

Откройте браузер и перейдите по ссылке:

Теперь нужно снова пройти авторизацию, после чего вы получите доступ к интерфейсу командной строки.

Из этой строки можно одновременно управлять сервером и клиентом при помощи команд, которые похожи на обычные команды Linux.

Чтобы просмотреть содержимое каталога сервера, наберите:

ls
Listing collection `/webdav/': collection is empty.

Каталог пуст. Добавьте в него тестовый файл.

Снова запросите содержимое каталога:

ls
Listing collection `/webdav/': succeeded.
testfile 0 Sep 20 19:36

Чтобы создать каталог и открыть его, введите:

mkdir hello
cd hello

Теперь в нём можно создать файл:

Добавьте в него любой код:

Чтобы закрыть строку, введите:

Вернитесь в браузер и снова попробуйте открыть ссылку:

Блокирование листинга каталога

Листинг каталога позволяет просмотреть доступные файлы WebDAV, потому его рекомендуется запретить (особенно при работе в сети).

Чтобы доступная в сети часть файлов действовала как веб-сайт, а не как список каталогов, нужно удалить строку Options Indexes из конфигурационного файла:

sudo service apache2 restart

После этого нужно создать обычные веб-страницы для постоянной работы (например, index.html).

sudo nano /webdav/index.html
<h1>Default WebDAV Page</h1>
<p>This is the default page with directory listings turned off</p>

Сохраните и закройте файл.

Эта страница будет появляться при переходе в главный каталог WebDAV; однако клиенты всё еще могут редактировать каталог.

Default WebDAV Page
This is the default page with directory listings turned off

Заключение

Теперь каталог WebDAV защищён при помощи базовой аутентификации. Если каталог содержит контент, который обязательно должен быть надежно защищен, возможно, вам лучше обратиться к средствам SSL. К сожалению, это выходит за рамки данной статьи.

Существуют различные файловые менеджеры и клиенты, позволяющие получить доступ и редактировать содержимое каталога WebDAV так, будто он является дополнительным локальным хранилищем.

Содержание

Подключение сетевого диска по протоколу WebDAV в Windows 10

Чтобы подключиться к каталогу WebDAV в Windows 10, вам понадобится URL-адрес облачного хранилища по протоколу WebDAV, данные для авторизации в вашу учетную запись.

  • Откройте Проводник на своем компьютере и нажмите правой кнопкой мыши по значку «Этот компьютер».


  • В открывшемся контекстном меню нажмите на «Подключить сетевой диск. »
  • В новом диалоговом окне введите букву диска, которую вы хотите сопоставить и в опции «Папка» укажите URL-ссылку сетевого хранилища, которая работает по протоколу WebDav. Поставьте галочку на опции «Использовать другие учетные данные».


Например, для облачного хранилища NextCloud ваша персональная ссылка доступна в левом нижнем углу веб-интерфейса облака, в окне Настройки.


Для облачного хранилища OneDrive ссылка на подключение должна содержать идентификатор.

Ссылка выглядит следующим образом:

Где xxxxxxxx – это идентификатор. Скопировать свой идентификатор можно в URL-адресе OneDrive. Авторизуйте в OneDrive , затем в адресной строке браузера скопируйте данные после знака равно.


  • В следующем окне ведите учетные данные авторизации облачного хранилища.


Будет произведена авторизация и затем подключение к облачному хранилищу.

  • Нажмите правой кнопкой мыши по значку «Быстрый доступ» , в появившемся меню выберите «Закрепить текущую папку на панели быстрого доступа».


Как повысить максимальный размер загружаемых файлов до 4 ГБ

По умолчанию в Windows максимальный размер файлов, которые можно пересылать по WebDAV, около 50 МБ. Чтобы повысить до 4 ГБ, выполните следующие действия:

  • Редактор реестра. Откройте меню Пуск и с помощью поиска в нем откройте приложение regedit от имени Администратора.


  • В редакторе реестра Regedit перейдите в каталог
  • Найдите значение FileSizeLimitInBytes. Нажмите правой кнопкой мыши и выберите «Изменить», а затем измените значение на ffffffff.

Что делать, если не удается подключиться к каталогу WebDAV

Если вы не можете подключиться к каталогу WebDAV, обновите базовый уровень проверки подлинности в реестре Windows.

  • Редактор реестра. Откройте меню Пуск и с помощью поиска в нем откройте приложение regedit от имени Администратора.
  • В редакторе реестра Regedit перейдите в каталог
  • Найдите значение BasicAuthLevel. Нажмите правой кнопкой мыши и выберите «Изменить», а затем измените значение на 2.


Подключение сетевого диска по протоколу WebDAV в Linux

Рассмотрим два способа подключения WebDav в Linux.

Примечание. OneDrive не поддерживает подключение по протоколу davs в Linux.

Первый способ. Подключение из файлового менеджера

  • Откройте файловый менеджер. В зависимости от файлового менеджера расположение опции для подключения может отличаться. Затем, например в файловом менеджере Nemo нажмите на Файл > Подключение к серверу.


Второй способ. Монтирование сетевого диска по протоколу WebDav

Во время установки вас спросят, хотите ли вы, чтобы непривилегированным пользователям было разрешено монтировать ресурсы WebDAV. Выберите Да.

  • Создаем папку в которую будем монтировать сетевой диск и папку для хранения конфигурации:

Вместо папки nextcloud можно указать свое название.

  • Продолжаем:
  • Ограничиваем права доступа к папке для только владельца:
  • Редактируем файл secrets:

В конце файла нужно вставить ссылку на подключение и данные для авторизации. Пример для подключения облака NextCloud:


В конце файла добавляем ссылку на подключения с именем и паролем и конфигурацией монтирования. Пример для подключения к NextCloud:


  • Добавляем себя в группу davs2:
  • Команда монтирования диска:
  • Команда для размонтирования:

Где nextcloud – это ваша папка названия сетевого диска (этап 2 в данной инструкции).


Существует много способов использовать WebDAV-сервер. Например, вы можете поделиться документами Word или Excel со своими коллегами, загрузив их на свой сервер WebDAV. Таким же образом можно поделиться музыкальной коллекцией с семьей и друзьями –достаточно просто предоставить им URL-адрес. При этом никому не нужно устанавливать дополнительное программное обеспечение, поскольку все уже встроено в операционную систему «из коробки».

В этом руководстве вы научитесь настраивать доступ WebDAV через веб-сервер Apache из систем Windows, Mac и Linux по SSL и с парольной аутентификацией.

Требования

WebDAV требует очень мало ресурсов, поэтому для запуска и работы WebDAV-сервера хватит виртуальной машины любого размера.

Войдите на свой сервер как пользователь sudo, чтобы начать работу.

1: Включение WebDAV-модулей Apache

Веб-сервер Apache предоставляет множество дополнительных функций в виде модулей. Их можно включать и отключать, чтобы добавлять и удалять те или иные функции Apache. Функциональность WebDAV обеспечивает модуль, который устанавливается вместе с Apache, но по умолчанию он не включен.

Вам нужно включить модули WebDAV с помощью утилиты a2enmod. Это сделают следующие две команды:

sudo a2enmod dav

sudo a2enmod dav_fs

Теперь перезапустите Apache, чтобы загрузить новые модули в работу:

sudo systemctl restart apache2.service

Итак, вы загрузили и запустили функции WebDAV. На следующем этапе мы настроим Apache для обслуживания файлов по WebDAV.

2: Настройка Apache

Сейчас мы создадим все необходимые конфигурации, чтобы внедрить WebDAV на сервер Apache.

Сначала создайте корневую папку WebDAV, /var/www/webdav, в ней будут храниться файлы, которыми вы хотите поделиться через WebDAV:

sudo mkdir /var/www/webdav

Затем сделайте пользователя Apache, www-data, владельцем папки WebDAV:

sudo chown www-data:www-data /var/www/webdav

После этого нам нужно создать место для хранения файла базы данных, который Apache использует для управления и блокировки файлов, доступных по WebDAV. Этот файл должен быть доступен для чтения и изменения только пользователю Apache (широкий доступ к нему может стать причиной утечки конфиденциальной информации).

Создайте новый каталог для хранения файла базы данных с помощью утилиты mkdir:

sudo mkdir -p /usr/local/apache/var/

Параметр -p позволяет утилите mkdir создать все родительские каталоги в указанном вами пути (если какого-то из них не существует).

Затем с помощью утилиты chown передайте права на новый каталог пользователю и группе Apache:

sudo chown www-data:www-data /usr/local/apache/var

Давайте отредактируем файл VirtualHost, который содержит конфигурацию Apache для вашего домена. Он находится в /etc/apache2/sites-enabled/, а его имя заканчивается на le-ssl.conf, если вы использовали Certbot для получения сертификата SSL.

Откройте файл VirtualHost в текстовом редакторе:

sudo nano /etc/apache2/sites-enabled/your_domain-le-ssl.conf

В первой строке поместите директиву DavLockDB:

Затем вставьте директивы Alias ​​и Directory внутри тегов <VirtualHost> после всех остальных директив:

Alias /webdav /var/www/webdav

Директива Directory включает в Apache поддержку WebDAV для папки /var/www/webdav. Узнать больше о mod_dav можно в документации Apache.

Окончательный файл VirtualHost включает директивы DavLockDB, Alias ​​и Directory, это выглядит следующим образом:

<VirtualHost *:443>

CustomLog $/access.log combined

Alias /webdav /var/www/webdav

Если во время редактирования конфигурации Apache были допущены синтаксические ошибки, веб-сервер не запустится. Поэтому перед перезапуском Apache рекомендуется проверить ошибки в настройках. Для этого используйте утилиту apachectl:

sudo apachectl configtest

sudo systemctl restart apache2.service

Теперь сервер Apache поддерживает расширение WebDAV для обслуживания файлов, которые хранятся в /var/www/webdav. Однако пока мы не включили аутентификацию, читать и редактировать ваши файлы сможет любой пользователь, у кого есть доступ к вашему серверу. В следующем разделе мы включим аутентификацию для WebDAV.

3: Настройка аутентификации для WebDAV

Дайджест-аутентификация работает с файлом, в котором хранятся имена и пароли доверенных пользователей – только они могут получить доступ к серверу WebDAV. Как и файл базы данных, такой файл должен храниться в месте, которое доступно веб-серверу Apache и которое не отображается на вашем сайте.

Поскольку для этой цели мы уже создали папку /usr/local/apache/var/, мы также поместим туда и этот файл.

Сначала создайте в этой папке пустой файл users.password:

sudo touch /usr/local/apache/var/users.password

Затем передайте права на файл группе www-data, чтобы Apache мог читать и изменять файл:

sudo chown www-data:www-data /usr/local/apache/var/users.password

Новые пользователи добавляются в WebDAV с помощью утилиты htdigest. Следующая команда добавит в файл нового доверенного пользователя:

sudo htdigest /usr/local/apache/var/users.password webdav 8host

В этой команде есть аргумент webdav – он задает область, ее следует воспринимать как группу, в которую вы и добавляете нового пользователя. Также этот пользователи видят, когда вводят свое имя и пароль, чтобы получить доступ к вашему серверу WebDAV. Вы можете выбрать любое другое имя области, если оно лучше описывает ваш каталог WebDAV.

При запуске команды htdigest будет предложено ввести пароль и подтвердить его:

Adding user 8host in realm webdav

Re-type new password:

Следующим нашим шагом будет включение обязательной аутентификации для доступа к WebDAV – тогда Apache будет требовать ее у всех пользователей и читать для этого файл users.password.

Откройте файл VirtualHost:

sudo nano /etc/apache2/sites-enabled/your_domain-le-ssl.conf

Вставьте следующие строки в блок Directory:

Вот что делают эти строки:

Теперь блок <Directory> выглядит так:

Включите модуль auth_digest, чтобы Apache мог использовать метод дайджест-аутентификации:

sudo a2enmod auth_digest

Наконец, перезапустите Apache, чтобы включить новые настройки:

sudo systemctl restart apache2.service

4: Доступ к серверу WebDAV

Пора проверить доступ к серверу WebDAV с помощью браузеров в системах macOS, Windows и Linux (KDE и GNOME).

Прежде чем приступить, давайте загрузим в папку WebDAV какой-нибудь файл, который мы могли бы открыть во время проверки.

Откройте новый файл в текстовом редакторе:

sudo nano /var/www/webdav/webdav-testfile.txt

Добавьте в файл какой-нибудь текст, а затем сохраните и закройте его. Передайте права на файл пользователю и группе www-data:

sudo chown www-data:www-data /var/www/webdav/webdav-testfile.txt

Теперь мы можем попробовать получить доступ к серверу WebDAV.

Система Linux KDE

Сначала откройте менеджер файлов KDE Dolphin. Затем отредактируйте адресную строку, указав такой URL-адрес:

Когда вы нажмете ввод, вам будет предложено ввести имя пользователя и пароль.

Поставьте галочку в Remember password, если вы хотите, чтобы Dolphin сохранил ваш пароль. Затем нажмите Ок, чтобы продолжить. На экране вы увидите содержимое каталога /var/www/webdav/, которым вы можете управлять так, как если бы оно находилось в вашей локальной системе.

Добавьте сервер WebDAV в закладки, перетащив значок папки из адресной строки в раздел Remote в левой части панели навигации.

Система Linux GNOME

Сначала откройте приложение Files, кликнув на его значок в правой части рабочего стола.

Когда приложение откроется, сделайте следующее:

  1. Нажмите на кнопку + Other Locations.
  2. Введите URL-адрес вашего сервера WebDAV в следующей форме:

Затем нажмите Connect. На экране появится форма для аутентификации. В нее введите ваше имя и пароль.

Нажмите Connect, чтобы войти на сервер WebDAV. Поставьте галочку Remember forever, если вы не хотите каждый раз заново вводить пароль при доступе к этому серверу.

Теперь папка WebDAV будет доступна в приложении Files, где вы сможете управлять ее файлами.

Система macOS

Сначала откройте приложение Finder. Затем откройте меню Go и выберите Connect to server

Теперь вы увидите новое диалоговое окно, в котором можно указать URL-адрес сервера WebDAV. Этот URL должен иметь следующий вид:

Снова нажмите Connect, чтобы завершить процесс добавления сервера WebDAV в вашу систему.

Теперь сервер WebDAV можно найти в Finder в разделе Locations.

Система Windows

Сначала в меню Пуск откройте проводник (File Explorer). Когда приложение откроется, выберите This PC в левой панели навигации.

Затем нажмите Map network drive в верхней панели навигации.

Введите URL-адрес вашего сервера WebDAV в следующем формате:

Нажмите Finish, чтобы подключиться к серверу WebDAV. Вам будет предложено ввести имя пользователя и пароль.

Введите учетные данные и нажмите ОК, чтобы войти на сервер. Поставьте галочку в Remember my credentials, если вы не хотите каждый раз вводить пароль при доступе к этому серверу.

Теперь WebDAV появится в разделе This PC в левой панели проводника.

Заключение

В этом руководстве вы настроили безопасный WebDAV-сервер, который позволяет делиться файлами с доверенными пользователями. Независимо от того, какая операционная система установлена ​​у ваших пользователей, они смогут получать доступ и управлять файлами на вашем сервере WebDAV без установки дополнительных инструментов.

Облачное хранилище данных (англ. cloud storage) — модель онлайн-хранилища, в котором данные хранятся на многочисленных распределённых в сети серверах, предоставляемых в пользование клиентам, в основном, третьей стороной.

Установка OneDrive

1) Устанавливаем дополнительные инструменты

sudo apt-get update

sudo apt-get install python3-setuptools

sudo easy_install3 pip

sudo apt-get install git

2) Загружаем и устанавливаем клиент

3) Создаем папку OneDrive и настраиваем клиент

Установка OneDrive

Установка OneDrive

onedrive-d (изучаем доступные команды облачного клиента)

Облачный клиент OneDrive установлен и расположен в папке /home/имя пользователя/OneDrive . Лишние две папки с названием OneDrive из директории /home/имя пользователя можно удалить.

Облачный клиент OneDrive установлен

4) Добавляем приложение в автозагрузку

Открываем Dash (панелька вверху слева, в которой можно найти установленные программы) находим «Автоматически запускаемые приложения». Добавляем клиент: Имя — OneDrive;

Команда: onedrive-d start

Добавляем приложение в автозагрузку

Установка Box (WebDav)

Переходим к установке:

sudo apt-get update (уже как мантра :) )

sudo apt-get install davfs2 (установка утилиты монтирования)

открываем файловый менеджер Nautilus

sudo dpkg-reconfigure davfs2 (в появившимся окне выбираем Yes)

sudo adduser имя_пользователя_системы davfs2

sudo nautilus в открывшимся файловом менеджере переходим в папку /etc, открываем файл fstab и добавляем строку:

добавляем авторизацию

В открытом от имени суперпользователя файловом менеджере переходим в папку /etc/davfs2 и открываем файл secrets, в него добавляем строчку:

добавляем авторизацию

chmod u+s /sbin/mount.davfs

монтирование облака

Установка Яндекс.Диск (WebDav)

В данном случае есть отличная, рабочая инструкция по установке на официальном сайте. Не вижу смысла дублировать инструкцию, поэтому выкладываю ссылку: WebDAV в Linux и FreeBSD

Дополню: при введении пароля рекомендую выбрать «Запомнить навсегда».

Установка Яндекс.Диск

После того как подключите Яндекс.Диск, советую добавить диск в закладки файлового менеджера.

добавить диск в закладки файлового менеджера

Подключаем WebDav на Android

Устанавливаем приложение X-plore File Manager (или любой другой файловый менеджер с поддержкой WebDav). Открываем опцию Веб-хранилище — Добавить сервер:
- Яндекс.Диск. Имя пользователя = ваш почтовый адрес; Пароль.

Читайте также: