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?
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.
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.
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.
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. Los parámetros que podemos poner en esta clave de registro son los siguientes:
- 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.
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.
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.