Tu propia nube de libreta de direcciones y calendario: Comparte contactos, agendas y tareas con CardDAV/CalDAV

Feb. 28, 2020

Si utilizas diferentes dispositivos y ordenadores para hacer tus cosas, puede que quieras sincronizar contactos, agendas y tareas. Puedes usar cualquiera de los servicios de la "gran nube" para esto, como Apple iCloud, Microsoft Office 365 y Google Gmail. Pero, si prefieres no compartir tu libreta de direcciones y calendario con las grandes compañías americanas, puedes hacerlo tú mismo.

¿Por qué hacerlo usted mismo?

Aunque es muy conveniente usar un gran servicio en la nube para la sincronización de la libreta de direcciones y el calendario, existen buenas razones por las que podría querer hacerlo usted mismo:

control: si ejecuta la nube de la libreta de direcciones/calendario, usted controla cómo funciona, cuánto cuesta, quién tiene acceso a ella, etc.

privacidad: aunque las grandes empresas afirman que "valoran su privacidad", no ofrecen garantías de que nadie mire sus datos. Me gusta que mi libreta de direcciones (con citas, detalles del proyecto, etc.) y contactos (nombres, números, cumpleaños) sean privados.

libertad: si usa protocolos abiertos para ejecutar su nube de libreta de direcciones/calendario, puede usarla en todos sus dispositivos.

Cómo hacerlo: CardDAV/CalDAV

Para obtener la máxima libertad y flexibilidad al elegir los dispositivos que usa, debe seleccionar un denominador común al buscar soluciones que permitan compartir libretas de direcciones y calendarios. Afortunadamente, existe una solución de este tipo en los estándares abiertos CardDAV y CalDAV.

Tanto CardDAV como CalDAV son extensiones del estándar WebDAV. Web Distributed Authoring and Versioning (WebDAV) en sí mismo es una extensión del protocolo HTTP estándar. Es un protocolo que permite que múltiples clientes (dispositivos/computadoras/aplicaciones) compartan un recurso (archivo/libreta de direcciones/calendario/etc.).

CardDAV

El protocolo CardDAV es un protocolo para compartir libretas de direcciones. Fue propuesto originalmente como estándar por Apple en 2007, RFC 6352. El protocolo utiliza WebDAV para compartir datos de contacto en el formato de archivo "vCard". Puede pensar en una vCard como una tarjeta de presentación virtual. CardDAV le permite compartir su colección de tarjetas de presentación virtuales entre sus dispositivos.

CalDAV

El protocolo CalDAV es un protocolo para compartir calendarios. Al igual que CardDAV, fue propuesto originalmente como estándar por Apple, RFC 6638. Utiliza WebDAV para compartir datos de citas en formato iCalendar. La "Especificación de Objetos Centrales de Calendario y Programación de Internet" es un estándar abierto en sí mismo, RFC 5545, que es ampliamente compatible. CalDAV permite que múltiples dispositivos y aplicaciones accedan a su calendario, lo que permite la planificación cooperativa y el intercambio de información.

CardDAV/CalDAV requiere un servidor

Para trabajar con CardDAV/CalDAV, necesita un servidor que actúe como repositorio central de los datos de su libreta de direcciones/calendario. A diferencia de las conexiones 'peer-to-peer' (donde vincularía su teléfono a su computadora), el protocolo CardDAV/CalDAV está diseñado para funcionar usando Internet. El servidor central permite que los dispositivos y las aplicaciones se conecten y sincronicen datos de forma independiente.

Servidor CardDAV/CalDAV conectándose con dispositivos y aplicaciones

Como el protocolo se basa en tecnología web (eficiente), los requisitos para el servidor son mínimos. No necesita procesadores potentes ni grandes cantidades de memoria de almacenamiento. Algunas personas ejecutan su CardDAV/CalDAV desde una computadora Raspberry Pi económica. Alternativamente, podría usar un pequeño VPS, un NAS o una computadora vieja.

Software de servidor CardDAV/CalDAV

El software del servidor CardDAV/CalDAV consta de dos partes: el sistema operativo del servidor y el servidor CardDAV/CalDAV real. Debido a su definición de estándar abierto, usted es libre de elegir el sistema operativo usted mismo. GNU/Linux es una opción común como sistema operativo de servidor. Diferentes distribuciones a menudo vienen con un repositorio de software tipo 'tienda de aplicaciones' listo para usar, lo que le permite instalar aplicaciones de servidor con facilidad.

Sistema operativo

En armonía con mis otros servicios en la nube, a menudo elijo Debian GNU/Linux. Es un sistema operativo libre de presión comercial, que prioriza la libertad sobre los intereses comerciales. Debido a esto, es una base excelente y estable para cualquier esfuerzo de servidor.

Implementaciones de servidor CardDAV/CalDAV

En el sistema operativo del servidor, deberá instalar el software del servidor que implementa los estándares CardDAV/CalDAV. Debe consultar los diferentes servidores usted mismo: servidores CardDAV y servidores CalDAV.

Después de analizar las diferentes opciones de servidor CardDAV/CalDAV, destilé las siguientes tres opciones:

Apple Calendar-Server: como la especificación original de CardDAV/CalDAV fue escrita por Apple, desarrollaron un servidor completo y lo hicieron de código abierto. Aunque esto suena genial, el desarrollo de Calendar Server se detuvo (en lugar de Apple iCloud). Hay un "Aviso de archivo" en la página de github de Calendar Server. Todavía funciona, pero su futuro es incierto.

ownCloud: una solución popular de 'hacerlo todo' que implementa CardDAV/CalDAV es ownCloud. Tiene un nombre apropiado, ya que le permite 'poseer toda su nube'. Su principal inconveniente es que intenta hacer todo, incluido el correo electrónico y el intercambio de archivos, tal vez demasiado, según sus necesidades.

Servidor Radicale: diseñado como un servidor CardDAV/CalDAV de código abierto pequeño pero potente, Radicale hace precisamente eso: compartir calendario y libreta de direcciones. Su desarrollo está vivo, impulsado por la empresa francesa Kozea que realiza mucho trabajo para la sanidad pública. En mi opinión, este servidor CardDAV/CalDAV es ágil y saludable, lo que lo convierte en una excelente opción.

Instalar Radicale en Debian/GNU Linux

Instalar Radicale en Debian es tan fácil como 'apt-get install radicale'. Debe consultar las instrucciones de instalación detalladas en el Wiki de Debian: instalar radicale en debian.

La instalación básica de Radicale funciona bien con nombres de usuario y contraseñas simples (desde un archivo en el servidor). Pero, al ser software libre y de código abierto, existen opciones para integrar Radicale con diferentes formas de autenticación y seguridad:

autenticar nombres de usuario y contraseñas de Radicale con un servidor IMAP: si ya administra un servidor de correo, es posible que desee aprovechar su gestión de nombres de usuario y contraseñas existente. Puede 'aprovechar' la gestión de usuarios de CardDAV/CalDAV sobre su infraestructura existente a través de complementos de autenticación. Hay complementos (buenos) que funcionan para usar Radicale con IMAP, disponibles con código fuente.

ejecutar Radicale detrás de un proxy NGINX: puede fortalecer Radicale, desde una perspectiva de seguridad cibernética, ejecutándolo detrás de un servidor proxy inverso NGINX a prueba de batalla. Obtendrá todas las ventajas que ofrece NGINX, incluidos los certificados TLS/SSL automatizados a través de Let's Encrypt. Las instrucciones para comenzar con esto están disponibles en la Documentación de Radicale tanto para Apache como para NGINX.

Conexión a su servidor CardDAV/CalDAV: clientes

Una vez que tenga su servidor CardDAV/CalDAV en funcionamiento, debe configurar sus dispositivos para que se conecten a él. Puede hacerlo de diferentes maneras, según el tipo de dispositivo que utilice.

Apple macOS: configurar su Mac para que se conecte a un servidor CardDAV/CalDAV es fácil. Simplemente agréguelo como una cuenta a macOS, vea las instrucciones para CardDAV y CalDAV

Apple iOS/iPadOS: al igual que la Mac, configurar su iPhone o iPad para que se conecte a un servidor CardDAV/CalDAV es fácil. Simplemente agréguelo como una cuenta, en "Configuración". Instrucciones para CardDAV y CalDAV.

Android: para una mejor integración, debe usar una aplicación de sincronización que conecte las bases de datos de contactos y calendario de Android al servidor CardDAV/CalDAV. Tengo buenas experiencias con CardDAV-Sync y CalDAV-Sync

Windows: aunque Microsoft tiene compatibilidad integrada para CardDAV/CalDAV en Windows 10, no le permite configurarlo para usar ningún otro servicio que no sea iCloud, a menos que realice trucos extraños. Si usa Outlook, puede usar un complemento de código abierto Caldavsynchronizer.org para conectarse a su servidor.

GNU/Linux: si está utilizando software libre en la PC, tiene muchas opciones para configurarlo para que se conecte al servidor CardDAV/CalDAV. Si ejecuta GNOME como entorno de escritorio, debe consultar estas instrucciones.

Conclusión

La comodidad es algo hermoso, hasta que te pica en la espalda. Los "grandes servicios en la nube" operados por los gigantes tecnológicos estadounidenses brindan formas fáciles (y gratuitas) de sincronizar su agenda personal y libretas de direcciones. Si desea tomar el control de sus propios datos personales (o laborales), debería considerar configurar su propio servidor de libreta de direcciones y calendario.

No es tan difícil hacerlo usted mismo, y si necesita ayuda, siempre puede pedirle a alguien que lo ayude. Una vez que lo tenga en funcionamiento, tendrá más control sobre sus datos, mejor privacidad y libertad para elegir sus dispositivos y aplicaciones. No está mal, ¿verdad?