|
@@ -0,0 +1,195 @@
|
|
|
|
+<?php
|
|
|
|
+
|
|
|
|
+//////////////////////////////////////////////////////////////////////////
|
|
|
|
+// //
|
|
|
|
+// DO NOT EDIT THIS FILE! //
|
|
|
|
+// //
|
|
|
|
+// Instead, copy this config file to config.php and make your changes //
|
|
|
|
+// in the copied version. This is just a template! //
|
|
|
|
+// //
|
|
|
|
+//////////////////////////////////////////////////////////////////////////
|
|
|
|
+
|
|
|
|
+return array(
|
|
|
|
+
|
|
|
|
+ /******************************************************
|
|
|
|
+ * URL to your WebMUM installation.
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+ 'base_url' => 'http://localhost/webmum',
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ /******************************************************
|
|
|
|
+ * MySQL database connection settings
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+ 'mysql' => array(
|
|
|
|
+ 'host' => 'localhost',
|
|
|
|
+ 'user' => 'vmail',
|
|
|
|
+ 'password' => 'vmail',
|
|
|
|
+ 'database' => 'vmail',
|
|
|
|
+ ),
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ /******************************************************
|
|
|
|
+ * Database schema mapping
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+ 'schema' => array(
|
|
|
|
+ // Table names
|
|
|
|
+ 'tables' => array(
|
|
|
|
+ // Example:
|
|
|
|
+ // 'table-keyword' => 'actual-table-name',
|
|
|
|
+
|
|
|
|
+ 'users' => 'users',
|
|
|
|
+ 'domains' => 'domains',
|
|
|
|
+ 'aliases' => 'aliases',
|
|
|
|
+ ),
|
|
|
|
+
|
|
|
|
+ 'attributes' => array(
|
|
|
|
+ // Example:
|
|
|
|
+ // 'table-keyword' => array(
|
|
|
|
+ // 'attribute-keyword' => 'actual-attribute-name',
|
|
|
|
+ // ...
|
|
|
|
+ // ),
|
|
|
|
+
|
|
|
|
+ // Users table columns
|
|
|
|
+ 'users' => array(
|
|
|
|
+ 'id' => 'id',
|
|
|
|
+ 'username' => 'username',
|
|
|
|
+ 'domain' => 'domain',
|
|
|
|
+ 'password' => 'password',
|
|
|
|
+ 'mailbox_limit' => 'mailbox_limit', // (Optional see 'options.enable_mailbox_limits')
|
|
|
|
+ ),
|
|
|
|
+
|
|
|
|
+ // Domains table columns
|
|
|
|
+ 'domains' => array(
|
|
|
|
+ 'id' => 'id',
|
|
|
|
+ 'domain' => 'domain',
|
|
|
|
+ ),
|
|
|
|
+
|
|
|
|
+ // Aliases table columns
|
|
|
|
+ 'aliases' => array(
|
|
|
|
+ 'id' => 'id',
|
|
|
|
+ 'source' => 'source',
|
|
|
|
+ 'destination' => 'destination',
|
|
|
|
+ 'multi_source' => 'multi_source', // (Optional see 'options.enable_multi_source_redirects')
|
|
|
|
+ ),
|
|
|
|
+ ),
|
|
|
|
+ ),
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ /******************************************************
|
|
|
|
+ * General options
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+ 'options' => array(
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * Enable mailbox limits. (Default false == off)
|
|
|
|
+ *
|
|
|
|
+ * Needs a new db attribute in users table with INT(10)
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+ 'enable_mailbox_limits' => false,
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * Enable validating that the source addresses are ending with domain from domains. (Default true == on)
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+ 'enable_validate_aliases_source_domain' => true,
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * Enable multi source redirects. (Default false == off)
|
|
|
|
+ *
|
|
|
|
+ * Needs a new db attribute in aliases table with VARCHAR(32)
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+ 'enable_multi_source_redirects' => false,
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * Enable limited admin domain access. (Default false == off)
|
|
|
|
+ *
|
|
|
|
+ * Limitations can be configured under 'admin_domain_limits'
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+ 'enable_admin_domain_limits' => false,
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * Enable logging for failed login attempts. (Default false == off)
|
|
|
|
+ *
|
|
|
|
+ * You can mointor the logfile with fail2ban and ban attackers' IP-addresses.
|
|
|
|
+ * Path to logfile can be configured under 'log_path'
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+ 'enable_logging' => false,
|
|
|
|
+
|
|
|
|
+ ),
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ /******************************************************
|
|
|
|
+ * Admin e-mail addresses
|
|
|
|
+ *
|
|
|
|
+ * Users with these e-mail addresses will have admin access,
|
|
|
|
+ * you can limit their access with the 'options.enable_admin_domain_limits' feature
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+ 'admins' => array(
|
|
|
|
+ 'admin@domain.tld',
|
|
|
|
+ ),
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ /******************************************************
|
|
|
|
+ * Limited admin domain access (only used if 'options.enable_admin_domain_limits' is true)
|
|
|
|
+ *
|
|
|
|
+ * Unlisted admins have access to every domain, the admin is limited to listed domains only!
|
|
|
|
+ * Unlisted domains are not accessible by that admin.
|
|
|
|
+ * Note that listed admins cannot create new domains!
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+ 'admin_domain_limits' => array(
|
|
|
|
+ // Example:
|
|
|
|
+ // 'low_rank_admin@domain.tld' => array('his-domain.tld', 'shared-domain.tld'),
|
|
|
|
+ ),
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ /******************************************************
|
|
|
|
+ * Password
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+ 'password' => array(
|
|
|
|
+
|
|
|
|
+ // Algorithm used for password encryption
|
|
|
|
+ 'hash_algorithm' => 'SHA-512', // Supported algorithms: SHA-512, SHA-256, BLOWFISH
|
|
|
|
+
|
|
|
|
+ // Minimum length for passwords
|
|
|
|
+ 'min_length' => 8,
|
|
|
|
+
|
|
|
|
+ ),
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ /******************************************************
|
|
|
|
+ * Log file path (only used if 'options.enable_logging' is true)
|
|
|
|
+ *
|
|
|
|
+ * Make sure that PHP has permission to create the log directory and webmum.log (write permissions for php user)
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+ 'log_path' => '/var/www/webmum/log/',
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ /******************************************************
|
|
|
|
+ * Frontend options
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+ 'frontend_options' => array(
|
|
|
|
+
|
|
|
|
+ // Separator for email lists
|
|
|
|
+ 'email_separator_text' => ', ', // possible values: ', ' (default), '; ', PHP_EOL (newline)
|
|
|
|
+ 'email_separator_form' => ',', // possible values: ',' (default), ';', PHP_EOL (newline)
|
|
|
|
+
|
|
|
|
+ ),
|
|
|
|
+
|
|
|
|
+);
|