Гид по технологиям

Как настроить WebDAV с Apache2 на Mandriva 2010.1 Spring

• 4 min read • DevOps • Обновлено 26 Nov 2025
Настройка WebDAV с Apache2 на Mandriva 2010.1
Настройка WebDAV с Apache2 на Mandriva 2010.1

Версия 1.0
Автор: Falko Timme
Следите за обновлениями в Twitter

1. Краткое пояснение

WebDAV (Web-based Distributed Authoring and Versioning) — расширение HTTP, которое позволяет редактировать и передавать файлы прямо на веб-сервер без явного FTP-загрузчика. В этом руководстве шаг за шагом показано, как включить WebDAV в Apache2 на Mandriva 2010.1 Spring. Примеры команд предполагают запуск от root или через sudo.

Важно: я не даю гарантий, что эта инструкция сработает во всех окружениях.

2. Предварительные замечания

В примерах используется сервер Mandriva 2010.1 Spring с IP 192.168.0.100. Если у вас другой адрес или уже настроенный vhost — адаптируйте пути и конфигурацию соответственно.

3. Установка WebDAV

Обновите базу пакетов:

urpmi.update -a

Установите Apache и модуль WebDAV:

urpmi apache apache-mod_dav

Откройте /etc/httpd/conf/httpd.conf и убедитесь, что в секции LoadModule раскомментированы следующие модули. Если в конце строк появляется лишняя строка “-> available in the apache-mod_dav package”, удалите её, чтобы не было ошибок синтаксиса:

vi /etc/httpd/conf/httpd.conf
LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule dav_lock_module modules/mod_dav_lock.so

Затем перезапустите Apache:

/etc/init.d/httpd restart

4. Создание виртуального хоста и корня веб-документов

Создадим директорию /var/www/web1/web и сделаем владельцем пользователя и группу apache:

mkdir -p /var/www/web1/web
chown apache:apache /var/www/web1/web

Добавьте vhost в конец /etc/httpd/conf/httpd.conf (или отредактируйте существующий vhost, если вы хотите включить WebDAV в уже работающий сайт):

vi /etc/httpd/conf/httpd.conf

Пример минимального vhost:

NameVirtualHost *:80

        ServerAdmin webmaster@localhost

        DocumentRoot /var/www/web1/web/
        
                Options Indexes MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        

Перезагрузите конфигурацию:

/etc/init.d/httpd reload

5. Конфигурация виртуального хоста для WebDAV

Создайте файл паролей для WebDAV и добавьте пользователя test (ключ -c создаёт файл заново — используйте только при первом создании):

htpasswd -c /var/www/web1/passwd.dav test

Введите пароль при запросе. Если файл уже существует, не используйте -c, чтобы не перезаписать текущих пользователей.

Ограничьте права доступа так, чтобы файл паролей был доступен только root и группе apache:

chown root:apache /var/www/web1/passwd.dav
chmod 640 /var/www/web1/passwd.dav

Добавьте в ваш vhost следующие строки, чтобы примонтировать WebDAV по URL /webdav:

vi /etc/httpd/conf/httpd.conf
Alias /webdav /var/www/web1/web


   DAV On
   AuthType Basic
   AuthName "webdav"
   AuthUserFile /var/www/web1/passwd.dav
   Require valid-user

Полный vhost будет выглядеть так:

NameVirtualHost *:80

        ServerAdmin webmaster@localhost

        DocumentRoot /var/www/web1/web/
        
                Options Indexes MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        

        Alias /webdav /var/www/web1/web

        
           DAV On
           AuthType Basic
           AuthName "webdav"
           AuthUserFile /var/www/web1/passwd.dav
           Require valid-user
       

Примените изменения:

/etc/init.d/httpd reload

6. Тестирование WebDAV

Установите cadaver — консольный WebDAV-клиент:

urpmi cadaver

Запустите тест подключения:

cadaver http://localhost/webdav/

Ожидается запрос логина и пароля; введите test и соответствующий пароль. После успешной авторизации вы попадёте в dav:/> и сможете выполнять операции; введите quit для выхода.

