| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362 | 
							- <?php
 
- error_reporting(E_ERROR);
 
- //error_reporting(E_ALL);
 
- /*
 
- PLEASE USE THE FILE "vars.local.inc.php" TO OVERWRITE SETTINGS AND MAKE THEM PERSISTENT!
 
- This file will be reset on upgrades.
 
- */
 
- // SQL database connection variables
 
- $database_type = 'mysql';
 
- $database_sock = '/var/run/mysqld/mysqld.sock';
 
- $database_host = 'mysql';
 
- $database_user = getenv('DBUSER');
 
- $database_pass = getenv('DBPASS');
 
- $database_name = getenv('DBNAME');
 
- // Other variables
 
- $mailcow_hostname = getenv('MAILCOW_HOSTNAME');
 
- $default_pass_scheme = getenv('MAILCOW_PASS_SCHEME');
 
- // Autodiscover settings
 
- // ===
 
- // Auto-detect HTTPS port =>
 
- $https_port = strpos($_SERVER['HTTP_HOST'], ':');
 
- if ($https_port === FALSE) {
 
-   $https_port = 443;
 
- } else {
 
-   $https_port = substr($_SERVER['HTTP_HOST'], $https_port+1);
 
- }
 
- // Alternatively select port here =>
 
- //$https_port = 1234;
 
- // Other settings =>
 
- $autodiscover_config = array(
 
-   // General autodiscover service type: "activesync" or "imap"
 
-   // emClient uses autodiscover, but does not support ActiveSync. mailcow excludes emClient from ActiveSync.
 
-   // With SOGo disabled, the type will always fallback to imap. CalDAV and CardDAV will be excluded, too.
 
-   'autodiscoverType' => 'activesync',
 
-   // If autodiscoverType => activesync, also use ActiveSync (EAS) for Outlook desktop clients (>= Outlook 2013 on Windows)
 
-   // Outlook for Mac does not support ActiveSync
 
-   'useEASforOutlook' => 'no',
 
-   // Please don't use STARTTLS-enabled service ports in the "port" variable.
 
-   // The autodiscover service will always point to SMTPS and IMAPS (TLS-wrapped services).
 
-   // The autoconfig service will additionally announce the STARTTLS-enabled ports, specified in the "tlsport" variable.
 
-   'imap' => array(
 
-     'server' => $mailcow_hostname,
 
-     'port' => (int)filter_var(substr(getenv('IMAPS_PORT'), strrpos(getenv('IMAPS_PORT'), ':')), FILTER_SANITIZE_NUMBER_INT),
 
-     'tlsport' => (int)filter_var(substr(getenv('IMAP_PORT'), strrpos(getenv('IMAP_PORT'), ':')), FILTER_SANITIZE_NUMBER_INT)
 
-   ),
 
-   'pop3' => array(
 
-     'server' => $mailcow_hostname,
 
-     'port' => (int)filter_var(substr(getenv('POPS_PORT'), strrpos(getenv('POPS_PORT'), ':')), FILTER_SANITIZE_NUMBER_INT),
 
-     'tlsport' => (int)filter_var(substr(getenv('POP_PORT'), strrpos(getenv('POP_PORT'), ':')), FILTER_SANITIZE_NUMBER_INT)
 
-   ),
 
-   'smtp' => array(
 
-     'server' => $mailcow_hostname,
 
-     'port' => (int)filter_var(substr(getenv('SMTPS_PORT'), strrpos(getenv('SMTPS_PORT'), ':')), FILTER_SANITIZE_NUMBER_INT),
 
-     'tlsport' => (int)filter_var(substr(getenv('SUBMISSION_PORT'), strrpos(getenv('SUBMISSION_PORT'), ':')), FILTER_SANITIZE_NUMBER_INT)
 
-   ),
 
-   'activesync' => array(
 
-     'url' => 'https://' . $mailcow_hostname . ($https_port == 443 ? '' : ':' . $https_port) . '/Microsoft-Server-ActiveSync',
 
-   ),
 
-   'caldav' => array(
 
-     'server' => $mailcow_hostname,
 
-     'port' => $https_port,
 
-   ),
 
-   'carddav' => array(
 
-     'server' => $mailcow_hostname,
 
-     'port' => $https_port,
 
-   ),
 
- );
 
- // If false, we will use DEFAULT_LANG
 
- // Uses HTTP_ACCEPT_LANGUAGE header
 
- $DETECT_LANGUAGE = true;
 
- // Change default language
 
- $DEFAULT_LANG = 'en';
 
- // Available languages
 
- // https://www.iso.org/obp/ui/#search
 
- // https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes
 
- $AVAILABLE_LANGUAGES = array(
 
-   'cs' => 'Čeština (Czech)',
 
-   'da' => 'Danish (Dansk)',
 
-   'de' => 'Deutsch (German)',
 
-   'en' => 'English',
 
-   'es' => 'Español (Spanish)',
 
-   'fi' => 'Suomi (Finish)',
 
-   'fr' => 'Français (French)',
 
-   'hu' => 'Magyar (Hungarian)',
 
-   'it' => 'Italiano (Italian)',
 
-   'ko' => '한국어 (Korean)',
 
-   'lv' => 'latviešu (Latvian)',
 
-   'nl' => 'Nederlands (Dutch)',
 
-   'pl' => 'Język Polski (Polish)',
 
-   'pt' => 'Português (Portuguese)',
 
-   'ro' => 'Română (Romanian)',
 
-   'ru' => 'Pусский (Russian)',
 
-   'sk' => 'Slovenčina (Slovak)',
 
-   'sv' => 'Svenska (Swedish)',
 
-   'uk' => 'Українська (Ukrainian)',
 
-   'zh' => '中文 (Chinese)'
 
- );
 
- // Change theme (default: lumen)
 
- // Needs to be one of those: cerulean, cosmo, cyborg, darkly, flatly, journal, lumen, paper, readable, sandstone,
 
- // simplex, slate, spacelab, superhero, united, yeti
 
- // See https://bootswatch.com/
 
- // WARNING: Only lumen is loaded locally. Enabling any other theme, will download external sources.
 
- $DEFAULT_THEME = 'lumen';
 
- // Show DKIM private keys - false by default
 
- $SHOW_DKIM_PRIV_KEYS = false;
 
- // mailcow Apps - buttons on login screen
 
- $MAILCOW_APPS = array(
 
-   array(
 
-     'name' => 'Webmail',
 
-     'link' => '/SOGo/',
 
-   )
 
- );
 
- // Rows until pagination begins
 
- $PAGINATION_SIZE = 20;
 
- // Default number of rows/lines to display (log table)
 
- $LOG_LINES = 1000;
 
- // Rows until pagination begins (log table)
 
- $LOG_PAGINATION_SIZE = 50;
 
- // Session lifetime in seconds
 
- $SESSION_LIFETIME = 10800;
 
- // Label for OTP devices
 
- $OTP_LABEL = "mailcow UI";
 
- // How long to wait (in s) for cURL Docker requests
 
- $DOCKER_TIMEOUT = 60;
 
- // Split DKIM key notation (bind format)
 
- $SPLIT_DKIM_255 = false;
 
- // OAuth2 settings
 
- $REFRESH_TOKEN_LIFETIME = 2678400;
 
- $ACCESS_TOKEN_LIFETIME = 86400;
 
- // Logout from mailcow after first OAuth2 session profile request
 
- $OAUTH2_FORGET_SESSION_AFTER_LOGIN = false;
 
- // Set a limit for mailbox and domain tagging
 
- $TAGGING_LIMIT = 25;
 
- // MAILBOX_DEFAULT_ATTRIBUTES define default attributes for new mailboxes
 
- // These settings will not change existing mailboxes
 
- // Force incoming TLS for new mailboxes by default
 
- $MAILBOX_DEFAULT_ATTRIBUTES['tls_enforce_in'] = false;
 
- // Force outgoing TLS for new mailboxes by default
 
- $MAILBOX_DEFAULT_ATTRIBUTES['tls_enforce_out'] = false;
 
- // Force password change on next login (only allows login to mailcow UI)
 
- $MAILBOX_DEFAULT_ATTRIBUTES['force_pw_update'] = false;
 
- // Enable SOGo access (set to false to disable access by default)
 
- $MAILBOX_DEFAULT_ATTRIBUTES['sogo_access'] = true;
 
- // Send notification when quarantine is not empty (never, hourly, daily, weekly)
 
- $MAILBOX_DEFAULT_ATTRIBUTES['quarantine_notification'] = 'hourly';
 
- // Mailbox has IMAP access by default
 
- $MAILBOX_DEFAULT_ATTRIBUTES['imap_access'] = true;
 
- // Mailbox has POP3 access by default
 
- $MAILBOX_DEFAULT_ATTRIBUTES['pop3_access'] = true;
 
- // Mailbox has SMTP access by default
 
- $MAILBOX_DEFAULT_ATTRIBUTES['smtp_access'] = true;
 
- // Mailbox has sieve access by default
 
- $MAILBOX_DEFAULT_ATTRIBUTES['sieve_access'] = true;
 
- // Mailbox receives notifications about...
 
- // "add_header" - mail that was put into the Junk folder
 
- // "reject" - mail that was rejected
 
- // "all" - mail that was rejected and put into the Junk folder
 
- $MAILBOX_DEFAULT_ATTRIBUTES['quarantine_category'] = 'reject';
 
- // Default mailbox format, should not be changed unless you know exactly, what you do, keep the trailing ":"
 
- // Check dovecot.conf for further changes (e.g. shared namespace)
 
- $MAILBOX_DEFAULT_ATTRIBUTES['mailbox_format'] = 'maildir:';
 
- // Show last IMAP and POP3 logins
 
- $SHOW_LAST_LOGIN = true;
 
- // UV flag handling in FIDO2/WebAuthn - defaults to false to allow iOS logins
 
- // true = required
 
- // false = preferred
 
- // string 'required' 'preferred' 'discouraged'
 
- $WEBAUTHN_UV_FLAG_REGISTER = false;
 
- $WEBAUTHN_UV_FLAG_LOGIN = false;
 
- $WEBAUTHN_USER_PRESENT_FLAG = true;
 
- $FIDO2_UV_FLAG_REGISTER = 'preferred';
 
- $FIDO2_UV_FLAG_LOGIN = 'preferred'; // iOS ignores the key via NFC if required - known issue
 
- $FIDO2_USER_PRESENT_FLAG = true;
 
- $FIDO2_FORMATS = array('apple', 'android-key', 'android-safetynet', 'fido-u2f', 'none', 'packed', 'tpm');
 
- // Set visible Rspamd maps in mailcow UI, do not change unless you know what you are doing
 
- $RSPAMD_MAPS = array(
 
-   'regex' => array(
 
-     'Header-From: Blacklist' => 'global_mime_from_blacklist.map',
 
-     'Header-From: Whitelist' => 'global_mime_from_whitelist.map',
 
-     'Envelope Sender Blacklist' => 'global_smtp_from_blacklist.map',
 
-     'Envelope Sender Whitelist' => 'global_smtp_from_whitelist.map',
 
-     'Recipient Blacklist' => 'global_rcpt_blacklist.map',
 
-     'Recipient Whitelist' => 'global_rcpt_whitelist.map',
 
-     'Fishy TLDS (only fired in combination with bad words)' => 'fishy_tlds.map',
 
-     'Bad Words (only fired in combination with fishy TLDs)' => 'bad_words.map',
 
-     'Bad Words DE (only fired in combination with fishy TLDs)' => 'bad_words_de.map',
 
-     'Bad Languages' => 'bad_languages.map',
 
-     'Bulk Mail Headers' => 'bulk_header.map',
 
-     'Bad (Junk) Mail Headers' => 'bad_header.map',
 
-     'Monitoring Hosts' => 'monitoring_nolog.map'
 
-   )
 
- );
 
- $IMAPSYNC_OPTIONS = array(
 
-   'whitelist' => array(
 
-       'log',
 
-       'showpasswords',   
 
-       'nossl1',            
 
-       'nossl2',            
 
-       'ssl2',              
 
-       'notls1',             
 
-       'notls2',            
 
-       'tls2',              
 
-       'debugssl', 
 
-       'sslargs1',
 
-       'sslargs2', 
 
-       'authmech1',
 
-       'authmech2',
 
-       'authuser1', 
 
-       'authuser2',  
 
-       'proxyauth1',        
 
-       'proxyauth2',        
 
-       'authmd51',          
 
-       'authmd52',         
 
-       'domain1',
 
-       'domain2',
 
-       'oauthaccesstoken1',
 
-       'oauthaccesstoken2',
 
-       'oauthdirect1',
 
-       'oauthdirect2',
 
-       'folder',
 
-       'folder', 
 
-       'folderrec',
 
-       'folderrec', 
 
-       'folderfirst',
 
-       'folderfirst', 
 
-       'folderlast',
 
-       'folderlast',
 
-       'nomixfolders',  
 
-       'skipemptyfolders',
 
-       'include',
 
-       'include',
 
-       'subfolder1',
 
-       'subscribed',
 
-       'subscribe',  
 
-       'prefix1',
 
-       'prefix2',
 
-       'sep1',
 
-       'sep2',
 
-       'nofoldersizesatend',
 
-       'justfoldersizes', 
 
-       'pidfile', 
 
-       'pidfilelocking',  
 
-       'nolog',        
 
-       'logfile', 
 
-       'logdir',
 
-       'debugcrossduplicates', 
 
-       'disarmreadreceipts', 
 
-       'truncmess', 
 
-       'synclabels',     
 
-       'resynclabels',     
 
-       'resyncflags',   
 
-       'noresyncflags',  
 
-       'filterbuggyflags',  
 
-       'expunge1',       
 
-       'noexpunge1',    
 
-       'delete1emptyfolders',
 
-       'delete2folders',   
 
-       'noexpunge2',   
 
-       'nouidexpunge2',   
 
-       'syncinternaldates',
 
-       'idatefromheader', 
 
-       'maxsize',
 
-       'minsize',
 
-       'minage',
 
-       'search', 
 
-       'search1',
 
-       'search2', 
 
-       'noabletosearch',  
 
-       'noabletosearch1',   
 
-       'noabletosearch2',  
 
-       'maxlinelength',
 
-       'useheader',
 
-       'useheader',   
 
-       'syncduplicates',
 
-       'usecache',      
 
-       'nousecache',   
 
-       'useuid',     
 
-       'syncacls',
 
-       'nosyncacls',   
 
-       'debug',           
 
-       'debugfolders', 
 
-       'debugcontent',    
 
-       'debugflags',     
 
-       'debugimap1',   
 
-       'debugimap2',    
 
-       'debugimap',       
 
-       'debugmemory',     
 
-       'errorsmax',
 
-       'tests',      
 
-       'testslive',    
 
-       'testslive6',     
 
-       'gmail1',    
 
-       'gmail2',    
 
-       'office1',      
 
-       'office2',   
 
-       'exchange1',   
 
-       'exchange2',   
 
-       'domino1',  
 
-       'domino2',   
 
-       'keepalive1',   
 
-       'keepalive2',     
 
-       'maxmessagespersecond',
 
-       'maxbytesafter',
 
-       'maxsleep',
 
-       'abort',       
 
-       'exitwhenover',
 
-       'noid',  
 
-       'justconnect',   
 
-       'justlogin',  
 
-       'justfolders'
 
-   ),
 
-   'blacklist' => array(
 
-       'skipmess',
 
-       'delete2foldersonly',
 
-       'delete2foldersbutnot',
 
-       'regexflag',
 
-       'regexmess',
 
-       'pipemess',
 
-       'regextrans2',
 
-       'maxlinelengthcmd'
 
-   )
 
- );
 
 
  |