Not all information is included in the docs yet, but we are working on it!
All main configurations take place in the .env
file. We provide an .env.example
file.
Here you can find all keys you have to configure for running MUM.
APP_NAME
The name of the application.
Default: MUM
APP_ENV
The environment of the application.
Default: production
APP_KEY
The encryption key generated by the application. Generally speaking, you should not change this value yourself.
APP_DEBUG
Whether the application is in debug mode. If debug mode is enabled, exception stacktraces will be shown to the user. This is dangerous and should not be enabled on production machines.
Default: false
APP_URL
The URL where MUM's web interface is available. Example: https://mum.example.com
TIMEZONE
Which timezone to use, have a look at the PHP manual on supported timezones for all options.
Default: Europe/Berlin
LOG_CHANNEL
This option defines the default log channel that gets used when writing messages to the logs.
The name specified in this option should match one of the channels defined in the channels
configuration array
that can be found in config/logging.php
.
Default: stack
Available Drivers: single
, daily
, slack
, syslog
, errorlog
, monolog
, custom
, stack
DB_CONNECTION
Here you can specify which database driver you want to use. Since Postfix and Dovecot also need access
to MUM's database, the option mysql
should be selected.
DB_HOST
The host address where the database service is running.
Default: 127.0.0.1
DB_PORT
The port where the database service is running.
Default: 3306
DB_DATABASE
Which database should be used by MUM. It should not be used by any other application.
DB_USERNAME
Which username MUM should use to connect to the database. This user needs to have all necessary privileges for the database.
DB_PASSWORD
The password to authenticate with the provided username against the database host.
HASHING_DRIVER
Here you may specify the hashing driver MUM should use. We strongly recommend that you use either Bcrypt or Argon, but if your environment does not support these algorithms, you may also choose SHA512 or SHA256.
Supported: sha256
, sha512
, bcrypt
, argon
CACHE_DRIVER
This option controls the default cache connection that gets used while using this caching library. This connection is used when another is not explicitly specified when executing a given caching function.
Default: file
Supported: apc
, array
, database
, file
, memcached
, redis
QUEUE_DRIVER
Laravel's queue API supports an assortment of back-ends via a single API, giving you convenient access to each back-end using the same syntax for every one. Here you may define a default connection.
Default: sync
Drivers: sync
, database
, beanstalkd
, sqs
, redis
, null
SESSION_DRIVER
This option controls the default session "driver" that will be used on requests. By default, we will use the lightweight native driver but you may specify any of the other wonderful drivers provided here.
Default: file
Supported: file
, cookie
, database
, apc
, memcached
, redis
, array
Amazon Simple Queue Service is a distributed message queuing service that may be used as a queue or session driver in MUM. If you want to use it, you need to configure the following settings:
SQS_KEY
Your public key.
SQS_SECRET
Your secret key.
SQS_PREFIX
Something like https://sqs.us-east-1.amazonaws.com/your-account-id
.
SQS_QUEUE
Your queue name.
SQS_REGION
E.g. us-east-1
Redis is an open source, fast, and advanced key-value store that also provides a richer set of commands than a typical key-value systems such as APC or Memcached. Laravel makes it easy to dig right in.
REDIS_HOST
The redis host that should be used.
Default: 127.0.0.1
REDIS_PASSWORD
The password that is used to authenticate.
Default: null
REDIS_PORT
The port where the redis service is running.
Default: 6379
REDIS_DATABASE
The database that should be used.
Default: 0
SESSION_LIFETIME
Here you may specify the number of minutes that you wish the session to be allowed to remain idle before it expires.
Default: 120
SESSION_EXPIRE_ON_CLOSE
If you want the session to immediately expire on the browser closing, set that option.
Default: false
MAIL_DRIVER
The mail driver that should be used for MUM to send emails (like notifications).
Default: smtp
Supported: smtp
, sendmail
MAIL_HOST
The SMTP host that should be used to send outgoing emails.
Default: 127.0.0.1
MAIL_PORT
The SMTP host's port where outgoing email should be submitted.
Default: 587
(Submission)
MAIL_USERNAME
The username that MUM will use to authenticate when sending emails. If you want MUM to generate credentials for itself when installing, this value will be automatically set.
MAIL_PASSWORD
The password that MUM will use to authenticate when sending emails. If you want MUM to generate credentials for itself when installing, this value will be automatically set.
MAIL_ENCRYPTION
Here you may specify the encryption protocol that should be used when the application send e-mail messages. A sensible default using the transport layer security protocol should provide great security.
Default: tls
MAIL_FROM_ADDRESS
The global "From" address that MUM will use when sending emails.
MAIL_FROM_NAME
The global "From" name that MUM will use when sending emails.
Default: APP_NAME
PASSWORD_MIN_LENGTH
The minimum password length that will be required by MUM.
Default: 8
VALIDATE_LOCAL_PART
Whether the local part of email addresses should be validated. If you want to use unconventional (non-RFC-compliant) local parts, you may disable their validation here.
Default: true
ALLOW_UNICODE_LOCAL_PART
Whether to allow local parts to include unicode characters. You may disable that possibility, if your environment does not support unicode characters in email addresses.
Default: true
VALIDATE_DOMAIN
Whether to validate domains. If you want to use unconventional domain names, you may disable their validation here.
Default: true
VALIDATE_DOMAIN_AS_HOSTNAME
Whether domain validation should allow values that do not have a top level domain. This may be helpful if you want to use MUM in a local environment.
Default: false
DOMAINS_QUOTA
The standard quota value for new domains. Zero means unlimited.
Default: 0
DOMAINS_MAX_QUOTA
The standard maximum mailbox quota value for new domains.
Default: null
MAILBOXES_ROOT_DIRECTORY
The base directory where Dovecot saves all emails. This value is needed so MUM can interpret the size report by the mailbox size crawler for said directory.
Default: /srv/mail/mailboxes
MAILBOXES_HOMEDIR
Here you can set the default home directory path for new mailboxes.
Have a look at the Dovecot documentation on home directories for details.
You may use the following placeholders (similar to Dovecot):
%d
(Domain, e.g. "example.com")%n
(Username / Local part, e.g. "jon.doe")%u
(User, eg. "jon.doe@example.com")Default: /srv/mail/mailboxes/%d/%n
MAILBOXES_MAILDIR
Here you can set the default mail directory path for new mailboxes.
Have a look at the Dovecot documentation on home vs. mail directories for details.
You may use the following placeholders (similar to Dovecot):
%d
(Domain, e.g. "example.com")%n
(Username / Local part, e.g. "jon.doe")%u
(User, eg. "jon.doe@example.com")Default: maildir:/srv/mail/mailboxes/%d/%n:LAYOUT=fs
ALIASES_DEACTIVATE_AT_DEFAULT_DAYS
The default value of days for automatically deactivating aliases.
Default: 0
ALIASES_DEACTIVATE_AT_DEFAULT_HOURS
The default value of hours for automatically deactivating aliases.
Default: 0
ALIASES_DEACTIVATE_AT_DEFAULT_MINUTES
The default value of minutes for automatically deactivating aliases.
Default: 10
SYSTEM_HEALTH_CHECK_SERVICES
Here you can specify whether system services should be monitored using systemctl
.
Be aware that your system needs to use systemd
for this to work.
Default: false
SYSTEM_HEALTH_CHECK_FREQUENCY
Here you can specify the check frequency for service health checks.
Default: 5min
Supported: 1min
, 5min
, 10min
, 15min
, 30min
SYSTEM_HEALTH_MAX_ENTRIES_INCIDENT_HISTORY
Here you can specify how long to keep track of the incident history, meaning all health checks that
did not return a running
state.
Default: 100
With integrations you can include external applications in MUM's workflow. If another program needs to know when a new mailbox is created, you can utilize an integration to let it know.
ENABLE_INTEGRATIONS
Here you can specify if integrations should be enabled generally. If they are disabled, MUM's web interface won't show any pages related to integrations.
Default: false
Here you can specify up to 10 shell commands that you want to allow to be executed
with an integration configurable in MUM's web interface.
You may configure them with INTEGRATIONS_SHELL_COMMAND_01
— INTEGRATIONS_SHELL_COMMAND_10
.
These commands will be executed by your web server user. You may want to use full paths.
INTEGRATIONS_ENABLE_SHELL_COMMANDS
Here you can specify whether this integration type should be enabled.
Default: false
INTEGRATIONS_SHELL_COMMANDS_ALLOW_PARAMETERS
Here you can specify if administrators can configure shell command parameters in MUM's web interface.
Default: false
INTEGRATIONS_SHELL_COMMANDS_FAILED_RETRY_DELAY
Here you can specify the retry delay after a failed shell command integration in seconds.
Default: 10
INTEGRATIONS_ENABLE_WEB_HOOKS
Here you can specify whether this integration type should be enabled.
Default: false
INTEGRATIONS_WEB_HOOKS_FAILED_RETRY_DELAY
Here you can specify the retry delay after a failed webhook integration in seconds.
Default: 60
Here you can set whether old size measurements should be deleted automatically. You may also specify after what time a record should be deleted. The provided values will be subtracted from the current timestamp. For example, you could automatically delete all records older than 5 months, 2 weeks and 15 days.
SIZE_MEASUREMENTS_DELETE_OLD
Default: true
SIZE_MEASUREMENTS_DELETE_AFTER_MONTHS
Default: 12
SIZE_MEASUREMENTS_DELETE_AFTER_WEEKS
Default: 0
SIZE_MEASUREMENTS_DELETE_AFTER_DAYS
Default: 0
Here you can set the default settings for SMTP, IMAP and POP3 for clients that will be displayed for users.
SHOW_EMAIL_SETTINGS
If this is enabled, the dashboard will show the default settings for email clients.
Default true
SMTP_HOSTNAME
The hostname for SMTP connections. Example: smtp.example.com
SMTP_PORT
The port for SMTP connections. Example: 587
(Submission)
SMTP_SSL
The encryption mode for SMTP connections. Example: STARTTLS
IMAP_HOSTNAME
The hostname for IMAP connections. Example: imap.example.com
IMAP_PORT
The port for IMAP connections. Example: 993
IMAP_SSL
The encryption mode for IMAP connections. Example: SSL/TLS
POP3_HOSTNAME
The hostname for POP3 connections. Example: pop3.example.com
POP3_PORT
The port for POP3 connections. Example: 995
POP3_SSL
The encryption mode for POP3 connections. Example: SSL/TLS