Установка и настройка WebDAV на IIS в Windows 7 и Windows 2008 (доступ к файлам через интернет)

Существует надстройка над службой Internet Information Services (IIS)  под названием WebDAV.  WebDAV – это протокол для доступа к общим файлам и папкам через интернет, частично похож на FTP. Передача файлов по протоколу  WebDAV осуществляется через разные межсетевые экраны и брандмауэры, информацию можно шифровать. При этом, работа с файлами и папками очень  удобна и напоминает работу службы доступа к файлам и папкам в Windows.

Вместе с выходом Windows Server 2008 Microsoft была обновлена версия модуля WebDAV для IIS 7. Этот модуль расширяет возможности, увеличивает удобство и безопасность использования WebDAV для доступа к файлам в Интернет. И еще,  теперь он поддерживает работу многих пользователей и блокировку файлов.

Далее разберемся, как установить и настроить WebDAV  на ОС Windows 7 и Windows Server 2008 R2, и потом – как получить доступ к файлам и папкам, которым открыт общий сетевой доступ по WebDAV.

Не забудьте, что WebDAV  это расширение службы IIS, поэтому, если у вас не установлен IIS, сделайте это (и в Windows 7, и  в Windows Server 2008 R2, IIS идет по умолчанию, но в целях безопасности этот компонент нужно включать отдельно). Установка  WebDAV  в Windows 7 и в Windows 2008 R2 несколько отличается.

Установка WebDAV на IIS 7.5 в Windows Server 2008 R2

  • Откройте меню Start-> Administrative Tools-> Server Manager (Панель управления\Система и безопасность\Администрирование).
  • В окне управления сервером выберите Roles и отметьте Web Server (IIS).
  • В окне Web Server (IIS), найдите секцию Role Services и добавьте новую роль Add Role Services.
  • В списке служб разверните элемент Common HTTP Features, выберите опциюWebDAV Publishing (Веб-публикация DAV) и нажмите Next (Далее).
  • Затем нажмите Install (Установить).
  • После установки расширения WebDAV, закройте окно установки кнопкой Close.

Установка WebDAV на IIS 7.5 в Windows 7

  • Перейдите в панель управления.
  • Там откройте элемент Programs and Features, и перейдите в  режим установки функций Windows (Turn Windows Features on or off).
  • Разверните узел Internet Information Services, затем World Wide Web Services, и  Common HTTP Features.
  • Отметьте WebDAV Publishing и нажмите OK.

Настраиваем публикацию WebDAV в Диспетчер служб IIS

На этом этапе мы включим WebDAV для сайта IIS и дадим права на редактирование содержимого локальному администратору.

  • В менеджере IIS Manager, разверните дерево сайтов и выберите Default Web Site (SERVER\сайты\Default Web Site).
  • Щелкните по элементу (как на картинке) WebDAV Authoring Rules (Правила Разработки WebDAV).
  • На странице  WebDAV Authoring Rules щелкните в правой колонке(Actions / Действия) по сслыке Enable WebDAV (Включить WebDAV) 
  • После включения WebDAV, создаем правила доступа к содержимому,  нажав кнопкуAdd Authoring Rule (Добавить правило разработки).
  • В окне Add Authoring Rule (Добавить правило разработки) укажем:
    • All content (Все содержимое) – что значит – правило будет применяться для контента всех типов.
    • Выберите «Specified users» (указанные пользователи) и введите имя пользователя «administrator»
    • Права доступа: Read, Source и Write (Чтение, Источник, Запись).
    • После настройки, нажмите OK.
  • В панели управления IIS выберите опцию Authentication (Проверка подлинности).
  • В окне аутентификации активируйте аутентификацию Windows (Windows Authentication), если IIS будет работать только как сервер WebDAV, анонимную аутентификацию можно отключить.
  • Вернитесь на уровень сайта Default Web Site и выберите Authorization Rules (Правило авторизации .NET) либо .Net Authorization Rules
  • Создайте Allow (разрешить) правило (или убедитесь, что оно уже есть), в котором администратору будет разрешен доступ к серверу (если такое правило уже есть, то всем пользователям — All Users, в том числе администратору, разрешен доступ к IIS).
  • Теперь подключимся к сайту WebDAV c учетной записью администратора, в командной строке набираем:

net use * http://localhost/

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

К сведению: Если при попытке подключить каталог по WebDav появляется ошибка «System error 67 has occurred. The network name cannot be found.«, в Windows 8 /Windows Server 2012  установите компонент Desktop Experience и проверьте, запущена ли службаWeb Client.

Открыть доступ к каталогу в WebDAV

Чтобы расшарить конкретную папку на диске, надо создать виртуальный каталог IIS.  Для этого щелкните правой кнопкой мыши по сайту и выберите ‘Add New Virtual Directory’:

Укажите алиас (имя виртуального каталога IIS) и путь к папке, к которой необходимо открыть доступ, и нажмите OK.

Чтобы подключить данный каталог, надо воспользоваться командой:

net use * https://ithelpblog.pro/projects

Подключить сетевой диск по WebDAV в Windows

Сетевой диск, подключенный по WebDAV выглядит так:

Как видите, WebDAV  — это хорошее средство для удаленного доступа к файлам и папкам в Windows  поверх протокола HTTP,  которое можно использовать, даже через межсетевой экран. Кроме того, так как WebDAV   базируется на службе IIS, это означает, что можно использовать разные технологии обеспечения безопасности и средства управления IIS, в том числе HTTPS для шифрования передаваемых данных (при использовании обычного HTTP вся информация передается в открытом виде, кроме пароля, который, при использовании Windows Authentication, шифруется).

Несколько нюансов использования WebDAV:

  • Если вы используете Basic authentication вместе с HTTP, это означает, что Ваш пароль будет пересылаться в открытом виде, поэтому лучше использовать протокол HTTPS, или включить аутентификацию Windows.
  • Не забудьте, что IIS работает под учетной записью, у которой нет доступа к большинству каталогов и файлам, поэтому надо вручную назначить NTFS права этой учетной записи.
  • Для того, чтобы подключить диск по WebDAV от клиента Windows XP, надо убедится, что запущена служба WebClient
  • Чтобы подключить каталог WebDAV по HTTPS, пользуйтесь командой:
  • net use x: "https://ithelpblog.pro/projects " /User:UserName Password