Что такое WebDAV? В каком контексте вы сталкиваетесь с этим? Чем он отличается от своих альтернатив?
Интернет и WebDAV
Всемирная паутина должна была стать средством для потребления и производство контента. Но веб-браузеры почти сразу утратили способность редактировать веб-страницы, и контент, доступный только для чтения, превратился в абсолютную норму..
Самые ранние веб-браузеры поддерживали редактирование веб-страниц.
Тем не менее, часто требуется совместное редактирование удаленного контента, и поэтому оно появилось в Интернете в различных формах. WebDAV (Web Distributed Authoring и Versioning) – это один механизм. Веб-сервер, который поддерживает WebDAV, одновременно работает как файловый сервер. Это мощная возможность.
Вы можете столкнуться с WebDAV на HTTP-сервере Apache, Microsoft IIS, Box.com, WordPress, Drupal, Microsoft Sharepoint, Subversion, Git, Windows Explorer, MacOS Finder, Microsoft Office, Apple iWork, Adobe Photoshop и многих других местах..
WebDAV восходит к концу 90-х годов; в годы интернета это древнее. В мире веб-протоколов и API-интерфейсов он предшествует архитектурам SOAP / XML и RESTful. Несмотря на свою долговечность, реализации WebDAV могут быть странными. Многие серверы и клиенты реализуют подмножества или расширенные подмножества множества стандартов. Таким образом, совместимость не может быть принята; Успех зависит от платформы, среды и расширений конкретного поставщика..
Благодаря этому во многих случаях использования WebDAV заменяется более современными механизмами. Но это все еще мощная возможность и надежная рабочая лошадка, когда подходящие серверы и клиенты подобраны. Вы можете столкнуться с этим в разных контекстах.
Что такое WebDAV?
WebDAV (RFC 4918) является расширением HTTP, протокола, который веб-браузеры и веб-серверы используют для связи друг с другом. Протокол WebDAV позволяет веб-серверу вести себя также как файловый сервер, поддерживая совместную разработку веб-контента..
WebDAV расширяет набор стандартных методов и заголовков HTTP, чтобы обеспечить возможность создания файла или папки, редактирования файла на месте, копирования или перемещения или удаления файла и т. Д. В качестве расширения HTTP, WebDAV обычно использует порт 80 для незашифрованного доступ и порт 443 (HTTPS) для безопасного доступа.
Для поддержки совместной разработки исходная спецификация WebDAV включала блокировку файлов, но она была применена к части «управления версиями» DAV из-за сложности домена отслеживания версий. DeltaV (RFC 3253), часть управления версиями и конфигурацией WebDAV, была определена позже. Возможности поиска также были добавлены в более позднем расширении (RFC 5323).
Доступ к файлам и манипулирование ими – это хорошо понятная возможность, которая полезна для широкой аудитории. Но отслеживание изменений чуждо нетехническим пользователям. Также нет распространенного метода, который операционные системы, системы контроля версий и приложения используют для моделирования истории и изменений. Многие схемы используются. Как следствие, WebDAV без контроля версий широко распространен, а DeltaV гораздо менее широко реализован..
Если вы встречаете сервер WebDAV, называемый «класс 1», это означает, что ему не хватает блокировки. Класс 2 включает в себя блокировку. Сервер WebDAV с версионированием часто называют просто сервером «DeltaV»..
WebDAV сам по себе является основой для дополнительных протоколов, включая календарь (CalDAV) и управление контактами (CardDAV).
Где вы найдете WebDAV
WebDAV появляется в разных контекстах на стороне сервера или клиента.
Одно предупреждение: многие из них уже давно поддерживают WebDAV. Когда WebDAV не занимает центральное место в конкретном пакете, функциональность WebDAV может поддерживаться не так, как раньше.
Серверы WebDAV
Сервер WebDAV всегда является веб-сервером, но может быть встроен в другую систему.
Универсальные веб-серверы
Реализация WebDAV с открытым исходным кодом по умолчанию находится на сервере Apache HTTP. Многие веб-серверы поддерживают WebDAV через дополнительный модуль, например Nginx, lighttpd и Microsoft IIS..
Системы контроля версий
Несколько систем контроля версий доступны через ту или иную форму WebDAV, включая Subversion, Git и PVCS..
Совместные платформы и системы управления контентом
Платформы для совместной работы, такие как Microsoft Sharepoint, или CMS, такие как WordPress, Drupal или Joomla, могут иметь встроенный WebDAV или доступный через дополнительные модули..
Услуги сетевого хранилища и облачного хранилища
Устройства сетевого хранилища (NAS) в вашей локальной сети могут поддерживать удаленный доступ через WebDAV. Облачные сервисы хостинга файлов, такие как Box.com, могут предложить вам доступ к вашим папкам и файлам через WebDAV..
Различные приложения
WebDAV обнаруживается в случайных местах, где полезны удаленные манипуляции с файлами и их редактирование. Например, платформа проектирования систем LabView может использовать WebDAV для передачи файлов на / со встроенного целевого компьютера..
Клиенты WebDAV
Как отмечается в документации Subversion, клиенты WebDAV являются автономными приложениями, расширениями для файловых обозревателей или модулями файловой системы. В частности, клиент WebDAV может быть одним из следующих.
Приложения доступа к файлам WebDAV
Приложения, предназначенные для предоставления вам доступа к удаленным файлам, могут быть ориентированы исключительно на WebDAV, например, инструмент для командной строки Linux или графический DAV Explorer. Или они могут быть инструментами, которые говорят на нескольких протоколах, таких как WinSCP или Cyberduck.
Использование WinSCP для просмотра удаленных файлов через WebDAV.
Они позволяют загружать и загружать файлы, управлять папками и т. Д .; GUI обеспечивает перетаскивание и связанные визуальные метафоры.
Приложения, использующие WebDAV
Ряд приложений имеет возможность работать с файлами, доступ к которым осуществляется через WebDAV. Диалог выбора файла приложения поддерживает ввод не только локального имени файла, но и URL-адреса WebDAV с указанием имени пользователя и пароля, необходимых для сервера WebDAV. Эти приложения включают Microsoft Office (Word, Excel и т. Д.); Apple iWork (страницы, номера, Keynote); Adobe Photoshop и Dreamweaver; и другие.
Когда такое приложение работает с файлами или папками на сервере WebDAV, WebDAV работает за кулисами, обеспечивая совместную модификацию удаленных файлов. Файлы на сервере редактируются «на месте», без загрузки в локальную файловую систему для последующей повторной загрузки (что создает несколько копий, которые могут быть не синхронизированы).
Расширения файлового проводника
Пользовательские интерфейсы файловых менеджеров большинства операционных систем включают расширение для представления и управления папками и файлами WebDAV, как если бы они были локальными. К ним относятся Windows File Explorer, macOS Finder и файлы GNOME (Nautilus) и KDE Konqueror в Linux.
Отображение сервера WebDAV в качестве сетевого диска в проводнике Windows.
В каждом случае будет опция «подключиться к серверу», в которой вы указываете URL-адрес сервера WebDAV (к сожалению, формат URL варьируется от инструмента к инструменту). Затем вы предоставляете имя пользователя и пароль для доступа к серверу..
Сервер WebDAV сопоставлен в проводнике Windows.
Диспетчер файлов представляет удаленные файлы и папки, доступ к которым осуществляется через WebDAV, в качестве локальных ресурсов, по которым можно щелкать, перетаскивать и т. Д..
Модули файловой системы
Несколько операционных систем включают возможность использования низкоуровневого модуля файловой системы, который монтирует или отображает соединение с сервером WebDAV в качестве диска или монтирования. К ним относятся перенаправитель Microsoft WebDAV, файловая система macOS WebDAV, а также Linux GNOME GVfs и KDE KIO..
После того как операционная система подключила / смонтировала сервер WebDAV, файлы и папки, доступные через WebDAV, кажутся локальными. Доступ к ним осуществляется с помощью обычных вызовов доступа к файлам, и любое локальное приложение обращается к ним, не зная их истинного местоположения..
Альтернативы WebDAV
WebDAV позволяет удаленно редактировать и манипулировать файлами. Есть много других механизмов для работы с файлами на удаленном сервере; чем отличается WebDAV?
FTP
FTP (File Transfer Protocol) датируется с первых дней Интернета. Интернет тогда был маленьким городом, поэтому безопасность vanilla FTP совершенно не подходит для злобных улиц современного Интернета. В отличие от WebDAV использует преимущества безопасности HTTPS. Дизайн FTP не дружествен к брандмауэрам, где WebDAV использует стандартные механизмы поддержки веб-серверов. Для FTP требуется собственный серверный процесс, где WebDAV находится на веб-сервере. И FTP не включает в себя функции совместной работы, такие как блокировка и отслеживание версий.
Существуют потомки FTP, которые удовлетворяют потребность в безопасности, используя расширение FTP или рабочий протокол, поверх SSL / TLS или SSH..
SSH
Протокол SSH (Secure Shell) использует криптографию для безопасного предоставления услуг операционной системы, таких как доступ к файлам и выполнение команд по небезопасной сети. Среди услуг – SCP (протокол защищенного копирования) и SFTP (протокол защищенной передачи файлов)..
Для SSH (и, следовательно, для SCP и SFTP) требуются свои собственные серверные процессы и правила брандмауэра, но поддержка SSH практически универсальна для Linux и macOS, а недавно стала встроенной службой в Windows 10 (ранее требовалось стороннее программное обеспечение). , SCP обрабатывает только движущиеся файлы, где SFTP может управлять папками, удалять файлы и т. Д. Однако им не хватает функций, ориентированных на совместную работу; протокол SFTP поддерживает блокировку файлов, но пока вы не можете рассчитывать на его присутствие и включение.
Wikis
Когда мы говорим о совместном производстве контента в Интернете, вики являются очевидным примером. Вики – это отредактированные группой веб-сайты, которые служат базой знаний о проекте, инструментами ведения заметок, веб-сайтами сообщества и т. Д..
Вики позволяет пользователям изменять контент на страницах, создавать страницы и изменять связи между страницами, используя ванильный веб-браузер – никаких специальных протоколов, таких как WebDAV, не требуется.
Вики обычно используют упрощенный язык разметки, который намного более ограничен – и быстрее для понимания – чем HTML. Вики-движок живет в веб-сервере, таком как WebDAV. Чтобы разрешить редактировать ванильный веб-браузер, вики не включают возможность редактировать мультимедийные файлы, и единственное включенное «управление файлами / папками» – это возможность создавать и изменять гиперссылки между вики-страницами..
Идеал вики заключается в том, что сайт является краудсорсингом и самоорганизуется; любой пользователь может вносить изменения, и нет предопределенного владельца или привратника. Анархический идеал часто подвергается риску; Существуют различные вики-движки, и многие поддерживают аутентификацию пользователей и навязывают контроль доступа к операциям..
Распределенные файловые системы
Существует несколько протоколов для совместного использования удаленных файловых систем в сетях, наиболее распространенным из которых является сопоставление / монтирование общего сетевого ресурса, экспортируемого сервером, что позволяет вам получать доступ к папкам и файлам на сервере, как если бы они были локальным диском. SMB / CIFS является родным для Windows; NFS является родным для Unix / Linux; а для MacOS старый AFP по умолчанию устарел в пользу SMB.
Эти протоколы предоставляют практически все службы файловой системы на локальном диске, включая блокировку файлов, но не встроенное отслеживание версий файлов..
Средства распределенной файловой системы часто поставляются с операционной системой; если они добавляются позже, они обычно требуют добавления дополнительных модулей в ОС.
Эти протоколы были разработаны для работы в локальной сети. Производительность через глобальный Интернет или VPN не будет звездной, хотя вы можете несколько снизить ее с помощью настройки, и более поздние версии протоколов попытаются решить эту проблему..
Эти протоколы имеют гораздо большую поверхность атаки, чем более простые протоколы, такие как WebDAV. Хотя некоторые последние версии, такие как NFSv4 и SMB3, вносят улучшения для поддержки безопасного использования в ненадежных сетях, большинство версий этих служб не защищены за пределами локальной сети, и их настройка для такого использования опасна.
Облачное хранилище файлов
Сервисы облачного хранения, такие как Dropbox, Microsoft OneDrive, Google Drive и Box.com, кажутся естественными местами для WebDAV. В некоторых из них это действительно проявляется – Box.com доступен через WebDAV, а OneDrive может быть доступен с помощью стандартных средств Windows WebDAV (хотя это необходимо, только если у вас не установлена синхронизация файлов OneDrive). Другие сервисы облачного хранения предоставляют свои собственные специализированные API, программное обеспечение для синхронизации файлов и клиенты веб-приложений, и если вы хотите получить доступ к WebDAV, вам нужно использовать сторонний шлюз.
Специализированные API, программное обеспечение для синхронизации файлов и клиенты веб-приложений, предоставляемые облачными службами, предназначены для обеспечения безопасности и производительности в сетях, таких как Интернет..
Почему стоит выбрать WebDAV?
Хотя существуют альтернативы WebDAV и некоторые из них являются более новыми системами, ни одна из конкурирующих систем не объединяет все возможности WebDAV. Ключевые атрибуты WebDAV:
- Интеграция операционной системы
- Бесплатно использовать
- Тесная интеграция с веб-сервисами
- Контроль версий
- Транспортное шифрование
- Удаленный доступ
- Централизованное хранилище
- Контроль версий
- Блокировка файла
Ни одна из альтернативных систем управления файлами не обладает всеми этими атрибутами. Вы можете безопасно передавать файлы с помощью SFTP и SCP, но эти протоколы не включают контроль версий. WebDav предоставляет удаленный доступ к документам в центральном хранилище, а не требует, чтобы файлы копировались на локальный компьютер пользователя, а затем снова копировались.
Вы можете купить программные пакеты, которые управляют совместным авторингом, но тогда вы будете платить за систему, которая просто дублирует услуги WebDAV, которую вы можете получить бесплатно.
Хотя WebDAV иногда изображается как устаревшая методология, он очень хорошо помогает популярным облачным компаниям-хранилищам обеспечивать беспрепятственный локальный доступ к удаленным файлам. Современные рабочие практики разделения рабочих мест, управления проектами, совместной разработки, координации разработки, удаленной работы и облачных сервисов создают требования к сервисам, которые WebDAV может предоставлять десятилетиями. В некотором смысле, WebDAV опередил свое время, и только сейчас компании начинают работать так, что требуют полного набора возможностей WebDAV..
Серверы и клиенты WebDAV по-прежнему становятся сильными
WebDAV – это давний протокол, который позволяет веб-серверу выступать в качестве файлового сервера и поддерживать совместное создание контента в Интернете. Во многих случаях использования WebDAV вытесняется более современными механизмами. Но это все еще надежная рабочая лошадка, когда подходящие серверы и клиенты подобраны, поэтому он все еще встречается во многих различных приложениях..
industry-industry-4-network-points от Geralt, лицензируется под CC0.
WorldWideWeb (оригинальный веб-браузер на базе NeXT), c. 1993, Тим Бернерс-Ли для ЦЕРН – через Википедию.