El protocolo WebDAV (Web-based Distributed Authoring and Versioning) está desarrollado por la IETF, es un protocolo que se encarga de permitirnos de forma sencilla guardar, editar, copiar, mover y compartir archivos desde servidores web. Gracias a este protocolo, podremos trabajar con archivos directamente en un servidor web, como si de un servidor Samba o FTP se tratara. Actualmente, la mayoría de sistemas operativos modernos como Windows, Linux o macOS, permiten soporte para WebDAV, haciendo que los ficheros de un servidor WebDAV aparezcan como almacenados en un directorio. ¿Quieres saber en detalle cómo funciona este protocolo?
Puede que en algún momento te pueda servir de ayuda conocer una extensión en particular que te permitirá acceder a documentos o índices de Internet. Además, te sirve para enviarlos a otros dispositivos. Por esto mismo, en este artículo de RedesZone vamos a explicaros qué es exactamente, para qué se puede dar uso a WebDAV y, sobre todo, los pasos necesarios que hay que seguir para configurarlo en un servidor, en Windows, entre otras opciones.
Qué es WebDAV y para qué sirve
WebDAV es un protocolo que nos permite guardar archivos, editarlos, moverlos y compartirlos en un servidor web, no necesitaremos utilizar otros protocolos de intercambio de archivos en red local o Internet, como Samba, FTP o NFS. El objetivo de WebDAV es que se pueda trabajar directamente en el servidor web, sin necesidad de utilizar protocolos adicionales para el manejo remoto (o local) de los archivos. Este protocolo nos permite que los servidores web puedan aparecer como unidades de red en nuestro PC.
Actualmente el protocolo WebDAV es un estándar, y lo tenemos disponible de manera predeterminada en todos los sistemas operativos de escritorio como Windows, Linux y también macOS. Existen diferentes clientes WebDAV para los diferentes sistemas operativos, son más o menos características. También es muy importante que WebDAV sea soportado por los servidores web, si un servidor web como Apache, Lighttpd o Nginx no soporta o no tiene configurado WebDAV, no podremos utilizarlo para la gestión de los archivos. Dependiendo del servidor web que tengamos, la sintaxis de la configuración de WebDAV es diferente, pero al ser un protocolo estándar, el funcionamiento en todos ellos es el mismo.
Otras características de WebDAV son que soporta cifrado AES SSL de 256 bits, siempre y cuando utilicemos el protocolo HTTPS para la conexión. Es capaz de atravesar sin problemas firewalls, la NAT y proxies, por último, es más rápido que el popular protocolo SMB/CIFS si lo usamos sobre VPN, por lo que, si te vas a conectar remotamente, es posible que te interese utilizarlo en lugar de Samba.
Uno de los puntos que hay que tener en cuenta es que, para usar WebDAV para transferir datos, lo cierto es que es necesario que tanto el cliente como el servidor lleguen a soportar este protocolo. Como decíamos, este protocolo es un estándar, lo cierto es que todos los servidores web cuentan con una implementación para este. Por ejemplo, en sistemas como Windows no es necesario ningún controlador o software adicional para usarlo.
Ventajas de WebDAV
Este sistema está basado en HTTP, por lo cual para la transferencia utilizar el puerto 80, estándar de HTTP, que al ser un puerto habitual, no se ve bloqueado por el firewall que tengamos instalado, salvo que se especifique previamente.
Esta también es compatible con diferentes servidores, como hemos comentado, pero en cada uno de ellos podemos encontrar funciones diferentes, y contar con una compatibilidad más completa en algunos casos.
- Microsoft IIS: el cual cuenta con un módulo WebDAV propio.
- Apache HTTP: Cuenta con diferentes módulos basados en Linux davfs2, y la herramientas de control Apache Subversión.
- SabreDAV: Es una aplicación PHP que se puede instalar en Apache o NGINX, y funciona a modo de complemento en lugar de los módulos de estas.
- Nestcloud: Se trata de un servicio en la nube que cuenta con soporte para WebDAV.
- ownCloud: Otro servicio en la nube, donde cuenta con un soporte completo de WebDAV.
La configuración es un punto a favor de WebDAV. En otros protocolos se han de autorizar algunos puertos adicionales en los cortafuegos para que funcionen correctamente, lo cual conlleva más trabajo de configuración y pone en riesgo la seguridad del propio sistema. En el caso de WebDAV, no se ve afectado por esto, por lo cual la seguridad no se ve reducida por tales configuraciones, y puede ahorrar mucho tiempo a los administradores de los sistemas que lo implementen.
Aunque, dejando de lado cada una de las ventajas que ofrece WebDAV, lo cierto es que hay que hablar de una clara desventaja. Y es que solamente se puede ver la versión actual del documento, es decir, este no te muestra ni el histórico de las versiones ni tampoco la información adicional de este, al igual que tampoco podrías ver los comentarios de los ficheros a los que accedas con este protocolo. Por lo que también se pueden encontrar puntos en contra. Aunque no son tan numerosos como los beneficios que ofrece. De todas formas, vamos a verlos.
Desventajas de WebDAV
- Complejo de instalar: si no tienes unas nociones básicas, la configuración de este servidor no se hace en dos clics, por lo que puede resultarte tedioso. Eso si llegas a conseguir que todo funcione correctamente.
- Seguridad: en caso de no configurarse adecuadamente, podrías dar paso a terceros, los cuales podrían tener acceso a los datos, así como a ser vulnerables a ataques DDoS.
- Rendimiento: pese a ser una gran opción, no es la mejor de ellas si tenemos un volumen alto de datos, o una conexión de red lenta. Para ello existen alternativas mejores.
- Compatibilidad: aunque está disponible en casi todos los sistemas operativos, como cualquier protocolo del estilo puede que algunos programas pueden tener problemas para interactuar correctamente con servidores WebDAV, por tanto, en ocasiones, no será la mejor opción.
Qué permite hacer
Actualmente la gran mayoría de los sistemas operativos que nos podemos encontrar, tienen soporte para WebDAV de forma nativa. Esto combinado con un cliente y red adecuados, hace que manejar archivos sea algo muy sencillo con los directorios locales. Sobre todo de forma remota, cuando se puede implementar para algunas operaciones como pueden ser:
- La manipulación de recursos en un servidor WebDAV, el cual está destinado a publicar el contenido. Los usuarios con los permisos suficientes, pueden copiar y mover archivos dentro del directorio WebDAV. Siendo una de sus principales ventajas frente al FTP, que las modificaciones y demás acciones se pueden realizar en el propio servidor. Sin ningún tipo de intermediario.
- Realizar modificaciones de las propiedades ligadas a algunos archivos y otros recursos. El contenido se puede leer y a su vez establecer cambios en sus propiedades de forma rápida y sencilla.
- Establecer bloqueos y desbloqueos de los recursos. Esto hace que diferentes usuarios puedan leer un archivo que es muy concurrente. Por la contra solo podrá ser modificado por un usuario, y no por varios.
- La búsqueda de contenido también es algo que nos va a facilitar, sobre todo cuando tenemos mucho contenido. Todo se puede buscar sobre el directorio WebDAV.
Habilitar un directorio WebDAV es algo muy útil para realizar la publicación del contenido de forma sencilla. Una vez lo tenemos, solo debemos configurar los permisos que sean necesarios para los usuarios. Tanto si solo van a ver el contenido como si van a publicarlo, por seguridad es recomendable especificarlos de forma concreta. Para todo esto, se pueden establecer muchas más medidas de seguridad, como puede ser la autenticación anónima o básica, así como una configuración Advances Digest. Toda esta necesidad de permisos, crece a la vez que aumenta el número de usuarios que deben poder acceder a estos recursos.
Rendimiento de WebDAV
Una de las virtudes de WebDAV, es la calidad de la conexión a Internet y la latencia en la red. Este utiliza HTTP para transferir archivos, lo cual quiere decir que la velocidad y estabilidad de la conexión a Internet pueden afectar al rendimiento de las transferencias que se realizan. Pero hay algún otro factor a considerar, ya que hay otros servidores que cuentan con implementaciones mejores que WebDAV. Implementaciones que afectan al rendimiento a la hora de transferir archivos. En todo caso, no quiere decir que WebDAV no se encuentre a la altura.
Por lo general, el rendimiento siempre estará muy marcado por los archivos que se transmiten. Los más grandes o complejos suelen requerir mucho más tiempo de transferencia, lo cual puede generar cierta ralentización general de la herramienta. Por otro lado, siempre es recomendable asegurarse de que todos los archivos que transferimos se encuentren totalmente optimizados para las webs, y sean lo más livianos posibles. Siendo esto algo que afectará al rendimiento de la misma, y que repercute en la experiencia que los usuarios tienen con el sitio web.
Pero en general, WebDAV es una herramienta muy eficaz para transferir archivos, pero siempre debemos tener en cuenta esos factores que citamos previamente. Siempre será importante realizar las pruebas necesarias y ajustes para que el rendimiento de WebDAV se mantenga lo más rápido y óptimo que sea posible. Para ello, tendremos que asegurarnos de que la conexión a Internet sea lo mejor posible, así como que los servidores web se encuentren en el mejor estado posible para que todo funcione de la forma adecuada y sin problemas. Por lo cual, a pesar de que es una solución muy efectiva y útil, su rendimiento siempre estará marcado por estos factores externos a la propia aplicación. Al igual que prácticamente cualquier que utilicemos para desarrollar nuestra actividad a través de Internet.
Tolerancia a fallos
WebDAV es un sistema que está diseñado para garantizar un buen funcionamiento. Por lo cual estamos ante un sistema muy robusto, asegurando que los usuarios dispongan de una herramienta en la que pueden acceder y manipular el contenido en cualquier condición. Incluso en las más adversas. Algunas de las principales características que ayudan a tolerar mejor los fallos y otros problemas son:
- Redundancia de datos: El sistema permite que los archivos y recursos, se puedan almacenar en varios servidores o ubicaciones. Por lo cual estamos ante una garantía de que los datos están accesibles ante un posible fallo de un servidor.
- Respuestas HTTP y otros códigos: Con WebDAV tendremos estas respuestas HTTP y otros códigos de estado, los cuales informan a los clientes sobre el estado de la operación que tratan de realizar. Por lo cual, si aparece algún problema, nos proporcionará uno de estos códigos para poder identificar el error de una forma más sencilla.
- Manejo de errores: El sistema se encuentra diseñado para poder manejar algunos problemas. Pueden ser errores de conexión, de autenticación o de escritura y lectura Estos se gestionan de una forma apropiada para que los usuarios, puedan recibir mensajes claros y precisos sobre la naturaleza de los problemas que se pueden dar.
- Control de versiones: Todos los cambios que se realizan en recursos disponibles, pueden ser rastreados y revertidos en caso de ser necesario. Esto permite recuperar versiones estables de los archivos, en caso de que alguno se pierda o de algún otro tipo de fallo.
- Compatibilidad HTTPS: El sistema WebDAV se puede utilizar con conexiones seguras, proporcionando capas adicionales de seguridad y protección ante ataques y vulnerabilidades.
- Pruebas y validaciones: Los desarrolladores pueden realizar pruebas muy exhaustivas y validaciones para tratar de garantizar que los protocolos funcionen de la forma adecuada y sea fiable. Lo cual puede incluir condiciones de alta carga, o situaciones donde se simulan fallos para analizar cómo reacciona el sistema.
Configuración de WebDAV en un servidor NAS QNAP
Configurar un servidor WebDAV en un servidor NAS de QNAP es realmente sencillo, simplemente nos tenemos que ir a «Panel de control / Servidores de aplicaciones / Servidor Web / WebDAV«, Una vez que estemos aquí, deberemos activar el servidor WebDAV, ya que, por defecto se encuentra desactivado. A continuación, tendremos varias opciones:
- Permisos: si queremos heredar los permisos de las carpetas compartidas, o si queremos proporcionar unos permisos específicos para el acceso WebDAV.
- Puertos: WebDAV es compatible con el protocolo HTTP y HTTPS, dependiendo del protocolo, podremos definir el puerto por defecto (80 y 443) o elegir unos específicos para WebDAV.
En el caso de que elijas configurar unos permisos específicos para WebDAV, tendrás que configurarlo en las «Carpetas Compartidas» de QNAP.
Nos vamos a la sección de «Panel de control / Privilegio / Carpetas compartidas«, y pinchamos en «Editar los permisos de carpetas compartida», para posteriormente desplegar la opción de «Seleccione el tipo de permiso» y elegimos «Acceso a WebDAV«. Esta opción solamente está disponible para elegir, siempre y cuando en el servidor WebDAV hayamos elegido «Permisos WebDAV», de lo contrario no aparecerá.
Editamos los permisos de las carpetas como nosotros deseemos, y pinchamos en aplicar.
Llegados a este punto, ya habremos configurado correctamente el servidor WebDAV en nuestro NAS QNAP, ahora vamos a configurar el cliente WebDAV que viene por defecto en Windows para conectarnos al servidor.
Configuración en Windows 10 del cliente WebDAV
Lo primero que tenemos que hacer es irnos al registro de Windows, a la ruta: «EquipoHKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesWebClientParameters y seleccionamos «BasicAuthLevel» para ponerlo con el valor 2, pinchamos en aceptar y reiniciamos. Llegado a este punto, hay que tener en cuenta otros aspectos, como los parámetros que podemos poner en esta clave de registro. Para ello, te contamos cuáles son:
- 0: Autenticación básica deshabilitada.
- 1. Autenticación básica habilitada solamente para conexiones SSL.
- 2. Autenticación básica habilita para conexiones SSL y también No-SSL.
Una vez que hayamos reiniciado, procedemos a irnos a «Equipo» y pinchamos click derecho en «Agregar ubicación de red«.
Seguimos el asistente, seleccionando «Elegir una ubicación de red personalizada«.
Ahora tenemos que poner la dirección IP de nuestro servidor WebDAV, ya sea con HTTP o con HTTPS. Nosotros hemos tenido problemas al utilizar HTTPS con Windows 10, ya que parece que no es compatible el propio cliente, por tanto, deberemos usar HTTP (sin cifrar), y si queremos dotarle a la comunicación de seguridad, deberemos usar una VPN.
En cuanto pinchemos en «Siguiente» nos saldrá una pantalla para introducir las credenciales de usuario, después de poner usuario y contraseña, nos indicará que la conexión es correcta y podremos darle un nombre a esta ubicación de red.
Cuando le hayamos dado un nombre, pincharemos en «Finalizar» para terminar el asistente de agregar ubicaciones de red.
En estos instantes, ya podremos acceder a nuestro servidor vía protocolo WebDAV, tal y como podéis ver a continuación:
Como habéis podido ver, el protocolo WebDAV es muy sencillo de configurar y también de utilizar en sistemas operativos Windows. Aunque debemos recordar que es compatible con Linux y macOS sin ningún problema. Por lo que es un aspecto que se debe tener en cuenta, aunque, en el sistema operativo de Microsoft no hace falta ningún tipo de instalación de un software o driver complementario.
Configurar pCloud usando WebDAV
pCloud es uno de los servicios de almacenamiento en la nube más recomendables que existen hoy en día, sobre todo si compras una suscripción de por vida de 500GB, 2TB o más almacenamiento, porque al cabo de 2 o 3 años habrás amortizado la inversión inicial en comparación con servicios como Google Drive, Dropbox o OneDrive entre otros. Este servicio nos permite tener un disco duro en la nube y acceder a él a través de la web con un navegador, o también utilizando la aplicación oficial para sistemas operativos Windows. Sin embargo, en el caso de que utilices un sistema operativo que no sea Windows, también vas a poder utilizar este servicio haciendo uso de la tecnología WebDAV.
La configuración en el cliente con el que quieres acceder a pCloud debe estar configurado de la siguiente forma:
- URL del servidor: https://ewebdav.pcloud.com (para datacenter de la UE).
- Cuenta: la dirección de email de registro.
- Contraseña: la contraseña de acceso a la cuenta.
- Nombre de conexión: la que quieras.
Tal y como podéis ver, tan solo es necesario utilizar esa URL del servidor que está específicamente diseñada para aceptar las conexiones a través de este protocolo. Por ejemplo, podrías integrar pCloud en tu servidor NAS, ya sea del fabricante QNAP, Synology, ASUSTOR o cualquier otro, simplemente es necesario añadirlo en el cliente y automáticamente podremos acceder como si fuera una carpeta compartida más. Gracias a la integración de pCloud con nuestro servidor NAS, vamos a poder hacer lo siguiente:
- Acceder a pCloud como si fuera una carpeta compartida en Samba o FTP más. Siempre que el sistema operativo soporte esta característica.
- Utilizar pCloud a través del explorador de archivos del propio NAS.
- Realizar copias de seguridad desde las carpetas del NAS al almacenamiento en la nube, debemos recordar que tenemos un almacenamiento de 2TB, por lo que vamos a almacenar una gran cantidad de información en la nube.
Alternativas para compartir archivos
Hay otras alternativas usando otros protocolos para compartir archivos en lugar de WebDAV. Uno de los protocolos más utilizados en redes domésticas y profesionales es SMB/CIFS, un protocolo seguro porque en su versión SMB 3.0 incorpora autenticación y transferencia de datos con cifrado AES, de esta forma, todas las comunicaciones estarán cifradas y autenticadas, para proporcionarnos la mejor seguridad y privacidad, algo que en versiones anteriores como SMB 1.0 o SMB 2.0 no incorporan, no obstante, en las últimas versiones de SMB 2.0 la autenticación sí se realizaba de forma segura y no en texto claro. Este protocolo está orientado a compartir archivos y carpetas a través de la red local, nunca deberías utilizar este protocolo de cara a Internet abriendo los puertos TCP que utiliza para el intercambio de información, es algo muy importante porque afectaría enormemente a tu privacidad.
Otro protocolo que podremos utilizar para compartir archivos y carpetas en la red local es FTP, este protocolo es ampliamente utilizado para transferir archivos y carpetas en la red local y también en Internet. Con abrir el puerto de control (por defecto el TCP 21), y los puertos del FTP PASV, podremos transferir datos desde Internet fácilmente. Un detalle muy importante es que el protocolo FTP no dispone de ningún tipo de cifrado en la autenticación, ni tampoco a la hora de transferir los datos. En caso de querer seguridad en la autenticación y en la transferencia de archivos, necesitarás hacer uso del protocolo FTPES y utilizar AES-128-GCM para asegurar nuestros datos.
Por último, otro protocolo que podemos usar para transferir archivos y carpetas a través de la red local o Internet es SFTP, este protocolo está basado en el popular SSH, por tanto, tendremos cifrado de datos tanto en la autenticación como también en la transferencia de datos, por lo que es uno de los protocolos más recomendable si lo que quieres es tener la mejor seguridad posible.
Otras alternativas
- Rsync: Se trata de un protocolo y herramienta para realizar la sincronización de archivos.
- AtomPub: Basado en HTTP, y se usa para la creación y actualización de recursos web.
- Content Manager Interoperability Services: Es un estándar abierto, que permite que los sistemas de gestión de contenidos puedan intercambiar información por internet.
- FTP (File Transfer Protocol): como explicábamos al principio, los protocolos FTP son una alternativa a este WebDav, y pese a no ser tan robusto en términos de colaboración y gestión de versiones, es mucho más simple de configurar y utilizar, por lo que puede ser una alternativa cómoda para la mayoría de usuarios.
- Syncthing: es una herramienta de sincronización de archivos peer-to-peer, la cual permite a los usuarios sincronizar sus archivos entre los diferentes dispositivos de manera segura y descentralizada. Es una gran opción si necesitas realizar gestiones en tiempo real, además de que tiene una gran compatibilidad con los diferentes equipos y sistemas operativos.
Como hemos podido ver, la instalación de este sistemas es sencilla, y facilita unas herramientas muy útiles en cualquier sistema donde sea necesario transferir archivos de forma rápida y segura. Sin embargo, también tiene algunas contras, y existen otras alternativas más sencilla de utilizar, aunque no tan completas, por lo que deberemos elegir, dependiendo del caso, la que más se adapte a nuestras necesidades.