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_NAMEThe name of the application.
Default: MUM
APP_ENVThe environment of the application.
Default: production
APP_KEYThe encryption key generated by the application. Generally speaking, you should not change this value yourself.
APP_DEBUGWhether 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_URLThe URL where MUM's web interface is available. Example: https://mum.example.com
TIMEZONEWhich timezone to use, have a look at the PHP manual on supported timezones for all options.
Default: Europe/Berlin
LOG_CHANNELThis 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_CONNECTIONHere 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_HOSTThe host address where the database service is running.
Default: 127.0.0.1
DB_PORTThe port where the database service is running.
Default: 3306
DB_DATABASEWhich database should be used by MUM. It should not be used by any other application.
DB_USERNAMEWhich username MUM should use to connect to the database. This user needs to have all necessary privileges for the database.
DB_PASSWORDThe password to authenticate with the provided username against the database host.
HASHING_DRIVERHere 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_DRIVERThis 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_DRIVERLaravel'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_DRIVERThis 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_KEYYour public key.
SQS_SECRETYour secret key.
SQS_PREFIXSomething like https://sqs.us-east-1.amazonaws.com/your-account-id.
SQS_QUEUEYour queue name.
SQS_REGIONE.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_HOSTThe redis host that should be used.
Default: 127.0.0.1
REDIS_PASSWORDThe password that is used to authenticate.
Default: null
REDIS_PORTThe port where the redis service is running.
Default: 6379
REDIS_DATABASEThe database that should be used.
Default: 0
SESSION_LIFETIMEHere 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_CLOSEIf you want the session to immediately expire on the browser closing, set that option.
Default: false
MAIL_DRIVERThe mail driver that should be used for MUM to send emails (like notifications).
Default: smtp
Supported: smtp, sendmail
MAIL_HOSTThe SMTP host that should be used to send outgoing emails.
Default: 127.0.0.1
MAIL_PORTThe SMTP host's port where outgoing email should be submitted.
Default: 587 (Submission)
MAIL_USERNAMEThe 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_PASSWORDThe 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_ENCRYPTIONHere 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_ADDRESSThe global "From" address that MUM will use when sending emails.
MAIL_FROM_NAMEThe global "From" name that MUM will use when sending emails.
Default: APP_NAME
PASSWORD_MIN_LENGTHThe minimum password length that will be required by MUM.
Default: 8
VALIDATE_LOCAL_PARTWhether 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_PARTWhether 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_DOMAINWhether to validate domains. If you want to use unconventional domain names, you may disable their validation here.
Default: true
VALIDATE_DOMAIN_AS_HOSTNAMEWhether 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_QUOTAThe standard quota value for new domains. Zero means unlimited.
Default: 0
DOMAINS_MAX_QUOTAThe standard maximum mailbox quota value for new domains.
Default: null
MAILBOXES_ROOT_DIRECTORYThe 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_HOMEDIRHere 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_MAILDIRHere 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_DAYSThe default value of days for automatically deactivating aliases.
Default: 0
ALIASES_DEACTIVATE_AT_DEFAULT_HOURSThe default value of hours for automatically deactivating aliases.
Default: 0
ALIASES_DEACTIVATE_AT_DEFAULT_MINUTESThe default value of minutes for automatically deactivating aliases.
Default: 10
SYSTEM_HEALTH_CHECK_SERVICESHere 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_FREQUENCYHere you can specify the check frequency for service health checks.
Default: 5min
Supported: 1min, 5min, 10min, 15min, 30min
SYSTEM_HEALTH_MAX_ENTRIES_INCIDENT_HISTORYHere 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_INTEGRATIONSHere 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_COMMANDSHere you can specify whether this integration type should be enabled.
Default: false
INTEGRATIONS_SHELL_COMMANDS_ALLOW_PARAMETERSHere you can specify if administrators can configure shell command parameters in MUM's web interface.
Default: false
INTEGRATIONS_SHELL_COMMANDS_FAILED_RETRY_DELAYHere you can specify the retry delay after a failed shell command integration in seconds.
Default: 10
INTEGRATIONS_ENABLE_WEB_HOOKSHere you can specify whether this integration type should be enabled.
Default: false
INTEGRATIONS_WEB_HOOKS_FAILED_RETRY_DELAYHere 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_OLDDefault: true
SIZE_MEASUREMENTS_DELETE_AFTER_MONTHSDefault: 12
SIZE_MEASUREMENTS_DELETE_AFTER_WEEKSDefault: 0
SIZE_MEASUREMENTS_DELETE_AFTER_DAYSDefault: 0
Here you can set the default settings for SMTP, IMAP and POP3 for clients that will be displayed for users.
SHOW_EMAIL_SETTINGSIf this is enabled, the dashboard will show the default settings for email clients.
Default true
SMTP_HOSTNAMEThe hostname for SMTP connections. Example: smtp.example.com
SMTP_PORTThe port for SMTP connections. Example: 587 (Submission)
SMTP_SSLThe encryption mode for SMTP connections. Example: STARTTLS
IMAP_HOSTNAMEThe hostname for IMAP connections. Example: imap.example.com
IMAP_PORTThe port for IMAP connections. Example: 993
IMAP_SSLThe encryption mode for IMAP connections. Example: SSL/TLS
POP3_HOSTNAMEThe hostname for POP3 connections. Example: pop3.example.com
POP3_PORTThe port for POP3 connections. Example: 995
POP3_SSLThe encryption mode for POP3 connections. Example: SSL/TLS