WebDAV, también conocido como «Creación y control de versiones distribuidos basados en la web», es una extensión del Protocolo de transferencia de hipertexto. Permite a los usuarios editar y administrar archivos en colaboración en un servidor web remoto mediante el protocolo HTTP. Puede compartir documentos de Word o Excel o una colección de música con sus amigos y otras personas simplemente dándoles una URL. WebDAV también nos permite cargar y descargar archivos en el servidor Apache. Hay varios beneficios de WebDAV sobre otras soluciones como FTP o Samba.
En este artículo explicaré cómo instalar y configurar WebDav con el servidor web Apache2 en Ubuntu-14.04.
Instalación de WebDAV
De forma predeterminada, el módulo WebDAV viene con la instalación de apache2 en Ubuntu-14.04. Sin embargo, no está habilitado de forma predeterminada.
Primero debe habilitarlo. Puede habilitar los módulos WebDAV usando el a2enmod
dominio.
sudo a2enmod dav sudo a2enmod dav_fs
Esto creará un enlace simbólico de «/etc/apache2/mods-disponible» a «/etc/apache2/mods-enabled».
Ahora, reinicie Apache para activar la nueva configuración.
sudo /etc/init.d/apache2 restart
Configurar directorio WebDav
Después de habilitar el módulo, deberá crear el directorio requerido donde configurará webdav.
Ahora, cree un directorio bajo la raíz web de Apache.
sudo mkdir /var/www/html/webdav
También deberá cambiar el permiso para permitir que Apache escriba en él.
sudo chown -R www-data:www-data /var/www/html/webdav
Configuración de la protección con contraseña
Un servidor WebDAV sin autenticación no es seguro. Se recomienda agregar autenticación a su servidor WebDAV.
Debe crear un procedimiento de autenticación para acceder al contenido del directorio creando un archivo htpasswd.
Cree un archivo .htpasswd oculto en el directorio de configuración «/etc/apache2» con el usuario «webuser».
sudo htpasswd -c /etc/apache2/.htpasswd webuser
Ahora debe asignar la propiedad del grupo del archivo a «www-data» y luego bloquear los permisos para todos los demás:
sudo chown www-data:www-data /etc/apache2/.htpasswd sudo chmod 640 /etc/apache2/.htpasswd
Configurar host virtual
A continuación, debe crear un archivo de host virtual para el directorio webdav.
Para hacerlo, vaya a «/etc/apache2/sites-disponible/»:
cd /etc/apache2/sites-available/
Cree un nuevo archivo de configuración del sitio llamado «webdev.conf».
sudo nano /etc/apache2/sites-available/webdav.conf
Agrega el siguiente contenido:
DavLockDB /var/www/html/DavLock <VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www/html/webdav/ ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined Alias /webdav /var/www/html/webdav <Directory /var/www/html/webdav> DAV On AuthType Basic AuthName "webdav" AuthUserFile /etc/apache2/.htpasswd Require valid-user </Directory> </VirtualHost>
Después de crear los archivos de host virtual, debe habilitar un nuevo host virtual.
Puedes hacer esto ejecutando:
sudo a2ensite webdav.conf
Ahora, reinicie Apache para activar la nueva configuración.
sudo /etc/init.d/apache2 restart
Probar WebDav usando un navegador web
Finalmente, debe probar si WebDav está habilitado correctamente o no.
Abra su navegador web favorito y navegue hasta la URL «https://your-server-ip/webdav/». Se le solicitará un nombre de usuario y una contraseña para acceder a la página web.
Probar WebDav usando el Administrador de archivos
En su máquina Ubuntu Linux, abra el administrador de archivos y presione la opción «Conectar al servidor» en la barra lateral izquierda. Escriba la dirección del servidor «dav://your-server-ip/webdav/» y presione Entrar.
Se le pedirá un nombre de usuario y una contraseña. Introdúcelos y pulsa Conectar.
Una vez que se haya conectado, el directorio debería aparecer en el administrador de archivos.
Conclusión
En este artículo, hemos explicado cómo configurar webdav con el servidor Apache. Ahora, tiene los conocimientos suficientes para configurarlo en un entorno de producción. Siéntase libre de comentar a continuación si tiene alguna pregunta.