Пример успешной сессии:

[root@server1 administrator]# cadaver http://localhost/webdav/
Authentication required for webdav on server `localhost':
Username: test
Password:
dav:/webdav/> quit
Connection to `localhost' closed.
[root@server1 administrator]#

7. Отладка и распространённые ошибки

  • 401 Unauthorized: проверьте, что файл /var/www/web1/passwd.dav содержит пользователя и что права на файл 640, владелец root:apache.
  • 403 Forbidden: проверьте права на папку /var/www/web1/web и владельца apache:apache.
  • 500 Internal Server Error: проверьте синтаксис httpd.conf (особенно если вы удаляли лишние фрагменты после LoadModule).
  • Проблемы с блокировками (locks): модуль dav_lock должен быть включён. Если возникают ошибки блокировок при одновременной записи, исследуйте файл блокировок или настройте LOCK-ступени.

Полезные команды для диагностики:

/etc/init.d/httpd configtest
tail -n 200 /var/log/httpd/error_log
ls -la /var/www/web1/

8. Укрепление безопасности

  • Используйте HTTPS (SSL/TLS) для защиты передаваемых паролей — Basic-аутентификация передаёт данные в незашифрованном виде.
  • Рассмотрите AuthType Digest или предпочтительнее — модуль для аутентификации через PAM/LDAP или внешнюю систему.
  • Ограничьте доступ по IP или добавьте двухфакторную аутентификацию в более защищённой схеме.
  • Регулярно обновляйте пакеты и применяйте патчи безопасности для Apache и модулей.

Пример минимальной директивы для принуждения HTTPS (включить SSL-конфигурацию отдельно):


    SSLEngine on
    SSLCertificateFile /path/to/cert.pem
    SSLCertificateKeyFile /path/to/key.pem
    ...

9. Альтернативные подходы и совместимость

  • Если вы используете Nginx, у него есть собственный модуль WebDAV (nginx-dav-module), но функционал отличается — Nginx не обеспечивает полный набор DAV-операций по умолчанию.
  • Для совместной работы с версиями рассмотрите использование WebDAV-серверов с контролем версий (например, Subversion с mod_dav_svn), если нужна история изменений.
  • На современных дистрибутивах имя пакетов и пути (например, /etc/httpd vs /etc/apache2) и команды управления сервисом (systemctl вместо /etc/init.d) могут отличаться.

10. Чек-лист ролей

Администратор:

  • Установить пакеты и включить модули.
  • Проверить синтаксис конфигурации и перезапустить Apache.

Разработчик/Контент-менеджер:

  • Проверить права на файлы/директории.
  • Опробовать базовые операции (создать/удалить/скачать файл).

Оператор безопасности:

  • Настроить HTTPS и пересмотреть методы аутентификации.
  • Проверить журналы доступа и ошибок.

11. Критерии приёмки

  • При подключении через cadaver к http://localhost/webdav/ пользователь test проходит аутентификацию.
  • Пользователь может создавать, изменять и удалять файлы в /var/www/web1/web.
  • Доступ к файлу паролей ограничен (chown root:apache; chmod 640).
  • Apache успешно перезагружается без ошибок конфигурации.

12. Краткая справка

  • DAV On — включает WebDAV для указанного Location.
  • AuthUserFile — путь к htpasswd-файлу.
  • Alias — привязывает URL к реальному пути на диске.

Глоссарий (одна строка на термин):

  • WebDAV: протокол для редактирования файлов по HTTP.
  • vhost: виртуальный хост Apache.
  • htpasswd: утилита для создания файла пользователей HTTP-аутентификации.

13. Сводка

Этот пошаговый сценарий показывает, как настроить WebDAV на Mandriva 2010.1 Spring с Apache2 и модулем mod_dav. Важные моменты: корректные права на файлы и директории, безопасная передача паролей (HTTPS) и проверка логов при возникновении ошибок. При необходимости выбирайте альтернативные методы аутентификации и учитывайте особенности вашего дистрибутива.

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

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро