Webdav Ubuntu Vensign

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.

relojTiempo 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.

[adrotate group=”3″ banner=”9″]

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

Conectar al servidor WebDav Ubuntu


Y luego solicitará el usuario y contraseña que colocamos anteriormente


webdav-ubuntu-usuario

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

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

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 Direccion Servidor

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

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

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