config 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269
  1. # -*- mode: conf -*-
  2. # vim:ft=cfg
  3. # Config file for Radicale - A simple calendar server
  4. #
  5. # Place it into /etc/radicale/config (global)
  6. # or ~/.config/radicale/config (user)
  7. #
  8. # The current values are the default ones
  9. [server]
  10. # CalDAV server hostnames separated by a comma
  11. # IPv4 syntax: address:port
  12. # IPv6 syntax: [address]:port
  13. # Hostname syntax (using "getaddrinfo" to resolve to IPv4/IPv6 adress(es)): hostname:port
  14. # For example: 0.0.0.0:9999, [::]:9999, localhost:9999
  15. #hosts = localhost:5232
  16. # Max parallel connections
  17. #max_connections = 8
  18. # Max size of request body (bytes)
  19. #max_content_length = 100000000
  20. # Socket timeout (seconds)
  21. #timeout = 30
  22. # SSL flag, enable HTTPS protocol
  23. #ssl = False
  24. # SSL certificate path
  25. #certificate = /etc/ssl/radicale.cert.pem
  26. # SSL private key
  27. #key = /etc/ssl/radicale.key.pem
  28. # CA certificate for validating clients. This can be used to secure
  29. # TCP traffic between Radicale and a reverse proxy
  30. #certificate_authority =
  31. # SSL protocol, secure configuration: ALL -SSLv3 -TLSv1 -TLSv1.1
  32. #protocol = (default)
  33. # SSL ciphersuite, secure configuration: DHE:ECDHE:-NULL:-SHA (see also "man openssl-ciphers")
  34. #ciphersuite = (default)
  35. [encoding]
  36. # Encoding for responding requests
  37. #request = utf-8
  38. # Encoding for storing local collections
  39. #stock = utf-8
  40. [auth]
  41. # Authentication method
  42. # Value: none | htpasswd | remote_user | http_x_remote_user | ldap | denyall
  43. #type = none
  44. # Cache logins for until expiration time
  45. #cache_logins = false
  46. # Expiration time for caching successful logins in seconds
  47. #cache_successful_logins_expiry = 15
  48. ## Expiration time of caching failed logins in seconds
  49. #cache_failed_logins_expiry = 90
  50. # URI to the LDAP server
  51. #ldap_uri = ldap://localhost
  52. # The base DN where the user accounts have to be searched
  53. #ldap_base = ##BASE_DN##
  54. # The reader DN of the LDAP server
  55. #ldap_reader_dn = CN=ldapreader,CN=Users,##BASE_DN##
  56. # Password of the reader DN
  57. #ldap_secret = ldapreader-secret
  58. # Path of the file containing password of the reader DN
  59. #ldap_secret_file = /run/secrets/ldap_password
  60. # If the ldap groups of the user need to be loaded
  61. #ldap_load_groups = True
  62. # The filter to find the DN of the user. This filter must contain a python-style placeholder for the login
  63. #ldap_filter = (&(objectClass=person)(uid={0}))
  64. # Use ssl on the ldap connection
  65. #ldap_use_ssl = False
  66. # The certificate verification mode. NONE, OPTIONAL, default is REQUIRED
  67. #ldap_ssl_verify_mode = REQUIRED
  68. # The path to the CA file in pem format which is used to certificate the server certificate
  69. #ldap_ssl_ca_file =
  70. # Htpasswd filename
  71. #htpasswd_filename = /etc/radicale/users
  72. # Htpasswd encryption method
  73. # Value: plain | bcrypt | md5 | sha256 | sha512 | autodetect
  74. # bcrypt requires the installation of 'bcrypt' module.
  75. #htpasswd_encryption = autodetect
  76. # Enable caching of htpasswd file based on size and mtime_ns
  77. #htpasswd_cache = False
  78. # Incorrect authentication delay (seconds)
  79. #delay = 1
  80. # Message displayed in the client when a password is needed
  81. #realm = Radicale - Password Required
  82. # Convert username to lowercase, must be true for case-insensitive auth providers
  83. #lc_username = False
  84. # Strip domain name from username
  85. #strip_domain = False
  86. [rights]
  87. # Rights backend
  88. # Value: authenticated | owner_only | owner_write | from_file
  89. #type = owner_only
  90. # File for rights management from_file
  91. #file = /etc/radicale/rights
  92. # Permit delete of a collection (global)
  93. #permit_delete_collection = True
  94. # Permit overwrite of a collection (global)
  95. #permit_overwrite_collection = True
  96. [storage]
  97. # Storage backend
  98. # Value: multifilesystem | multifilesystem_nolock
  99. #type = multifilesystem
  100. # Folder for storing local collections, created if not present
  101. #filesystem_folder = /var/lib/radicale/collections
  102. # Folder for storing cache of local collections, created if not present
  103. # Note: only used in case of use_cache_subfolder_* options are active
  104. # Note: can be used on multi-instance setup to cache files on local node (see below)
  105. #filesystem_cache_folder = (filesystem_folder)
  106. # Use subfolder 'collection-cache' for 'item' cache file structure instead of inside collection folder
  107. # Note: can be used on multi-instance setup to cache 'item' on local node
  108. #use_cache_subfolder_for_item = False
  109. # Use subfolder 'collection-cache' for 'history' cache file structure instead of inside collection folder
  110. # Note: use only on single-instance setup, will break consistency with client in multi-instance setup
  111. #use_cache_subfolder_for_history = False
  112. # Use subfolder 'collection-cache' for 'sync-token' cache file structure instead of inside collection folder
  113. # Note: use only on single-instance setup, will break consistency with client in multi-instance setup
  114. #use_cache_subfolder_for_synctoken = False
  115. # Use last modifiction time (nanoseconds) and size (bytes) for 'item' cache instead of SHA256 (improves speed)
  116. # Note: check used filesystem mtime precision before enabling
  117. # Note: conversion is done on access, bulk conversion can be done offline using storage verification option: radicale --verify-storage
  118. #use_mtime_and_size_for_item_cache = False
  119. # Use configured umask for folder creation (not applicable for OS Windows)
  120. # Useful value: 0077 | 0027 | 0007 | 0022
  121. #folder_umask = (system default, usual 0022)
  122. # Delete sync token that are older (seconds)
  123. #max_sync_token_age = 2592000
  124. # Skip broken item instead of triggering an exception
  125. #skip_broken_item = True
  126. # Command that is run after changes to storage, default is emtpy
  127. # Supported placeholders:
  128. # %(user): logged-in user
  129. # Command will be executed with base directory defined in filesystem_folder
  130. # For "git" check DOCUMENTATION.md for bootstrap instructions
  131. # Example: git add -A && (git diff --cached --quiet || git commit -m "Changes by \"%(user)s\"")
  132. #hook =
  133. # Create predefined user collections
  134. #
  135. # json format:
  136. #
  137. # {
  138. # "def-addressbook": {
  139. # "D:displayname": "Personal Address Book",
  140. # "tag": "VADDRESSBOOK"
  141. # },
  142. # "def-calendar": {
  143. # "C:supported-calendar-component-set": "VEVENT,VJOURNAL,VTODO",
  144. # "D:displayname": "Personal Calendar",
  145. # "tag": "VCALENDAR"
  146. # }
  147. # }
  148. #
  149. #predefined_collections =
  150. [web]
  151. # Web interface backend
  152. # Value: none | internal
  153. #type = internal
  154. [logging]
  155. # Threshold for the logger
  156. # Value: debug | info | warning | error | critical
  157. #level = info
  158. # Don't include passwords in logs
  159. #mask_passwords = True
  160. # Log bad PUT request content
  161. #bad_put_request_content = False
  162. # Log backtrace on level=debug
  163. #backtrace_on_debug = False
  164. # Log request header on level=debug
  165. #request_header_on_debug = False
  166. # Log request content on level=debug
  167. #request_content_on_debug = False
  168. # Log response content on level=debug
  169. #response_content_on_debug = False
  170. # Log rights rule which doesn't match on level=debug
  171. #rights_rule_doesnt_match_on_debug = False
  172. # Log storage cache actions on level=debug
  173. #storage_cache_actions_on_debug = False
  174. [headers]
  175. # Additional HTTP headers
  176. #Access-Control-Allow-Origin = *
  177. [hook]
  178. # Hook types
  179. # Value: none | rabbitmq
  180. #type = none
  181. #rabbitmq_endpoint =
  182. #rabbitmq_topic =
  183. #rabbitmq_queue_type = classic
  184. [reporting]
  185. # When returning a free-busy report, limit the number of returned
  186. # occurences per event to prevent DOS attacks.
  187. #max_freebusy_occurrence = 10000