
En este paso a paso aprenderemos como instalar WebDav en Ubuntu.
WebDav (Web-based Distributed Authoring and Versioning por sus siglas en inglés) es un servicio que nos permite compartir, editar y manejar archivos por un grupo en un servidor remoto vía HTTP.
Entonces para que sirve realmente, la idea principal detrás de WebDav fue la de crear un conjunto de protocolos que sirvieran para manejar archivos a través de la Web de forma colaborativa por grupos de trabajos.
Tiempo de instalación: 20 min aproximadamente
Contenido:
Escenario
Imaginen un grupo de trabajo que tiene que hacer una propuesta o un programa y que cada individuo de ese grupo de trabajo tiene que hacer un aporte sobre un documento que se va a entregar, en este caso WebDav permitiría a todos en el grupo modificar ese archivo como si lo tuvieran en su propia PC, todos los cambios que hicieran los integrantes del grupo se vería reflejado en el documento e inclusive se puede evitar que dos personas modifiquen el mismo archivo al mismo tiempo para evitar versiones disparejas o errores. Todo esto se hace a través de un servidor Web que es el que permite compartir los archivos.
Entonces vamos a ver como instalar este útil servicio paso a paso.
1. Instalar servidor Apache
WebDav trabaja sobre Apache por lo que es necesario instalarlo, para esto tenemos ya hemos hecho un tutorial muy útil que puedes seguir aquí:
Como instalar un Servidor LAMP en Ubuntu Paso a Paso
Para WebDav sólo necesitas Apache (Paso 2 del tutorial anterior) si vas a utilizar este servidor Web para otras cosas puedes instalar todo el servidor LAMP completo es tu decisión, una vez que termines puedes volver aquí para instalar WebDav.
Listo?, muy bien vamos a ponernos a trabajar.
2. Activar Módulos de WebDav
WebDav está disponible como un módulo de apache por lo que tenemos que hacer es simplemente activar los módulos ejecutando en el terminal:
sudo a2enmod dav_fs
sudo a2enmod dav
sudo a2enmod dav_lock
Estos módulos son los necesarios para activar y dar soporte a WebDav.
Para que tome efecto reiniciamos el servidor Apache
sudo /etc/init.d/apache2 restart
3. Crear un Host Virtual
Vamos a crear un Host Virtual donde funcionará el WebDav para esto creamos el directorio donde lo vamos a alojar ejecutando en el terminal:
sudo mkdir -p /var/www/webdav
sudo chown www-data /var/www/webdav
En el último comando le dimos propiedad de la carpeta al usuario por defecto de Apache que es www-data.
Creamos una nueva plantilla para el host virtual:
sudo nano /etc/apache2/sites-available/webdav
Nota: puede utilizar el editor de su preferencia como vim, gedit, kate, emacs, etc.
Dentro de este archivo copiamos las siguientes líneas:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/webdav
<Directory /var/www/webdav/>
Options Indexes FollowSymLinks MultiViews
AllowOverride
Order allow,deny
allow from all
</Directory>
<Location />
DAV On
AuthType Basic
AuthName "webdav"
AuthUserFile /var/www/.passwd.dav
Require valid-user
DavMinTimeout 600
<LimitExcept GET PUT HEAD OPTIONS POST>
Require valid-user
</LimitExcept>
</Location>
</VirtualHost>
Aquí estamos creando nuestro nuevo sitio virtual y diciendo que cualquier petición que venga por el puerto 80 (que es el que se usa por defecto para HTTP) lea el contenido que está en el directorio /var/www/webdav que creamos (para más en Host Virtuales puede visitar Como configurar un Host Virtual en Apache basado en Nombre). Además tenemos las siguientes directivas para la autenticación de WebDav:
- La ubicación del archivo de autenticación /var/www/.passwd.dav (que crearemos a continuación)
- Requerimos que el usuario sea válido Require valid-user
- Tiempo mínimo que se bloqueará un archivo en este caso 600 segundos DavMinTimeout 600
Para más en las directivas del módulo WebDav puede visitar este sitio.
Por último activamos el Host Virtual y desactivamos el sitio por defecto de apache:
sudo a2ensite webdav
sudo a2dissite default
4. Crear el archivo de autenticación y agregar un usuario para WebDav
Vamos a crear el archivo de autenticación /var/www/.passwd.dav y el usuario que utilizaremos en este ejemplo es vensign (cambienlo por el nombre de usuario de su preferencia) ejecutamos:
sudo htpasswd -c /var/www/.passwd.dav vensign
La opción -c es para que cree el archivo, nos pedirá una contraseña para el usuario vensign.
Luego modificamos los permisos del archivo .passwd.dav para que sólo pueda ser modificado por root y por el grupo www-data (que es al que pertenece Apache). Ejecutamos:
sudo chown root:www-data /var/www/.passwd.dav
sudo chmod 640 /var/www/.passwd.dav
Por último reiniciamos el servidor Apache ejecutando:
sudo /etc/init.d/apache2 restart
5. Probar que WebDav funciona
Para esto vamos a instalar el cliente por consola para WebDav llamado cadaver ejecutamos
sudo apt-get install cadaver
Y luego ejecutamos la siguiente línea para conectarnos con WebDav
cadaver http://localhost
Debería aparecerles algo como lo siguiente:
$ cadaver http://localhost/
Authentication required for webdav on server `localhost':
Username: vensign
Password:
dav:/>
Nota: Si no les funciona con localhost prueben 127.0.0.1
Con esto hemos comprobado que sirve el servidor WebDav
Para salir del prompt de dav:/> escriban quit y luego presionen Enter o Entrar
Conectarse a WebDav desde Ubuntu
Para conectarse a WebDav desde un cliente Ubuntu vamos al menú de Lugares>Conectar con el Servidor…
Aparecerá una pantalla como la siguiente aquí escogemos WebDav(HTTP) y la dirección IP del servidor (en este ejemplo 192.168.1.30) deben cambiarla por la de su servidor WebDav:

Conectar al servidor WebDav Ubuntu
Y luego solicitará el usuario y contraseña que colocamos anteriormente

Solicitud Usuario y Contraseña WebDav
Una vez ingresado el usuario y contraseña aparecerá la carpeta compartida del WebDav donde podrá agregar, modificar y manejar archivos. Recuerde cambiar vensign por el usuario que escogió más arriba.
Conectarse a WebDav desde MS Windows
En MS Windows vaya a Mis sitios de Red y seleccione Agregar un sitio de red

WebDav Agregar sitio de Red
Luego en el cuadro que aparece seleccionamos Siguiente y en el siguiente Cuadro seleccionamos la opción Elija otra ubicación de red y hacemos click en Siguiente

WebDav Elegir otra ubicacion de red
Escribimos la dirección IP de nuestro servidor, en este ejemplo http://192.168.1.30:80 (cambiala por la dirección de tu servidor) y hacemos click en Siguiente.

WebDav Dirección Servidor
Nos pedirá el usuario y contraseña que elegimos más arriba durante la instalación, en este ejemplo vensign.

WebDav Usuario y Contraseña
Por último nos pide un nombre para el servidor coloquen el que quieran.
En el último cuadro seleccionamos Finalizar y ya nos debería aparecer la carpeta en nuestro sitio de red

WebDav Directorio
Agregar más usuarios en WebDav
Si quiere agregar otro usuario a WebDav debe ejecutar el siguiente comando en el servidor:
sudo htpasswd /var/www/.passwd.dav prueba
Donde prueba es el usuario lo puedes cambiar por el nombre que quieras y utilizar ese usuario para conectarte a WebDav.
Eso es todo con esto tendremos WebDav instalado y configurado y nuestros clientes conectados listos para compartir archivos via remota.
Espero que les sea de utilidad este tutorial cualquier duda o pregunta dejen su comentario y con gusto les responderé.
Saludos
Olivers
Nosotros en Vensign ofrecemos servicios de soporte, instalación y configuración de Linux y Software Libre para PyMES y corporaciones, puede ver nuestros servicios aquí o Contactarnos
Si quieres recibir más artículos y noticias de diseño y desarrollo Web, Negocios, Software Libre y Linux nos puedes seguir a través de nuestro RSS, Twitter o suscribirte a nuestro Boletín de Noticias