WebDAV (Web Distributed Authoring and Versioning) или просто DAV — набор расширений и дополнений к протоколу HTTP, поддерживающих совместную работу пользователей над редактированием файлов и управление файлами на удаленных веб-серверах.
Задача:
1 На Win server 2012 R2 настроить Webdav средствами IIS. Встроенным клиентом в Win 8.1 подключится к Webdav серверу.
2 Настроить шифрованое соединение через https (ssl)
3 Подключится с мобильных ОС (android, win phone 8.1)
Решение:
1. Берём win 2012 R2 и устанавливаем IIS с поддержкой WebDav Publishing.
2. Делаем нужную А запись в DNS сервере, по которой будем обращаться к Webdav. К примеру webdav.mydomain.ru. Создаём домен (не забыв указать нужные права на хомяк) в IIS и включаем поддержку Webdav в WebDAV authoring rule. Создаём правило подключения пользователей — WebDAV authoring, указав нужные параметры доступа и выбрав пользователей\группуы. Далее в свойствах сайта заходим в раздел Authentication, и разрешаем только Windows Authentication. По сути минимум настроек сделано, WebDAV будет работать.
3. Настраиваем клиента. В домашних Win ОС клиент по умолчанию доступен. В серверных нужно доставить Desktop Experience в Features. Подключать можно с консоли NET USE * http://webdav.mydomain.ru в результате будет подключён сетевойдиск или сетевая папка. Но это по протоколу HTTP и при этом данные будут ходить в открытом виде, кроме пароля авторизации. Для шифрования нужно использовать WebDAV over SSL.
4. Настраиваем сервер IIS для работы WebDAV по протоколу https. Нам понадобится сертификат SSL. Его можно купить ~440р/год, можно получить у китайцев, подробней о заказе тут. Или создать самоподписной сертификат. Первые 2 способа не требуют добавления на каждом клиенте, сертификата в довереннные, третий подразумивает добавление его в доверенные. Как добавить первые 2 сертификата, рассказано тут и с этим должно быть всё просто. IIS может формировать самоподписные сертификаты, но CN в них обычно = имени хоста, а не тому URL по которому вы подключаетесь к серверу. По этому сертификат не будет валидным. Для формирования самоподписного сертификата для Webdav На IIS, нужна утилита SelfSSL входящая в комплект (IIS) 6.0 Resource Kit Tools. О сертификатах в IIS описано подробно тут. Как сгенерировать сертификат расказано тут, я же укажу строку с параметрами. Сама утилита обычно лежит по пути C:\Program Files (x86)\IIS Resources\SelfSSL. Вызываем её с параметрами:
selfssl.exe /N:CN=webdav.mydomain.ru /V:1000
После добавления сертификата на сервер, нужно зайти в раздел Edit bindings в IIS нашего домена и сделать привязку имени к сертификату.
После успешных действий можно подключаться клиентом WebDav по протоколу HTTPS.
NET USE * https://webdav.mydomain.ru /USER:ИмяПользователя Пароль
5. Подключение мобильных устройств к WebDav.
Если используем самоподписной сертификат, то нужно его добавить на устройстве в доверенные!!
Win OS:
CarotDAV — Единый клиент для Dropbox, Google Drive, SkyDrive и не только
Android:
Win Phone:
Для Win Phone 8.1 я не нашёл родного клиента и использую WebDav File. Всё бы ничего, но вот хочется отправлять фотки и файлики из приложений прям в WebDav как в MS OneDrive нативно и просто в пару кликов.
Полезные ссылки:
На этом всё. Вот кучка полезных ссылок для шаманства.
WebDav клиент ошибка 0x800700DF или лимит размера файла
Ввремя жизни кэша для протокола WebDAV в Windows 7
Значение времени жизни кэша для WebDAV в Windows 7 – 60 секунд. Чтобы изменить это значение, вам нужно изменить ключ реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MRxDAV\Parameters\FileNotFoundCacheLifeTimeInSec. Эта мера необходима, т.к. не существует механизма, который бы чистил кэш по требованию.
Тормозят ресурсы WebDAV в Windows 7
Про WebDav аутентификации и тут малость.
UPD:17.10.2017
Если в момент скачивания файла с WebDav появится такое сообщение: Error 0x800700DF: The file size exceeds the limit allowed and cannot be saved.
То знайте, вы защищены обновлением от атаки «denial of service» Максимальный размер скачиваемого файла =~ 50мб. Решить можно правкой реестра как указано на сайте MS. Или тут, но с картинками