Additional Fine-Tuning via Environment Variables

Axigen Documentation

As an additional layer of flexibility on top of what’s already available as a standard product configuration via CLI and / or WebAdmin, Axigen allows you to further fine tune your deployment through a number of dedicated environment variables.

This article details these environment variables and their effects.

Axigen Specific Environment Variables

Axigen’s environment variables have to be specified in the service configuration file (e.g. /etc/sysconfig/axigen  for RPM based systems or /etc/default/axigen  for DEB ones).

For faster sys admin recognition, we recommend you to add them at the end of the file. Please note that a service restart is required after any change into the service configuration file, which is why we recommend you to perform these changes during a scheduled maintenance window.

AXI_WM_2FA_TOKEN_DOWNTIME_AMOUNT

Available starting with Axigen 10.6

Setting AXI_WM_2FA_TOKEN_DOWNTIME_AMOUNT to an integer value between 0 and 3600 (the value means seconds) will override the implicit value of the downtime amount (currently 10 seconds) when requesting a 2FA token via MailboxAPI

AXI_WM_SEND_MAIL_DELAY

Available starting with Axigen 10.5.2

Setting AXI_WM_SEND_MAIL_DELAY to an integer value between 0 and 30 (the value means seconds) will override the implicit value of the delay (currently 15 seconds) when sending a message via MailboxAPI. The delay facilitates the feature of UndoSend and overriding the value will impact it.

AXI_ICONV_ENABLE

Available starting with Axigen 10.5.18

On *nix systems, setting AXI_ICONV_ENABLE to any value (for example to 1), will make Axigen fallback to libiconv when converting text between character sets, in case libicu conversion fails

AXI_DISABLE_DNS_ADDITIONAL

Available starting with Axigen X4 (10.4).

When AXI_DISABLE_DNS_ADDITIONAL is set to a particular integer value (e.g. AXI_DISABLE_DNS_ADDITIONAL=1), the DNR module will ignore any data received into ADDITIONAL SECTION (if any).

AXI_SIDX_LOGGING

Available starting with Axigen 10.3.3.29.

When AXI_SIDX_LOGGING is set to any value (for example to 1), additional logging under the JOBLOG will be collected.

AXI_CAPTCHA_LENGTH

Available starting with Axigen 10.3.3.26.

When AXI_CAPTCHA_LENGTH is set to a particular integer value (e.g. AXI_CAPTCHA_LENGTH=4), the captcha string length will be set to that number of characters (the default length is 8).

AXI_AUTOGEN_FROM_ACCOUNT

Available starting with Axigen 10.3.3.24.

When AXI_AUTOGEN_FROM_ACCOUNT is set to any value (for example to 1), the auto generated messages (like the Out-of-Office auto-responder, Identity Confirmationor the ones specific to Credentials Recovery) will use the account specific address (instead of using the postmaster account) as the MAIL FROM envelope address.

AXI_DAV_IMPORTER

Available starting with Axigen 10.3.3.21.

When AXI_DAV_IMPORTER is set to any value (for example to 1), the scheduling sequence will be disabled for newly added events via the CalDAV protocol (like the situation when someone is importing events from one account to another one).

AXI_PROMETHEUS_USER and AXI_PROMETHEUS_PASS

Available starting with Axigen 10.3.3.2.

When these variables are set, the basic HTTP authentication required for accessing the Prometheus metrics is bypassed internally.

AXI_LOG_TIMESTAMP_PRECISION

Available starting with Axigen X3 Update 2 (10.3.2).

When this variable is set to any value, the non-syslog log timestamps will have millisecond precision.

New behavior starting with Axigen X4 (10.4.0).

When this variable is set to any value, the non-syslog log timestamps will have microsecond precision.

AXI_ACTIVESYNC_V14_DISABLE

Available starting with Axigen 10.3.0.70.

Setting AXI_ACTIVESYNC_V14_DISABLE to any value (for example to 1) will downgrade the ActiveSync protocol used by Axigen to version 12.1.

AXI_TNEF_SRVLVL_DISABLE

Available starting with Axigen 10.2.2.67.

Setting AXI_TNEF_SRVLVL_DISABLE to 1 will remove the TNEF Decoder filter from the list of server active filters. This will allow the filter to be disabled at server level, but enabled granularly (if needed) at domain level.

GNU Libc Specific Environment Variables

MALLOC_ARENA_MAX

Specifies the maximum number of arenas that can be created. An arena represents a pool of memory that can be used by malloc (and similar) calls to service allocation requests. Arenas are thread safe and therefore may have multiple concurrent memory requests. There is a trade-off between the number of threads and the number of arenas – the more arenas defined, the lower the per-thread contention, but the higher the memory usage.

Typical usage example:

cURL Specific Environment Variables

ALL_PROXY

Available starting with:

  • Axigen X2 Update 2 (10.2.2) – for the built-in Let’s Encrypt client

  • Axigen 10.3.3.42 – for the WebAdmin updates checked and contact support.

In cases where external HTTP access is allowed only via a dedicated HTTP proxy, the built-in Let's Encrypt client and the WebAdmin updates checker and contact support components will work only if the ALL_PROXY environment variable is set accordingly.

Usage example:

There are some HTTP calls triggered directly from the browser, so in order to have 100% WebAdmin support, the browser needs to have access to https://www.axigen.com (directly or via a proxy).

OpenSSL Specific Environment Variables

If an application wishes to alter the default configuration, using the SSL_CONF interface should be considered instead of manually parsing options.

The SSL_CONF interface is a file based configuration system described here: https://www.openssl.org/docs/manmaster/man5/config.html

OPENSSL_CONF

Available starting with Axigen X3 (10.3) – using OpenSSL 1.1.1.

For example, you can use the configuration system to start Axigen with an OpenSSL config file that controls the elliptic curves.