Radicale como servidor de calendario simple y confiable

Radicale como servidor de calendario simple y confiable

Necesito un servidor de calendario simple (confiable) en mi servidor que preferiblemente se integre con el cliente de correo electrónico Mozilla Thunderbird que ya uso.

¿También un cliente de Android?

Respuesta1

Radicale como servidor de calendario simple y confiable

Copiado y abreviado dehttps://github.com/Kozea/Radicale/wiki/Simple-installation

Fácil de instalar

##### Install dependencies for Radicale
ServerUSER@Server:~$ sudo apt-get install python3-pip
##### Install dependencies for bcrypt encryption method
ServerUSER@Server:~$ sudo python3 -m pip install --upgrade passlib bcrypt
##### -H flag uses root's home rather than USER's home
ServerUSER@Server:~$ sudo -H python3 -m pip install --upgrade radicale

Fácil de configurar

##### Put user "fakeuser" in a new "users" file
ServerUSER@SERVER:~$ sudo htpasswd -B -c /etc/radicale/users fakeuser
New password:
Re-type new password:
##### Add another user
ServerUSER@SERVER:~$ sudo htpasswd -B /etc/radicale/users user2
New password:
Re-type new password:
##### Install dependencies for bcrypt encryption method
ServerUSER@SERVER:~$ sudo python3 -m pip install --upgrade passlib bcrypt

Editar el archivo de configuración

ServerUSER@SERVER:~$ sudo nano /etc/radicale/config

Dile a Radicale dónde encontrar usuarios

##### Add these lines under relevant portions of [auth] section
type = htpasswd
htpasswd_filename = /etc/radicale/users
# encryption method used in the htpasswd file
htpasswd_encryption = bcrypt

Agregue algunos límites de seguridad

##### Add these lines under relevant portions of [server] section
max_connections = 20
# 1 Megabyte
max_content_length = 10000000
# 10 seconds
timeout = 10

##### Add these lines under relevant portions of [auth] section
# Average delay after failed login attempts in seconds
delay = 1

Edite archivos para permitir conexiones SSL/TLS desde otras máquinas

##### Add these lines under relevant portions of [server] section
hosts = 0.0.0.0:5232
##### By setting ssl = True, Radicale no longer responds to HTTP requests.
ssl = True
certificate = /etc/ssl/radicale.cert.pem
key = /etc/ssl/radicale.key.pem

Claves SSL/TLS

Cree un certificado SSL/TLS autofirmado para permitir la conexión HTTPS a su servicio Radical en el servidor

##### You can hit enter as an answer to all the questions to set the default except this one: 
##### "Common Name (eg, YOUR name) []:" where you will enter your domain name or dns record 
##### used for your development server, or in case of wildcard certificates, 
##### use an astrisk, like this: *.mycompany.com 
##### By using a self-signed certificate, your browser should warn you of this fact.
##### Confirm exception as you wish, but this exception is necessary to visit page.
ServerUSER@Server:~$ openssl req -nodes -newkey rsa:2048 -keyout /etc/ssl/radicale.key.pem -out /etc/ssl/radicale.cert.pem -x509 -days 365

Common Name (eg, YOUR name) []: developmentserver12345

Servicio Radical

Configure el servicio en el servidor para permitir que Radicale se ejecute en segundo plano todo el tiempo

##### Create "radicale" user and group for Radicale service
ServerUSER@Server:~$ sudo useradd --system --home-dir / --shell /sbin/nologin radicale
##### Make storage folder writable by user "radicale"
ServerUSER@Server:~$ sudo mkdir -p /var/lib/radicale/collections
ServerUSER@Server:~$ sudo chown -R radicale:radicale /var/lib/radicale/collections
##### Make storage folder non-readable by others
ServerUSER@Server:~$ sudo chmod -R o= /var/lib/radicale/collections

Crea el archivo /etc/systemd/system/radicale.service

ServerUSER@Server:~$ sudo nano /etc/systemd/system/radicale.service

Corte, pegue y guarde lo siguiente en la nanopantalla en blanco de /etc/systemd/system/radicale.service

[Unit]
Description=A simple CalDAV (calendar) and CardDAV (contact) server
After=network.target
Requires=network.target

[Service]
ExecStart=/usr/bin/env python3 -m radicale
Restart=on-failure
User=radicale
# Deny other users access to the calendar data
UMask=0027
# Optional security settings
PrivateTmp=true
ProtectSystem=strict
ProtectHome=true
PrivateDevices=true
ProtectKernelTunables=true
ProtectKernelModules=true
ProtectControlGroups=true
NoNewPrivileges=true
ReadWritePaths=/var/lib/radicale/collections

[Install]
WantedBy=multi-user.target

Inicie el servicio manualmente (el servicio se iniciará automáticamente en caso de falla y/o reinicio del servidor)

# Enable the service
ServerUSER@Server:~$ sudo systemctl enable radicale
# Start the service
ServerUSER@Server:~$ sudo systemctl start radicale
# Check the status of the service
ServerUSER@Server:~$ sudo systemctl status radicale
# View all log messages
ServerUSER@Server:~$ sudo journalctl --unit radicale.service

Se conecta a Thunderbird

Crear nuevo calendario en Thunderbird (servidor de direcciones IP públicas)

  • Abrir Thunderbird
    • Haga clic en "Eventos y tareas > Calendario"
    • Haga clic en "Archivo > Nuevo > Calendario" [o haga clic derecho en el área "Panel de calendario > Lista de calendarios" y seleccione "Nuevo calendario"]
    • Seleccione "En la red" en el cuadro de diálogo y haga clic en "Siguiente".
    • Seleccione un formato y ubicación y haga clic en "Siguiente"
    • Ingrese un nombre, color y cuenta de correo electrónico Thunderbird y haga clic en "Siguiente".
      • Nombre: TB al servidor Real Radicale Calendar (TSRRC)
      • Color: [color que le gustaría indicar un evento en TSRRC]
      • Correo electrónico: [predeterminado]
    • Haga clic en "Finalizar"

Se conecta a Android

Crear nuevo calendario en Android (servidor de direcciones IP públicas)

  • Instalar DAVdroid
  • Calendario abierto
  • Intente actualizar manualmente su nuevo calendario varias veces, verifique los registros de Radicale para solucionar el problema

Respuesta2

información relacionada