Как настроить WebDAV с Apache2 на Fedora 10
1 Первое замечание
Я использовал сервер Fedora 10 с IP-адресом 192.168.0.100 в качестве примера. Подстраивайте пути и имена пользователей под вашу систему.
2 Установка WebDAV
Если Apache ещё не установлен, установите его так:
yum install httpdПосле установки откройте /etc/httpd/conf/httpd.conf и убедитесь, что модули dav и dav_fs включены в секции LoadModule (обычно они включены по умолчанию):
vi /etc/httpd/conf/httpd.conf| [...] LoadModule dav_module modules/mod_dav.so [...] LoadModule dav_fs_module modules/mod_dav_fs.so [...] |
Затем создайте системные ссылки для автозапуска Apache и запустите сервис:
chkconfig --levels 235 httpd on
/etc/init.d/httpd start3 Создание виртуального хоста
Мы создадим виртуальный хост по умолчанию в каталоге /var/www/web1/web. Если у вас уже есть vhost, адаптируйте этот шаг.
Создайте каталог и назначьте владельца apache:apache:
mkdir -p /var/www/web1/web
chown apache:apache /var/www/web1/webДобавьте новый vhost в конец /etc/httpd/conf/httpd.conf:
vi /etc/httpd/conf/httpd.conf| [...] NameVirtualHost *:80 |
Перезагрузите конфигурацию Apache:
/etc/init.d/httpd reload4 Настройка виртуального хоста для WebDAV
Создаём файл паролей WebDAV /var/www/web1/passwd.dav с пользователем test (ключ -c создаёт файл, если он отсутствует):
htpasswd -c /var/www/web1/passwd.dav testВас попросят ввести пароль для пользователя test.
Важно: не используйте ключ -c, если файл уже существует — он пересоздаст файл и удалит всех предыдущих пользователей.
Ограничьте доступ к файлу паролей так, чтобы только root и группа apache могли его читать:
chown root:apache /var/www/web1/passwd.dav
chmod 640 /var/www/web1/passwd.davДобавьте в vhost следующие строки (отредактируйте /etc/httpd/conf/httpd.conf):
vi /etc/httpd/conf/httpd.conf| [...] Alias /webdav /var/www/web1/web |
Директива Alias вместе с секцией
Итоговый vhost должен выглядеть примерно так:
| [...] NameVirtualHost *:80 |
Перезагрузите Apache:
/etc/init.d/httpd reload5 Тестирование WebDAV
Установим cadaver — консольный WebDAV-клиент:
yum install cadaverЧтобы проверить работу WebDAV, выполните:
cadaver http://localhost/webdav/Вас попросят имя пользователя. Введите test и пароль. При успешной аутентификации вы попадёте в dav-прошивку. Закройте сеанс командой quit:
[root@server1 ~]# cadaver http://localhost/webdav/
Authentication required for webdav on server `localhost':
Username: test
Password:
dav:/webdav/> quit
Connection to `localhost' closed.
[root@server1 ~]#Когда это не подойдёт
- Если вам нужна тонкая версия контроля и истории изменений (например, для исходного кода), WebDAV не заменит систему контроля версий. В таких случаях используйте Git, Subversion или специализированные решения.
- WebDAV через базовую аутентификацию (Basic) передаёт пароли в кодировке Base64 и уязвим к прослушиванию при отсутствии TLS. Для публичных или критичных сред обязательна HTTPS-конфигурация.
Альтернативные подходы
- Использовать SFTP (sshd) для безопасного доступа к файлам; проще для пользователей, умеющих работать по SSH.
- Настроить SMB/CIFS (Samba) для интеграции с Windows-сетями и шарингом.
- Развернуть WebDAV через специализированные приложения (Nextcloud, OwnCloud) для дополнительных функций: синхронизация, история, UI.
Практические рекомендации и меры безопасности
- Всегда ставьте TLS (HTTPS) для WebDAV, особенно если доступ осуществляется из вне.
- Не храните файл паролей в директории с общим доступом; выставляйте права 640 и владельца root:apache, как показано выше.
- При возможности используйте более безопасные механизмы аутентификации: Digest или интеграцию с LDAP/AD.
- Ограничьте доступ по IP, если это возможно, с помощью директив Apache (Require ip).
Важно: проверяйте логи /var/log/httpd/error_log и /var/log/httpd/access_log при отладке.
Контрольный список для администратора
- Установлен httpd
- Включены модули mod_dav и mod_dav_fs
- Создан каталог для данных и права назначены apache:apache
- Создан файл паролей /var/www/web1/passwd.dav
- Настроен Alias и Location для /webdav
- Перезапущен/перезагружен httpd
- Проверен доступ через cadaver или GUI-клиент
- Подключён TLS, если доступ извне
Критерии приёмки
- WebDAV доступен по URL http://<ваш_хост>/webdav/ и возвращает приглашение на аутентификацию.
- Пользователь с учётными данными из passwd.dav может создавать, изменять и удалять файлы в /var/www/web1/web через WebDAV.
- Записи об операциях появляются в логах Apache.
Шпаргалка: основные команды
- Установка Apache: yum install httpd
- Создание каталога: mkdir -p /var/www/web1/web
- Настройка пароля: htpasswd -c /var/www/web1/passwd.dav test
- Изменение прав: chown root:apache /var/www/web1/passwd.dav && chmod 640 /var/www/web1/passwd.dav
- Перезагрузка Apache: /etc/init.d/httpd reload
- Тестирование: cadaver http://localhost/webdav/
Краткий словарь
- WebDAV — расширение HTTP для удалённого управления файлами.
- Alias — директива Apache, связывающая URL с каталогом.
- htpasswd — утилита для создания файла пользователей для базовой аутентификации.
- cadaver — консольный WebDAV-клиент.
Резюме
Настройка WebDAV на Fedora 10 и Apache2 состоит из трёх ключевых шагов: установка httpd и модулей, создание и настройка виртуального хоста с Alias/Location и настройка файла паролей. Для безопасной эксплуатации используйте TLS и ограничивайте доступ по правам и IP.
Заметки: если у вас более современный дистрибутив, некоторые команды и расположение конфигурационных файлов могут отличаться. Проверьте документацию дистрибутива.
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента