forked from ISTI-ansible-roles/ansible-roles
365 lines
16 KiB
Django/Jinja
365 lines
16 KiB
Django/Jinja
<?php
|
|
|
|
/*
|
|
+-----------------------------------------------------------------------+
|
|
| Local configuration for the Roundcube Webmail installation. |
|
|
| |
|
|
| This is a sample configuration file only containing the minimum |
|
|
| setup required for a functional installation. Copy more options |
|
|
| from defaults.inc.php to this file to override the defaults. |
|
|
| |
|
|
| This file is part of the Roundcube Webmail client |
|
|
| Copyright (C) The Roundcube Dev Team |
|
|
| |
|
|
| Licensed under the GNU General Public License version 3 or |
|
|
| any later version with exceptions for skins & plugins. |
|
|
| See the README file for a full license statement. |
|
|
+-----------------------------------------------------------------------+
|
|
*/
|
|
|
|
$config = array();
|
|
|
|
// Database connection string (DSN) for read+write operations
|
|
// Format (compatible with PEAR MDB2): db_provider://user:password@host/database
|
|
// Currently supported db_providers: mysql, pgsql, sqlite, mssql, sqlsrv, oracle
|
|
// For examples see http://pear.php.net/manual/en/package.database.mdb2.intro-dsn.php
|
|
// NOTE: for SQLite use absolute path (Linux): 'sqlite:////full/path/to/sqlite.db?mode=0646'
|
|
// or (Windows): 'sqlite:///C:/full/path/to/sqlite.db'
|
|
$config['db_dsnw'] = '{{ roundcube_db }}://{{ roundcube_db_user }}:{{ roundcube_db_pwd }}@{{ roundcube_db_host }}/{{ roundcube_db_name}}';
|
|
|
|
// It is possible to specify database variable values e.g. some limits here.
|
|
// Use them if your server is not MySQL or for better performance.
|
|
// For example Roundcube uses max_allowed_packet value (in bytes)
|
|
// which limits query size for database cache operations.
|
|
$config['db_max_allowed_packet'] = '{{ roundcube_max_db_allowed_packet }}';
|
|
|
|
// The IMAP host chosen to perform the log-in.
|
|
// Leave blank to show a textbox at login, give a list of hosts
|
|
// to display a pulldown menu or set one host as string.
|
|
// To use SSL/TLS connection, enter hostname with prefix ssl:// or tls://
|
|
// Supported replacement variables:
|
|
// %n - hostname ($_SERVER['SERVER_NAME'])
|
|
// %t - hostname without the first part
|
|
// %d - domain (http hostname $_SERVER['HTTP_HOST'] without the first part)
|
|
// %s - domain name after the '@' from e-mail address provided at login screen
|
|
// For example %n = mail.domain.tld, %t = domain.tld
|
|
$config['default_host'] = '{{ roundcube_imap_connection_type }}://{{ roundcube_imap_server }}';
|
|
|
|
// SMTP server host (for sending mails).
|
|
// Enter hostname with prefix tls:// to use STARTTLS, or use
|
|
// prefix ssl:// to use the deprecated SSL over SMTP (aka SMTPS)
|
|
// Supported replacement variables:
|
|
// %h - user's IMAP hostname
|
|
// %n - hostname ($_SERVER['SERVER_NAME'])
|
|
// %t - hostname without the first part
|
|
// %d - domain (http hostname $_SERVER['HTTP_HOST'] without the first part)
|
|
// %z - IMAP domain (IMAP hostname without the first part)
|
|
// For example %n = mail.domain.tld, %t = domain.tld
|
|
$config['smtp_server'] = '{{ roundcube_smtp_server }}';
|
|
|
|
// SMTP port (default is 25; use 587 for STARTTLS or 465 for the
|
|
// deprecated SSL over SMTP (aka SMTPS))
|
|
$config['smtp_port'] = {{ roundcube_smtp_port }};
|
|
|
|
{% if roundcube_smtp_automatic_credentials %}
|
|
// SMTP username (if required) if you use %u as the username Roundcube
|
|
// will use the current username for login
|
|
$config['smtp_user'] = '{{ roundcube_smtp_user }}';
|
|
|
|
// SMTP password (if required) if you use %p as the password Roundcube
|
|
// will use the current user's password for login
|
|
$config['smtp_pass'] = '{{ roundcube_smtp_pass }}';
|
|
{% endif %}
|
|
|
|
// provide an URL where a user can get support for this Roundcube installation
|
|
// PLEASE DO NOT LINK TO THE ROUNDCUBE.NET WEBSITE HERE!
|
|
$config['support_url'] = '{{ roundcube_support_url }}';
|
|
|
|
// Name your service. This is displayed on the login screen and in the window title
|
|
$config['product_name'] = '{{ roundcube_product_name }}';
|
|
|
|
// this key is used to encrypt the users imap password which is stored
|
|
// in the session record (and the client cookie if remember password is enabled).
|
|
// please provide a string of exactly 24 chars.
|
|
// YOUR KEY MUST BE DIFFERENT THAN THE SAMPLE VALUE FOR SECURITY REASONS
|
|
$config['des_key'] = '{{ roundcube_crypt_key }}';
|
|
$config['cipher_method'] = 'AES-256-CBC';
|
|
|
|
// List of active plugins (in plugins/ directory)
|
|
$config['plugins'] = array({% for plug in roundcube_default_plugins %}'{{ plug }}', {% endfor %}{% for opt_plug in roundcube_optional_plugins %}'{{ opt_plug }}', {% endfor %}{% for add_plug in roundcube_additional_plugins %}'{{ add_plug }}', {% endfor %}{% if roundcube_install_enigma %}'{{ roundcube_enigma_plugin }}'{% endif %});
|
|
|
|
{% if roundcube_install_enigma %}
|
|
// Enigma Plugin options
|
|
// --------------------
|
|
|
|
// A driver to use for PGP. Default: "gnupg".
|
|
$config['enigma_pgp_driver'] = 'gnupg';
|
|
|
|
// A driver to use for S/MIME. Default: "phpssl".
|
|
$config['enigma_smime_driver'] = 'phpssl';
|
|
|
|
// Enables logging of enigma operations (including Crypt_GPG debug info)
|
|
$config['enigma_debug'] = false;
|
|
|
|
// REQUIRED! Keys directory for all users.
|
|
// Must be writeable by PHP process, and not in the web server document root
|
|
$config['enigma_pgp_homedir'] = '{{ roundcube_enigma_data_dir }}/';
|
|
|
|
// Location of gpg binary. By default it will be auto-detected.
|
|
// This is also a way to force gpg2 use if there are both 1.x and 2.x on the system.
|
|
$config['enigma_pgp_binary'] = '{{ roundcube_enigma_gpg_bin }}';
|
|
|
|
// Location of gpg-agent binary. By default it will be auto-detected.
|
|
// It's used with GnuPG 2.x.
|
|
$config['enigma_pgp_agent'] = '{{ roundcube_enigma_gpgagent_bin }}';
|
|
|
|
// Location of gpgconf binary. By default it will be auto-detected.
|
|
// It's used with GnuPG >= 2.1.
|
|
$config['enigma_pgp_gpgconf'] = '{{ roundcube_enigma_gpgconf_bin }}';
|
|
|
|
// Name of the PGP symmetric cipher algorithm.
|
|
// Run gpg --version to see the list of supported algorithms
|
|
$config['enigma_pgp_cipher_algo'] = null;
|
|
|
|
// Name of the PGP digest (hash) algorithm.
|
|
// Run gpg --version to see the list of supported algorithms
|
|
$config['enigma_pgp_digest_algo'] = null;
|
|
|
|
// Enables multi-host environments support.
|
|
// Enable it if you have more than one HTTP server.
|
|
// Make sure all servers run the same GnuPG version and have time in sync.
|
|
// Keys will be stored in SQL database (make sure max_allowed_packet
|
|
// is big enough).
|
|
$config['enigma_multihost'] = {{ roundcube_enigma_multihost }};
|
|
|
|
// Enables signatures verification feature.
|
|
$config['enigma_signatures'] = true;
|
|
|
|
// Enables messages decryption feature.
|
|
$config['enigma_decryption'] = true;
|
|
|
|
// Enables messages encryption and signing feature.
|
|
$config['enigma_encryption'] = true;
|
|
|
|
// Enable signing all messages by default
|
|
$config['enigma_sign_all'] = false;
|
|
|
|
// Enable encrypting all messages by default
|
|
$config['enigma_encrypt_all'] = false;
|
|
|
|
// Enable attaching a public key to all messages by default
|
|
$config['enigma_attach_pubkey'] = false;
|
|
|
|
// Default for how long to store private key passwords (in minutes).
|
|
// When set to 0 passwords will be stored for the whole session.
|
|
$config['enigma_password_time'] = 5;
|
|
|
|
// With this option you can lock composing options
|
|
// of the plugin forcing the user to use configured settings.
|
|
// The array accepts: 'sign', 'encrypt', 'pubkey'.
|
|
//
|
|
// For example, to force your users to sign every email,
|
|
// you should set:
|
|
// - enigma_sign_all = true
|
|
// - enigma_options_lock = array('sign')
|
|
// - dont_override = array('enigma_sign_all')
|
|
$config['enigma_options_lock'] = array();
|
|
{% endif %}
|
|
|
|
{% if roundcube_use_memcache %}
|
|
// Use these hosts for accessing memcached
|
|
// Define any number of hosts in the form of hostname:port or unix:///path/to/socket.file
|
|
// Example: array('localhost:11211', '192.168.1.12:11211', 'unix:///var/tmp/memcached.sock');
|
|
$config['memcache_hosts'] = array({% for h in roundcube_memcache_hosts %}'{{ h }}'{% if not loop.last %}, {% endif %} {% endfor %});
|
|
|
|
// Controls the use of a persistent connections to memcache servers
|
|
// See http://php.net/manual/en/memcache.addserver.php
|
|
$config['memcache_pconnect'] = true;
|
|
|
|
// Value in seconds which will be used for connecting to the daemon
|
|
// See http://php.net/manual/en/memcache.addserver.php
|
|
$config['memcache_timeout'] = 1;
|
|
|
|
// Controls how often a failed server will be retried (value in seconds).
|
|
// Setting this parameter to -1 disables automatic retry.
|
|
// See http://php.net/manual/en/memcache.addserver.php
|
|
$config['memcache_retry_interval'] = 15;
|
|
{% endif %}
|
|
|
|
{% if roundcube_use_redis %}
|
|
// Use these hosts for accessing Redis.
|
|
// Currently only one host is supported. Cluster support may come in a future release.
|
|
// You can pass 4 fields, host, port (optional), database (optional) and password (optional).
|
|
// Unset fields will be set to the default values host=127.0.0.1, port=6379.
|
|
// Examples:
|
|
// array('localhost:6379');
|
|
// array('192.168.1.1:6379:1:secret');
|
|
// array('unix:///var/run/redis/redis-server.sock:1:secret');
|
|
$config['redis_hosts'] = null;
|
|
|
|
// Maximum size of an object in memcache (in bytes). Default: 2MB
|
|
$config['memcache_max_allowed_packet'] = '2M';
|
|
|
|
// Maximum size of an object in APC cache (in bytes). Default: 2MB
|
|
$config['apc_max_allowed_packet'] = '2M';
|
|
|
|
// Maximum size of an object in Redis cache (in bytes). Default: 2MB
|
|
$config['redis_max_allowed_packet'] = '2M';
|
|
{% endif %}
|
|
|
|
// Message size limit. Note that SMTP server(s) may use a different value.
|
|
// This limit is verified when user attaches files to a composed message.
|
|
// Size in bytes (possible unit suffix: K, M, G)
|
|
$config['max_message_size'] = '{{ roundcube_max_attachments_size }}M';
|
|
|
|
// THIS OPTION WILL ALLOW THE INSTALLER TO RUN AND CAN EXPOSE SENSITIVE CONFIG DATA.
|
|
// ONLY ENABLE IT IF YOU'RE REALLY SURE WHAT YOU'RE DOING!
|
|
$config['enable_installer'] = false;
|
|
|
|
// skin name: folder from skins/
|
|
$config['skin'] = '{{ roundcube_default_skin }}';
|
|
|
|
// limit skins available/shown in the settings section
|
|
$config['skins_allowed'] = array({% for skin in roundcube_available_skins %}'{{ skin }}'{% if not loop.last %}, {% endif %} {% endfor %});
|
|
|
|
// Logo image replacement. Specifies location of the image as:
|
|
// - URL relative to the document root of this Roundcube installation
|
|
// - full URL with http:// or https:// prefix
|
|
// - URL relative to the current skin folder (when starts with a '/')
|
|
//
|
|
// An array can be used to specify different logos for specific template files
|
|
// The array key specifies the place(s) the logo should be applied to and
|
|
// is made up of (up to) 3 parts:
|
|
// - skin name prefix (always with colon, can be replaced with *)
|
|
// - template name (or * for all templates)
|
|
// - logo type - it is used for logos used on multiple templates
|
|
// the available types include '[favicon]' for favicon, '[print]' for logo on all print
|
|
// templates (e.g. messageprint, contactprint) and '[small]' for small screen logo in supported skins
|
|
//
|
|
// Example config for skin_logo
|
|
/*
|
|
array(
|
|
// show the image /images/logo_login_small.png for the Login screen in the Elastic skin on small screens
|
|
"elastic:login[small]" => "/images/logo_login_small.png",
|
|
// show the image /images/logo_login.png for the Login screen in the Elastic skin
|
|
"elastic:login" => "/images/logo_login.png",
|
|
// show the image /images/logo_small.png in the Elastic skin
|
|
"elastic:*[small]" => "/images/logo_small.png",
|
|
// show the image /images/larry.png in the Larry skin
|
|
"larry:*" => "/images/larry.png",
|
|
// show the image /images/logo_login.png on the login template in all skins
|
|
"login" => "/images/logo_login.png",
|
|
// show the image /images/logo_print.png for all print type logos in all skins
|
|
"[print]" => "/images/logo_print.png",
|
|
);
|
|
*/
|
|
$config['skin_logo'] = '{{ roundcube_skin_logo }}';
|
|
|
|
// automatically create a new Roundcube user when log-in the first time.
|
|
// a new user will be created once the IMAP login succeeds.
|
|
// set to false if only registered users can use this service
|
|
$config['auto_create_user'] = true;
|
|
|
|
// Enables possibility to log in using email address from user identities
|
|
$config['user_aliases'] = false;
|
|
|
|
// use this folder to store log files
|
|
// must be writeable for the user who runs PHP process (Apache user if mod_php is being used)
|
|
// This is used by the 'file' log driver.
|
|
$config['log_dir'] = '{{ roundcube_logs_dir }}/';
|
|
|
|
// use this folder to store temp files
|
|
// must be writeable for the user who runs PHP process (Apache user if mod_php is being used)
|
|
$config['temp_dir'] = '{{ roundcube_temp_dir }}/';
|
|
|
|
// expire files in temp_dir after 48 hours
|
|
// possible units: s, m, h, d, w
|
|
$config['temp_dir_ttl'] = '48h';
|
|
|
|
// Enforce connections over https
|
|
// With this option enabled, all non-secure connections will be redirected.
|
|
// It can be also a port number, hostname or hostname:port if they are
|
|
// different than default HTTP_HOST:443
|
|
$config['force_https'] = {{ roundcube_force_https_connection }};
|
|
|
|
// tell PHP that it should work as under secure connection
|
|
// even if it doesn't recognize it as secure ($_SERVER['HTTPS'] is not set)
|
|
// e.g. when you're running Roundcube behind a https proxy
|
|
// this option is mutually exclusive to 'force_https' and only either one of them should be set to true.
|
|
$config['use_https'] = false;
|
|
|
|
// Allow browser-autocompletion on login form.
|
|
// 0 - disabled, 1 - username and host only, 2 - username, host, password
|
|
$config['login_autocomplete'] = {{ roundcube_login_autocomplete }};
|
|
|
|
// Forces conversion of logins to lower case.
|
|
// 0 - disabled, 1 - only domain part, 2 - domain and local part.
|
|
// If users authentication is case-insensitive this must be enabled.
|
|
// Note: After enabling it all user records need to be updated, e.g. with query:
|
|
// UPDATE users SET username = LOWER(username);
|
|
$config['login_lc'] = {{ roundcube_login_lc }};
|
|
|
|
$config['display_product_info'] = 0;
|
|
|
|
// Session lifetime in minutes
|
|
$config['session_lifetime'] = {{ roundcube_session_lifetime }};
|
|
|
|
// Session domain: .example.org
|
|
$config['session_domain'] = '';
|
|
|
|
// Session name. Default: 'roundcube_sessid'
|
|
$config['session_name'] = null;
|
|
|
|
// Session authentication cookie name. Default: 'roundcube_sessauth'
|
|
$config['session_auth_name'] = null;
|
|
|
|
{% if roundcube_use_memcache %}
|
|
$config['session_storage'] = 'memcache';
|
|
{% elif roundcube_use_redis %}
|
|
$config['session_storage'] = 'redis';
|
|
{% else %}
|
|
$config['session_storage'] = 'db';
|
|
{% endif %}
|
|
|
|
{% if haproxy_ips is defined %}
|
|
$config['proxy_whitelist'] = array({% for h in haproxy_ips %}'{{ h }}'{% if not loop.last %}, {% endif %} {% endfor %});
|
|
{% endif %}
|
|
|
|
$config['mail_domain'] = '{{ roundcube_domain_name }}';
|
|
$config['http_received_header_encrypt'] = {{ roundcube_http_received_header_encrypt }};
|
|
$config['identities_level'] = {{ roundcube_identities_level }};
|
|
|
|
$config['create_default_folders'] = true;
|
|
$config['show_real_foldernames'] = true;
|
|
$config['enable_spellcheck'] = {{ roundcube_enable_spellcheck }};
|
|
$config['show_images'] = {{ roundcube_show_images }};
|
|
$config['htmleditor'] = {{ roundcube_html_editor }};
|
|
|
|
{% if roundcube_managesieve_config %}
|
|
// managesieve server port
|
|
$rcmail_config['managesieve_port'] = {{ roundcube_managesieve_port }};
|
|
$config['managesieve_auth_type'] = '{{ roundcube_managesieve_auth }}';
|
|
$rcmail_config['managesieve_host'] = '{{ roundcube_managesieve_host }}';
|
|
$rcmail_config['managesieve_usetls'] = {{ roundcube_managesieve_tls }};
|
|
$config['managesieve_debug'] = {{ roundcube_managesieve_debug }};
|
|
$config['managesieve_vacation'] = {{ roundcube_managesieve_vacation }};
|
|
$config['managesieve_forward'] = {{ roundcube_managesieve_forward }};
|
|
{% endif %}
|
|
|
|
// Help URL. The default does not work
|
|
$config['help_source'] = '{{ roundcube_help_url }}';
|
|
// Map to translate Roundcube language codes into help document languages
|
|
// The '*' entry will be used as default
|
|
$config['help_language_map'] = array('*' => 'en_US');
|
|
|
|
// Enter an absolute URL to a page displaying information about this webmail
|
|
// Alternatively, create a HTML file under <this-plugin-dir>/content/about.html
|
|
$config['help_about_url'] = null;
|
|
|
|
// Enter an absolute URL to a page displaying information about this webmail
|
|
// Alternatively, put your license text to <this-plugin-dir>/content/license.html
|
|
$config['help_license_url'] = null;
|
|
|
|
// Determine whether to open the help in a new window
|
|
$config['help_open_extwin'] = {{ roundcube_help_extwin }};
|