KOPANO-DAGENT.CFG(5)
π NAME π
okay so bestie, this is kopano-dagent.cfg(5) from the Kopano Core user reference β aka kopano-dagent.cfg, the Kopano dagent configuration file. periodt. π
β¨ SYNOPSIS β¨
dagent.cfg
π¦ DESCRIPTION π¦
The dagent.cfg is literally the configuration file for the Kopano Dagent. It contains instructions for the software to set up the logging system and LMTP settings. no cap. πΈ
π FILE FORMAT π
The file consists of one big section, but parameters can be grouped by functionality.
The parameters are written in the form:
name = value
The file is line-based. Each newline-terminated line represents either a comment, nothing, a parameter or a directive. A line beginning with # is considered a comment, and will be ignored by Kopano. Parameter names are case sensitive. Lines beginning with ! are directives.
Directives are written in the form:
!directive [argument(s)]
The following directives exist:
includeβ Include and process argument
Example: !include common.cfg
π EXPLANATION OF EACH PARAMETER π
server_socket
Unix socket to find the connection to the Kopano server.
Default: file:///var/run/kopano/server.sock
run_as_user
After correctly starting, the dagent process will become this user, dropping root privileges. Note that the log file needs to be writeable by this user, and the directory too to create new logfiles after logrotation. This can also be achieved by setting the correct group and permissions.
Default value is empty, not changing the user after starting.
run_as_group
After correctly starting, the dagent process will become this group, dropping root privileges.
Default value is empty, not changing the group after starting.
pid_file
Write the process ID number to this file. This is used by the init.d script to correctly stop/restart the service.
Default: /var/run/kopano/dagent.pid
coredump_enabled
When a crash occurs or an assertion fails, a coredump file can be generated by the system for use with a crash report. For details, see the kopano-coredump(5) manpage.
Default: systemdefault
process_model
You can change the process model between fork and thread. The forked model uses more resources.
Default: fork
sslkey_file
Use this file as key to logon to the server. This is only used when server_socket is set to an HTTPS transport. See the kopano-server(8) manual page on how to setup SSL keys.
Default: value not set.
sslkey_pass
The password of the SSL key file that is set in sslkey_file.
Default: value not set.
lmtp_listen
A space-separated list of address:port specifiers for where the server should listen for connections. IPv6 addresses need to be enclosed in brackets (as in [2001:db8::1]:236). The asterisk is the multi-protocol address ("*:2003"). Local sockets are supported with "unix:/path". Hostnames are not allowed (since the mapped address can resolve to multiple addresses, any of which can change without notice).
Default: *:2003
To set up a secure local socket that is only accessible by Postfix, a directory like this may be created:
mkdir -p /var/spool/kopano
chown kopano:kopano /var/spool/kopano
chmod go= /var/spool/kopano
setfacl -m u:postfix:rwx /var/spool/kopano
In dagent.cfg, the listen line would be:
lmtp_listen = unix:/var/spool/kopano/dagent.sock
And in postfix's main.cf, a transport line might look like:
virtual_transport = lmtp:unix:/var/spool/kopano/dagent.sock
lmtp_max_threads
The maximum number of LMTP threads that can be running simultaneously. This is also limited by your SMTP server. (20 is the postfix default concurrency limit)
Default: 20
spam_header_name
To detect if the receiving mail is spam, the DAgent can check this header for a value that is in there. This name is case insensitive. If this option is empty, the detection method will be turned off. You can also force a delivery to the Junk Mail folder using the -j commandline option.
Default: X-Spam-Status
spam_header_value
When this value is found in the spam_header_name, the mail will be considered spam, and will be delivered in the user's Junk Mail folder. The value can be anywhere in the header, not just the start. The value is case insensitive.
Default: Yes,
log_method
The method which should be used for logging. Valid values are:
syslogβ Use the syslog service. Messages will be sent using the"mail"facility tag. See alsojournald.conf(5)orsyslog.conf(5).fileβ Log to a file. The filename will be specified inlog_file.autoβ Autoselect mode: Iflog_fileis set, that will be used. Else, syslog will be used if it looks like it is available. Else, stderr.
Default: auto
log_file
When logging to a file, specify the filename in this parameter. Use - (minus sign) for stderr output.
Default: -
log_timestamp
Specify whether to prefix each log line with a timestamp in 'file' logging mode.
Default: yes
log_buffer_size
Buffer logging in what sized blocks. The special value 0 selects line buffering.
Default: 0
log_level
The level of output for logging in the range from 0 to 6. "0" means no logging, "1" for critical messages only, "2" for error or worse, "3" for warning or worse, "4" for notice or worse, "5" for info or worse, "6" debug.
Default: 3
log_raw_message
A space-separated list of usernames for whom the incoming Internet e-mail (RFC 5322) messages should be dumped to files in the directory specified by log_raw_message_path. Alternatively, instead of such a list, the following magic keywords are recognized:
yes, allβ Dump incoming messages irrespective of recipient.noβ Do not dump any incoming messages.errorβ Only dump when automatic processing programs (e.g.kopano-mr-process(8)orkopano-mr-accept(8)) have returned a non-success exit code.
Default: error
log_raw_message_path
Path to save the raw message.
Default: /var/lib/kopano
archive_on_delivery
Archive incoming message on delivery. If an archive is attached to the target mailbox, the message will immediately be archived upon delivery.
Rules will be processed before the message is archived, so when a rule moves the message to an alternate location, the archived message will be placed in the correct location in the archive. When the incoming message is copied by a rule, only the original message is archived.
Default: no
mr_autoaccepter
Kopano-dagent can auto-accept meeting requests if the mr-accept option is enabled for a user. When this option is enabled and a meeting request or meeting cancellation is received, this script is started with the following parameters: /usr/sbin/kopano-mr-accept <username> </path/to/dagent.cfg> [<ENTRYID>].
If the script is successful (exitcode is 0), then no other actions are performed (eg rules or vacation messages) and the message is not delivered in the inbox. If the script exits with a non-zero exit code, rules and vacation messages are run as usual, and the message is delivered in the inbox (or other folder, depending on rules or options).
Default: /usr/sbin/kopano-mr-accept
mr_autoprocessor
Kopano-dagent can auto-process meeting requests. When this is enabled and a meeting request, response or meeting cancellation is received, this script is started with the following parameters: /usr/bin/kopano-mr-process <username> </path/to/dagent.cfg> [<ENTRYID>].
Default: /usr/bin/kopano-mr-process
autoresponder
Kopano-dagent invokes the autoresponder to send out-of-office replies. You can configure a custom autoresponder using this configuration option.
Default: /usr/sbin/kopano-autorespond
plugin_enabled
Enable or disable the dagent plugin framework.
Default: yes
plugin_manager_path
The path to the dagent plugin manager.
Default: /usr/share/kopano-dagent/python
plugin_path
Path to the activated dagent plugins. This folder contains symlinks to the kopano plugins and custom scripts. The plugins are installed in /usr/share/kopano-dagent/python/plugins. To activate a plugin create a symbolic link in the plugin_path directory.
Example:
ln -s /usr/share/kopano-dagent/python/plugins/BMP2PNG.py /var/lib/kopano/dagent/plugins/BMP2PNG.py
Default: /var/lib/kopano/dagent/plugins
default_charset
Some emails do not contain any charset information or specify US-ASCII even though it is not. In both cases, dagent will assume the following charset is used. The given charset must be a superset of US-ASCII (many charsets are), and it must not be a charset where ASCII bytes get a new meaning due to state shifting, ruling out ISO-2022-JP.
Default: us-ascii
set_rule_headers
Enable the addition of X-Kopano-Rule-Action headers on messages that have been forwarded or replied by a rule.
Default: yes
no_double_forward
Enable this option to prevent rules to cause a loop. An e-mail can only be forwarded once. When this option is enabled, the set_rule_headers option must also be enabled.
Default: yes
forward_whitelist_domains
A list of space-separated domains to which forwarding via a rule is allowed. The "*" matches zero or more characters (including dots, i.e. subdomains at multiple levels). Do not use "*kopano.com" to permit both "@kopano.com" and "@sub.kopano.com", as that would also allow "@notkopano.com". There is an implementation-specific limitation of 1024 characters.
Default: *
forward_whitelist_domains_file
This directive overrides forward_whitelist_domains and sources domains from the specified file instead.
Default: (empty)
forward_whitelist_domain_subject
A custom-defined reply subject to the user with a rule forwarding to a domain not in forward_whitelist_domains.
Default: REJECT: %subject not forwarded (administratively blocked)
forward_whitelist_domain_message
A custom-defined reply message to the user with a rule forwarding to a domain not in forward_whitelist_domains. There is no way to specify newlines.
Default: The Kopano mail system has rejected your request to forward your e-mail with subject %subject (via mail filters) to %sender: the operation is not permitted.\n\nRemove the rule or contact your administrator about the forward_whitelist_domains setting.
forward_whitelist_domain_message_file
This directive overrides forward_whitelist_domain_message and sources the message from the specified file instead.
Default: (empty)
πΈ unknown_charset_substitution πΈ
Bestie, listen. This one is a list β space-separated pairs β where each pair is a charset name and a replacement, also space-separated. It kicks in when dagent runs into mail bodies with character set encodings it straight up does not recognize.
Heads up though: this is a lossy operation, and its use is not recommended. Normally dagent would just store those weird mail bodies as attachments so the content stays intact, and let the user figure out the decoding themselves β they can try any number of encodings, not just one. So likeβ¦ this setting throws that flexibility away. π
π indexed_headers π
Okay so by default, only the well-known headers of an e-mail that Kopano actually makes use of (or that Outlook makes use of) β think From, To, and friends β get turned into MAPI properties. Everything else? Generally just yeeted during the transformation of the e-mail into a MAPI message. π
But if your org needs certain fields to persist inside the MAPI message, this directive is your girl: list the header fields you want to keep.
Default: (empty)
β¨ statsclient_url β¨
A HTTP URL or a filesystem-local socket specification for a kopano-statsd compatible web service. That service ingests service statistics β memory usage, mail processing counters, that kind of thing.
Example: https://my.local.org/collector.php
Default: unix:/var/run/kopano/statsd.sock
β° statsclient_interval β°
How often the statsd service gets contacted, in seconds.
When statsclient_url points at a kopano-statsd instance, this value should be 60 (for now, bestie, for now) β because its rrdtool archives are set to expect data at exactly this rate.
Default: 0 (submission service is deactivated)
π statsclient_ssl_verify π
Use this one to control SSL certificate validation.
Default: yes
π mail_conversion_detail π
So here's the tea. When Internet e-mail messages get converted into MAPI message objects, the presence of rich-text body alternatives makes those get chosen and stored as attachments β which means the plaintext and HTML copies are discarded. π
Since that choice is not always obvious to the end-user, turning this directive on will substitute an explanatory PR_BODY text if that happens.
Default: no
π RELOADING π
These options are reloadable β just send the kopano-dagent process a HUP signal:
log_levelarchive_on_deliverymr_autoaccepter
π FILES π
/etc/kopano/dagent.cfgβ the Kopano dagent configuration file. That's the one, bestie. π
βοΈ AUTHOR βοΈ
Written by Kopano. (Iconic. No notes. π«Ά)
π SEE ALSO π
And that's a wrap on the whole page, bestie β you made it to the end and honestly? Main character energy. π
This one's from Kopano 8, dated November 2016 β so if you're reading this in the future, hi, hope the daemon's behaving. πβ¨
π¦ where this page comes from
- ubuntu jammy: kopano-dagent 8.7.0-7.1ubuntu10 Β· AGPL-3.0-only
- ubuntu jammy: kopano-dagent 8.7.0-7.1ubuntu10.1 Β· AGPL-3.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms