⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.50
Server IP:
41.128.143.86
Server:
Linux host.raqmix.cloud 6.8.0-1025-azure #30~22.04.1-Ubuntu SMP Wed Mar 12 15:28:20 UTC 2025 x86_64
Server Software:
Apache
PHP Version:
8.3.23
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
proc
/
self
/
root
/
usr
/
share
/
psa-horde
/
config
/
Edit File: conf.xml
<?xml version="1.0"?> <!-- $Id: 5841de7a8bd742b764f603953bef5d16a75a0da4 $ --> <configuration> <configtab name="general" desc="General"> <configheader>General Horde Settings</configheader> <configboolean name="vhosts" desc="Enable virtual host configuration? If you want to use a single Horde installation for different virtual hosts, you can create separate configuration files for each virtual host, e.g. <code>conf-www.example.com.php</code> or <code>prefs-mail.example.com.php</code>. The global configuration files are always loaded first, and virtual host specific files are not required. If running command line scripts, you can specify the host name with the environment variable SERVER_NAME.">false</configboolean> <configheader>PHP Settings</configheader> <configphp name="debug_level" desc="The value to set error_reporting() to. See http://www.php.net/manual/function.error-reporting.php for more information and possible values.">E_ALL & ~E_NOTICE</configphp> <configinteger name="max_exec_time" desc="If we need to perform a long operation, what should we set max_execution_time to (in seconds)? 0 means no limit; however, a value of 0 will cause a warning if you are running in safe mode. See http://www.php.net/manual/function.set-time-limit.php for more information.">0</configinteger> <configboolean name="compress_pages" desc="If this option is set to true, and you have the php zlib extension installed, pages over a certain size will be compressed and sent to the browser as gzip-encoded data in order to save bandwidth. There is little reason not to enable this.">true</configboolean> <configsecret name="secret_key" desc="Secret key for generating signed messages from this server. This is a random string unique to this Horde installation."></configsecret> <configinteger name="umask" octal="true" desc="What umask should we run with? This will affect the permissions on any temporary files that are created. This value is an integer.">077</configinteger> <configboolean name="testdisable" desc="Disable the test script (horde/test.php)? For security reasons, this is disabled by default">true</configboolean> <configstring name="tmpdir" required="false" desc="If you want to use a temporary directory other than the system default or the one specified in php's upload_tmp_dir value, enter it here."/> <configheader>URL Settings</configheader> <configenum name="use_ssl" quote="false" desc="Determines how we generate full URLs (for location headers and such).">2 <values> <value desc="Assume that we are not using SSL and never generate https URLs.">0</value> <value desc="Assume that we are using SSL and always generate https URLs.">1</value> <value desc="Attempt to auto-detect, and generate URLs appropriately">2</value> <value desc="Assume that we are not using SSL and generate https URLs only for login.">3</value> </values> </configenum> <configsection name="server"> <configphp name="name" desc="What server name should we use? You'll probably know if you need to change this default; only in situations where you need to override what Apache thinks the server name is."> $_SERVER['SERVER_NAME']</configphp> <configphp name="port" required="false" desc="What port number is the webserver running on? Again, you shouldn't need to change the default, and you probably know it if you do. The exception is if you have chosen to always generate https URLs, as described above."/> </configsection> <configsection name="urls"> <configinteger name="token_lifetime" desc="This is the length of time in minutes that links protected with request tokens (to prevent cross-site request forgery) will be valid. Higher values may make your users more vulnerable to these attacks.">30</configinteger> <configinteger name="hmac_lifetime" desc="This is the length of time in minutes that links signed with HMACs (to prevent forged URL parametes) will be valid. Higher values may make your users more vulnerable to forgery or phishing.">30</configinteger> <configenum name="pretty" required="false" desc="Use pretty URLs?">false <values> <value desc="No (GET-based URLs)">false</value> <value desc="URL rewriting (mod_rewrite, lighttpd rules, etc.)">rewrite</value> </values> </configenum> </configsection> <configlist name="safe_ips" required="false" desc="A list of IP subnets that are considered safe, e.g. to transfer encryption passphrases without requiring an HTTPS connection. (Example: 192.168.0.0, 10.0.0.0) To consider all connections to be safe (e.g. when SSL is handled by an SSL crypto card and not by the webserver) this value should be '*'."/> <configheader>Session Settings</configheader> <configsection name="session"> <configstring name="name" desc="What name should we use for the session that Horde applications share? If you want to share sessions with other applications on your webserver, you will need to make sure that they are using the same session name. This value can also be used to invalidate previous sessions when upgrading your local version of Horde (Note: Session names must consist of only alphanumeric characters.)">Horde</configstring> <configboolean name="use_only_cookies" desc="Should we only allow session information to be stored in a session cookie and not be passed by URL (GET) parameters? This is on by default because passing session information in the URL is a security risk. <b>Consider carefully before turning it off</b>. Cookies must be working and enabled in the browser though, or you won't be able to login to Horde. If false, session information will be passed via both the URL and cookies.">true</configboolean> <configinteger name="timeout" desc="The cookie lifetime (in seconds). If 0, (DEFAULT; RECOMMENDED) cookies will expire when the browser closes. Otherwise, this is the length after which a cookie will expire (this lifetime is updated after every browser request). Setting a non-zero value is NOT RECOMMENDED as there is no guarantee a session will ever expire; additionally, the session expiration value is based on the SERVER, not the CLIENT, so this will most certainly not work the way you want/think it should (see http://www.php.net/manual/en/function.session-set-cookie-params.php) for further information.">0</configinteger> <configstring name="cache_limiter" desc="What caching level should we use for the session? DO NOT CHANGE THIS UNLESS YOU <strong>REALLY </strong> KNOW WHAT YOU ARE DOING. Setting this to anything other than 'nocache' will almost certainly result in severely broken script behavior.">nocache</configstring> <configinteger name="max_time" desc="The maximum length of time (in seconds) a session can be active after user authentication before it will be destroyed. (Sessions may otherwise never timeout if a user never closes their browser.) 0 means there is no maximum session time (NOT RECOMMENDED).">604800</configinteger> </configsection> <configsection name="cookie"> <configphp name="domain" desc="What domain should we set cookies from? If you have a cluster that needs to share cookies, this might be '.example.com' - the leading '.' is important. If you only use session cookies (see above), but you are running Horde on an intranet server without a domain part, i.e. http//horde/, you need to set this value to ''. Most likely, though, you won't have to change the default.">$_SERVER['SERVER_NAME']</configphp> <configstring name="path" desc="What path should we set cookies to? For maximum security this should match the URL where Horde is on your webserver. If Horde is at /horde, then this should be '/horde'. If Horde is installed as the document root, then this needs to be '/' - NOT ''. If IE will be used to access Horde modules, you should read this first (discussing issues with IE's Content Advisor): http://lists.horde.org/archives/imp/Week-of-Mon-20030113/029149.html"> /</configstring> </configsection> </configtab> <configtab name="db" desc="Database"> <configdescription><strong>NOTE:</strong> These are only the <em>default</em> values for any database driven backends. You still need to configure the different systems like "Preferences" to actually <em>use</em> a database backend.</configdescription> <configsection name="sql"> <configheader>SQL Database Settings</configheader> <configdescription>These are the database settings for the traditional relational databases backends (e.g. databases that use SQL to manage its data).</configdescription> <configsql switchname="phptype" baseconfig="true" /> </configsection> <configsection name="nosql"> <configheader>NoSQL Database Settings</configheader> <configdescription>These are the database settings for the NoSQL database backends. These are databases generally optimized for scalability/availability, but do not use a standardized query language to interact with the data.</configdescription> <confignosql switchname="phptype" baseconfig="true" default="false"/> </configsection> </configtab> <configtab name="ldap" desc="LDAP"> <configsection name="ldap"> <configheader>LDAP Settings</configheader> <configdescription><strong>NOTE:</strong> These are only the <em>default</em> values for any LDAP driven backends. You still need to configure the different systems like "Preferences" to actually <em>use</em> a LDAP backend.</configdescription> <configldap switchname="useldap" baseconfig="true" /> </configsection> </configtab> <configtab name="auth" desc="Authentication"> <configsection name="auth"> <configheader>Authentication Settings</configheader> <configlist name="admins" desc="Which users should be treated as administrators (root, super-user) by Horde?" required="false"/> <configboolean name="checkip" desc="Should we always store and validate the IP address of the client (as seen by the web server) in the session? Doing so will help increase security by making it harder for an attacker from another host to hijack the session.">true</configboolean> <configboolean name="checkbrowser" desc="Should we always store and validate the browser string of the client (as seen by the web server) in the session? Doing so will help increase security by making it harder for an attacker to hijack the session.">true</configboolean> <configswitch name="resetpassword" desc="Allow users to reset passwords and provide a link on the login screen?">true <case name="true" desc="Yes"> <configstring name="resetpassword_from" required="false" desc="The e-mail address to send password reset e-mails from. If empty, is sent from the user's e-mail address."/> </case> <case name="false" desc="No"/> </configswitch> <configstring name="alternate_login" desc="If this is not false, it is assumed to be the URL of an alternate login screen which will be used in place of horde's default login screen. The URL will have an "app" parameter appended that contains the application that redirected to the login screen, and a "url" parameter with the originally requested URL. The alternate login screen should redirect to that URL after authentication. Alternatively you can include a "%u" place holder in the alternate URL that will be replaced by that original URL. Optionally appended URL parameters are "logout_reason" that contains a number with the logout reason (see the Horde_Auth::REASON_* constants for possible values), and "logout_msg" that contains an error message describing the logout reason.">false</configstring> <configstring name="redirect_on_logout" desc="If this is not false, it is assumed to be the URL of an alternate logout page which users will be sent to when they log out.">false</configstring> <configenum name="list_users" desc="If the authentication backend is capable of listing all users, should we show this list to the users, e.g. in the permissions screen?">list <values> <value desc="Show a drop down list">list</value> <value desc="Show an input field">input</value> <value desc="Show both, a list and an input field">both</value> </values> </configenum> <configswitch name="driver" desc="What backend should we use for authenticating users to Horde?"> <case name="application" desc="Let a Horde application handle authentication"> <configsection name="params"> <configenum name="app" desc="The application which is providing authentication">imp <values> <configspecial application="horde" name="apps" /> </values> </configenum> </configsection> </case> <case name="auto" desc="Automatic authentication as a certain user"> <configsection name="params"> <configstring name="username" desc="The username to authenticate everyone as">horde_user</configstring> <configstring name="password" desc="The password to use for the user's credentials" required="false"/> <configboolean name="requestuser" desc="Allow username to be passed by GET, POST or cookie?">false</configboolean> </configsection> </case> <case name="composite" desc="Composite authentication"> <configdescription> This authentication driver needs manual configuration not possible through this interface. Add the appropriate configuration lines at the end of the generated configuration file. See http://wiki.horde.org/AuthCompositeHowTo for details. </configdescription> </case> <case name="ftp" desc="FTP authentication"> <configsection name="params"> <configstring name="hostspec" desc="The hostname or IP address of the FTP server">localhost</configstring> <configinteger name="port" desc="The server port to connect to"> 21</configinteger> </configsection> </case> <case name="http" desc="HTTP (Basic Authentication/.htpasswd) authentication"> <configsection name="params"> <configboolean name="show_encryption" required="false" desc="Prepend the password algorithm to the password value?">true</configboolean> <configstring name="htpasswd_file" required="false" desc="The location of the htpasswd file containing the user names and passwords"/> <configenum name="encryption" desc="The password hashing algorithm used in the htpasswd file">crypt-des <values> <value>aprmd5</value> <value>crypt</value> <value>crypt-blowfish</value> <value>crypt-des</value> <value>crypt-md5</value> <value>crypt-sha256</value> <value>crypt-sha512</value> <value>md5-base64</value> <value>md5-hex</value> <value>plain</value> <value>sha</value> <value>smd5</value> <value>ssha</value> </values> </configenum> </configsection> </case> <case name="httpRemote" desc="Remote HTTP Authentication"> <configsection name="params"> <configstring name="url" desc="The remote HTTP endpoint to authenticate against" /> </configsection> </case> <case name="imap" desc="IMAP authentication"> <configsection name="params"> <configstring name="hostspec" desc="The hostname or IP address of the server">localhost</configstring> <configinteger name="port" desc="The server port to which we will connect. IMAP is generally 143, while IMAP-SSL is generally 993.">143</configinteger> <configenum name="secure" desc="The encryption to use to connect to the IMAP server.">tls <values> <value>none</value> <value>tls</value> <value>ssl</value> </values> </configenum> </configsection> </case> <case name="imsp" desc="IMSP server authentication" /> <case name="ipbasic" desc="IP based authentication"> <configsection name="params"> <configlist name="blocks" desc="A list of CIDR masks which are allowed access"/> </configsection> </case> <case name="kolab" desc="Kolab authentication"> <configsection name="params"> </configsection> </case> <case name="ldap" desc="LDAP authentication"> <configsection name="params"> <configldap switchname="driverconfig" excludebind="user"> <configstring name="sizelimit" required="false" desc="Size limit for listing users on large directories"/> <configboolean name="ad" desc="Is this an AD server?"> false</configboolean> <configstring name="uid" desc="The username search key (set to samaccountname for AD)"/> <configenum name="encryption" desc="The password hashing algorithm to use">ssha <values> <value>aprmd5</value> <value>crypt</value> <value>crypt-blowfish</value> <value>crypt-des</value> <value>crypt-md5</value> <value>crypt-sha256</value> <value>crypt-sha512</value> <value>md5-base64</value> <value>md5-hex</value> <value>msad</value> <value>plain</value> <value>sha</value> <value>smd5</value> <value>ssha</value> </values> </configenum> <configlist name="newuser_objectclass" desc="What objectclasses should a new user account be member of? These objectclasses should cover the cn,sn,userPassword attributes as well as the username search key"> shadowAccount,inetOrgPerson</configlist> <configstring name="filter" desc="The LDAP RFC formatted filter used to search for users.">(objectclass=shadowAccount) </configstring> <configswitch name="password_expiration" desc="Enable the creating of accounts with expiring passwords? (Note: New users should have the shadowAccount objectclass)">no <case name="no" desc="no" /> <case name="yes" desc="yes"> <configstring name="minage" desc="After how many days may a password be changed again?">5</configstring> <configstring name="maxage" desc="How many days will a password remain valid?">30</configstring> <configstring name="warnage" desc="How many days before expiration should a user be warned?">5</configstring> </case> </configswitch> </configldap> </configsection> </case> <case name="login" desc="Login (su) authentication"> <configsection name="params"> <configstring name="location" desc="Location of the su binary"> /bin/su</configstring> </configsection> </case> <case name="pam" desc="PAM (Pluggable Authentication Modules) authentication"> <configsection name="params"> <configstring name="service" desc="The name of the PAM service to use when authenticating">php</configstring> </configsection> </case> <case name="passwd" desc="password file authentication"> <configsection name="params"> <configstring name="filename" desc="The password file to use"> /etc/passwd</configstring> <configenum name="encryption" required="false" desc="The password hashing algorithm used in the password file">crypt <values> <value>aprmd5</value> <value>crypt</value> <value>crypt-blowfish</value> <value>crypt-des</value> <value>crypt-md5</value> <value>crypt-sha256</value> <value>crypt-sha512</value> <value>md5-base64</value> <value>md5-hex</value> <value>plain</value> <value>sha</value> <value>smd5</value> <value>ssha</value> </values> </configenum> <configboolean name="show_encryption" required="false" desc="Prepend the password algorithm to the password value?">false</configboolean> <configstring name="group_filename" required="false" desc="An accompanying group file" /> <configlist name="required_groups" required="false" desc="A comma-separated list of groups allowed to log in. If blank, or if there is no group file, any valid user will be allowed to log in." /> <configboolean name="lock" desc="Should we lock the password file? This incurs a concurrent performance penalty, but is required if you want the ability to add, update, or delete users."> false</configboolean> </configsection> </case> <case name="radius" desc="Radius authentication"> <configsection name="params"> <configstring name="host" desc="The RADIUS host to use (IP address or fully qualified hostname)">localhost</configstring> <configinteger name="port" required="false" desc="The port to use on the RADIUS server"/> <configenum name="method" desc="The RADIUS method to use for validating the request">PAP <values> <value desc="PAP">PAP</value> <value desc="CHAP_MD5 (not supported at the moment)">CHAP_MD5</value> <value desc="MSCHAPv1 (not supported at the moment)">MSCHAPv1</value> <value desc="MSCHAPv2 (not supported at the moment)">MSCHAPv2</value> </values> </configenum> <configstring name="nas" required="false" desc="The RADIUS NAS identifier to use." /> <configstring name="secret" desc="The RADIUS shared secret string for the host. The RADIUS protocol ignores all but the leading 128 bytes of the shared secret."/> <configinteger name="retries" required="false" desc="The maximum number of repeated requests to make before giving up [3]"/> <configstring name="suffix" required="false" desc="The domain name to add to unqualified user names"/> <configinteger name="timeout" required="false" desc="The timeout for receiving replies from the server (in seconds) [3]"/> </configsection> </case> <case name="peclsasl" desc="SASL authentication"> <configsection name="params"> <configstring name="app" desc="The name of the authenticating application">horde</configstring> <configstring name="service" desc="The name of the SASL service to use when authenticating">php</configstring> </configsection> </case> <case name="shibboleth" desc="Shibboleth Authentication"> <configsection name="params"> <configstring name="username_header" desc="The HTTP header holding the username">REMOTE_USER</configstring> <configswitch name="password_holder" desc="Where should we get the password for hordeauth from?"> <case name="none" desc="No passwords"/> <case name="header" desc="HTTP Header"> <configstring name="password_header" desc="The HTTP header holding the password" required="false"></configstring> </case> <case name="preferences" desc="Horde Preferences"> <configstring name="password_preference" desc="The Horde preference that contains the password" required="false"></configstring> </case> </configswitch> </configsection> </case> <case name="smb" desc="SMB (smbauth extension) authentication"> <configsection name="params"> <configstring name="hostspec" desc="IP, DNS Name, or NetBios Name of the SMB server to authenticate with">localhost</configstring> <configstring name="domain" desc="The domain name to authenticate with"/> <configstring name="group" required="false" desc="Optional group name that the user must be a member of"/> </configsection> </case> <case name="smbclient" desc="SMB (smbclient) authentication"> <configsection name="params"> <configstring name="hostspec" desc="IP, DNS Name, or NetBios Name of the SMB server to authenticate with">localhost</configstring> <configstring name="domain" desc="The domain name to authenticate with"/> <configstring name="smbclient_path" desc="The location of the smbclient program">/usr/bin/smbclient</configstring> </configsection> </case> <case name="sql" desc="SQL authentication"> <configsection name="params"> <configsql switchname="driverconfig" /> <configstring name="table" required="false" desc="The name of the auth table in the database [horde_users]"/> <configstring name="username_field" required="false" desc="The name of the username field in the auth table [user_uid]"/> <configstring name="password_field" required="false" desc="The name of the password field in the auth table [user_pass]"/> <configstring name="soft_expiration_field" required="false" desc="The name of a field containing a UNIX timestamp. When a user logs in after the specified time, if 'passwd' is installed, that user will be asked to change his or her password. This feature is disabled by default."/> <configstring name="hard_expiration_field" required="false" desc="The name of a field containing a UNIX timestamp. A user will not be able to log in after the specified time. This feature is disabled by default."/> <configinteger name="soft_expiration_window" required="false" desc="This is how often, in days, the user must change his or her password. When the user's password is updated, the "soft" expiration is set this many days in the future. If not provided, the user's password will not expire by default."/> <configinteger name="hard_expiration_window" required="false" desc="The number of days in the grace period the user has to change his or her password after it has expired. If not provided, the grace period will not expire."/> <configenum name="encryption" required="false" desc="The password hashing algorithm to use">ssha <values> <value>aprmd5</value> <value>crypt</value> <value>crypt-blowfish</value> <value>crypt-des</value> <value>crypt-md5</value> <value>crypt-sha256</value> <value>crypt-sha512</value> <value>joomla-md5</value> <value>md5-base64</value> <value>md5-hex</value> <value>mysql</value> <value>plain</value> <value>sha</value> <value>smd5</value> <value>ssha</value> </values> </configenum> <configboolean name="show_encryption" required="false" desc="Prepend the password algorithm to the password value?">false</configboolean> </configsection> </case> <case name="customsql" desc="SQL authentication w/custom-made queries"> <configsection name="params"> <configenum name="phptype" desc="The name of the database">mysql <values> <value desc="MySQL">mysql</value> <value desc="MySQL (mysqli)">mysqli</value> <value desc="ODBC">odbc</value> <value desc="PostgreSQL">pgsql</value> </values> </configenum> <configswitch name="protocol" desc="What protocol will we use to connect to the database?">unix <case name="unix" desc="UNIX Sockets"> <configstring name="socket" required="false" desc="Location of UNIX socket"></configstring> </case> <case name="tcp" desc="TCP/IP"> <configstring name="hostspec" desc="What hostname is the database server running on, or what is the name of the system DSN to use?"> localhost</configstring> <configinteger name="port" required="false" desc="Port the DB is running on, if non-standard"/> </case> </configswitch> <configstring name="username" desc="What username do we authenticate to the database server as?">horde</configstring> <configstring name="password" required="false" desc="What password do we authenticate to the database server with?"/> <configstring name="database" desc="What database name/tablespace are we using?">horde</configstring> <configdescription> Some special tokens can be used in the sql query. They are replaced at the query stage:<ul> <li>"\L" will be replaced by the user's login</li> <li>"\P" will be replaced by the user's password</li> <li>"\O" will be replaced by the old user's login (required for update)</li></ul> Eg: "SELECT * FROM users WHERE uid = \L AND passwd = \P AND billing = 'paid'" </configdescription> <configstring name="query_auth" required="false" desc="Authenticate the user"/> <configstring name="query_add" required="false" desc="Add user"/> <configstring name="query_getpw" required="false" desc="Get a user's password"/> <configstring name="query_update" required="false" desc="Update user"/> <configstring name="query_resetpassword" required="false" desc="Reset a user's password"/> <configstring name="query_remove" required="false" desc="Remove user"/> <configstring name="query_list" required="false" desc="List users"/> <configstring name="query_exists" required="false" desc="Check if an account exists"/> <configenum name="encryption" desc="The password hashing algorithm to use">ssha <values> <value>aprmd5</value> <value>crypt</value> <value>crypt-blowfish</value> <value>crypt-des</value> <value>crypt-md5</value> <value>crypt-sha256</value> <value>crypt-sha512</value> <value>joomla-md5</value> <value>md5-base64</value> <value>md5-hex</value> <value>mysql</value> <value>plain</value> <value>sha</value> <value>smd5</value> <value>ssha</value> </values> </configenum> <configboolean name="show_encryption" desc="Prepend the password algorithm to the password value?">false</configboolean> </configsection> </case> <case name="cyrsql" desc="SQL implementation for the Cyrus IMAP server"> <configsection name="params"> <configstring name="cyradmin" desc="The username of the cyrus administrator"/> <configstring name="cyrpass" desc="The password for the cyrus administrator"/> <configstring name="cyrhost" desc="The hostname or IP address of the server">localhost</configstring> <configinteger name="cyrport" desc="The server port to which we will connect. IMAP is generally 143, while IMAP-SSL is generally 993.">143</configinteger> <configenum name="secure" desc="The encryption to use to connect to the IMAP server.">none <values> <value>none</value> <value>tls</value> <value>ssl</value> </values> </configenum> <configenum name="phptype" desc="The name of the database">mysql <values> <value desc="MySQL">mysql</value> <value desc="ODBC">odbc</value> <value desc="PostgreSQL">pgsql</value> </values> </configenum> <configswitch name="protocol" desc="What protocol will we use to connect to the database?">unix <case name="unix" desc="UNIX Sockets"> <configstring name="socket" required="false" desc="Location of UNIX socket"></configstring> </case> <case name="tcp" desc="TCP/IP"> <configinteger name="port" required="false" desc="Port the DB is running on, if non-standard">5432</configinteger> </case> </configswitch> <configstring name="hostspec" desc="What hostname is the database server running on, or what is the name of the system DSN to use?"> localhost</configstring> <configstring name="username" desc="What username do we authenticate to the database server as?">horde</configstring> <configstring name="password" required="false" desc="What password do we authenticate to the database server with?"/> <configstring name="database" desc="What database name/tablespace are we using?">horde</configstring> <configstring name="table" desc="The name of the auth table in the database">horde_users</configstring> <configstring name="username_field" desc="The name of the username field in the auth table">user_uid</configstring> <configstring name="password_field" desc="The name of the password field in the auth table">user_pass</configstring> <configstring name="domain_field" desc="If set to anything other than 'none' this is used as field name where domain is stored">none</configstring> <configenum name="encryption" desc="The password hashing algorithm to use">ssha <values> <value>aprmd5</value> <value>crypt</value> <value>crypt-blowfish</value> <value>crypt-des</value> <value>crypt-md5</value> <value>crypt-sha256</value> <value>crypt-sha512</value> <value>md5-base64</value> <value>md5-hex</value> <value>plain</value> <value>sha</value> <value>smd5</value> <value>ssha</value> </values> </configenum> <configlist name="folders" required="false" desc="A list of folders to create under username"/> <configinteger name="quota" required="false" desc="The quota (in kilobytes) to grant on the mailbox"/> <configstring name="userhierarchy" required="false" desc="The user hierarchy prefix."/> <configlist name="hidden_accounts" required="false" desc="A list of accounts to hide from the user interface">cyrus</configlist> </configsection> </case> <case name="x509" desc="X509 Client Certificates"> <configsection name="params"> <configstring name="username_field" desc="The X509 field containing the username"> SSL_CLIENT_S_DN_CN</configstring> <configswitch name="password_source" desc="Where should Horde attempt to find user passwords?"> <case name="none" desc="Either no passwords are needed, or the postauthenticate hook will provide them."/> <case name="unified" desc="A single password will be used for all users. ONLY USE THIS IF YOU KNOW WHAT YOU ARE DOING! YOUR SYSTEM MUST BE PROPERLY SECURED!"> <configstring name="unified_password" desc="The password to use."> </configstring> </case> </configswitch> </configsection> </case> </configswitch> <configsection name="params"> <configboolean name="count_bad_logins" required="false" desc="Should Horde count the number of bad logins?">false</configboolean> <configboolean name="login_block" required="false" desc="Allow to block logins for certain users?">false</configboolean> <configinteger name="login_block_count" required="false" desc="After how many failed logins the login should be blocked? Setting 0 disables the feature">5</configinteger> <configinteger name="login_block_time" required="false" desc="How many minutes should the login be blocked? Setting 0 means permanent blocking">5</configinteger> </configsection> </configsection> <configsection name="tos"> <configheader>Terms of Service Agreement</configheader> <configstring name="file" required="false" desc="If you want to require users to accept certain terms before they can use the system, enter the path of the agreement file to display here."/> </configsection> </configtab> <configtab name="signup" desc="Signing Up"> <configsection name="signup"> <configheader>Sign Up Settings</configheader> <configswitch name="allow" desc="Allow non-registered users to register and provide a link on the login screen?">false <case name="true" desc="Yes"> <configswitch name="driver" desc="What signup driver should we use?"> <case name="Sql" desc="SQL Database"> <configsection name="params"> <configsql switchname="driverconfig"> <configstring name="table" required="false" desc="The name of the signup table in the database [horde_signups]"/> </configsql> </configsection> </case> </configswitch> <configstring name="email" desc="Specify an email address, if a message should be send to notify about new signups, including links for approving and denying." required="false"/> <configboolean name="approve" desc="Admin has to approve any user submitted registration requests? (WARNING: Setting to false would mean that every user who signs up would have automatic access to your horde system.)" required="false">true</configboolean> </case> <case name="false" desc="No" /> </configswitch> </configsection> </configtab> <configtab name="log" desc="Logging"> <configsection name="log"> <configheader>Logging Settings</configheader> <configswitch name="enabled" quote="false" desc="Should Horde log errors and other useful information?">true <case name="true" desc="Yes"> <configenum name="priority" desc="What level of messages should we log? Each level logs itself and all those that come before it: ALERT would only log alerts and emergencies, but DEBUG would log everything.">NOTICE <values> <value desc="EMERG">EMERG</value> <value desc="ALERT">ALERT</value> <value desc="CRIT">CRIT</value> <value desc="ERR">ERR</value> <value desc="WARN">WARNING</value> <value desc="NOTICE">NOTICE</value> <value desc="INFO">INFO</value> <value desc="DEBUG">DEBUG</value> </values> </configenum> <configstring name="ident" required="false" desc="What identifier should we use in the logs?">HORDE</configstring> <configstring name="time_format" required="false" desc="What time format should we use in the logs? (Acceptable formats are the inputs to PHP's date() function). Leave blank to use the default."></configstring> <configswitch name="type" desc="What log driver should we use?">file <case name="file" desc="File"> <configstring name="name" desc="Path to the log file">/tmp/horde.log</configstring> <configsection name="params"> <configboolean name="append" desc="Should new log entries be appended to an existing log file? If this is false, new log files will overwrite existing ones.">true</configboolean> <configswitch name="format" required="false" desc="What format should the log entries be in?">default <case name="custom" desc="Custom Template"> <configstring name="template" desc="The custom logging template to use."></configstring> </case> <case name="default" desc="Default" /> <case name="xml" desc="XML" /> </configswitch> </configsection> </case> <case name="stream" desc="PHP Stream"> <configstring name="name" desc="A valid-PHP stream interface to use for logging."></configstring> <configsection name="params"> <configswitch name="format" required="false" desc="What format should the log entries be in?">default <case name="custom" desc="Custom Template"> <configstring name="template" desc="The custom logging template to use."></configstring> </case> <case name="default" desc="Default" /> <case name="xml" desc="XML" /> </configswitch> </configsection> </case> <case name="syslog" desc="Syslog"> <configphp name="name" quote="false" desc="Syslog facility to use"/> </case> </configswitch> </case> <case name="false" desc="No"/> </configswitch> </configsection> <configboolean name="log_accesskeys" desc="Should Horde log statistics about used access keys? This is only useful for translators of the UI. You also need to set the log level to at least INFO.">false</configboolean> </configtab> <configtab name="prefs" desc="Preferences"> <configsection name="prefs"> <configheader>Preferences Settings</configheader> <configinteger name="maxsize" desc="The maximum size of a preferences entry (in bytes).">65535</configinteger> <configswitch name="driver" desc="What preferences driver should we use?">Sql <case name="Nosql" desc="NoSQL Database"> <configsection name="params"> <confignosql switchname="driverconfig" /> </configsection> </case> <case name="Sql" desc="SQL Database"> <configsection name="params"> <configsql switchname="driverconfig"> <configstring name="table" required="false" desc="The name of the preference table in the database [horde_prefs]"/> </configsql> </configsection> </case> <case name="File" desc="Files"> <configsection name="params"> <configstring name="directory" required="true" desc="Directory to store the preferences in."/> </configsection> </case> <case name="Ldap" desc="LDAP"> <configsection name="params"> <configldap switchname="driverconfig"> <configstring name="uid" desc="The username search key for finding preferences">uid</configstring> </configldap> </configsection> </case> <case name="Session" desc="PHP Sessions"/> <case name="KolabImap" desc="IMAP/Kolab Server" /> <case name="Imsp" desc="IMSP Server" /> </configswitch> </configsection> </configtab> <configtab name="alarms" desc="Alarms"> <configsection name="alarms"> <configheader>Alarms Settings</configheader> <configswitch name="driver" desc="What alarm storage driver should we use?">Sql <case name="false" desc="None"/> <case name="Sql" desc="SQL Database"> <configsection name="params"> <configsql switchname="driverconfig"> <configstring name="table" required="false" desc="The name of the alarm table in the database [horde_alarms]"/> </configsql> <configinteger name="ttl" desc="How often should the applications be queried for new alarms, in seconds?">300</configinteger> </configsection> </case> </configswitch> </configsection> </configtab> <configtab name="group" desc="Groups"> <configsection name="group"> <configheader>Groups Settings</configheader> <configswitch name="driver" desc="What backend should we use for Horde Groups?">Sql <case name="Kolab" desc="Kolab"> <configsection name="params"> <configldap switchname="driverconfig"> <configstring name="gid" desc="The group search key">cn</configstring> <configstring name="memberuid" desc="Group membership field"> memberUid</configstring> <configswitch name="attrisdn" required="false" desc="Are the user member attributes returned from LDAP expected to be fully qualified DNs?">false <case name="false" desc="No"/> <case name="true" desc="Yes"> <configldapuser/> </case> </configswitch> <configlist name="newgroup_objectclass" desc="What objectclasses should a new group be member of? These objectclasses should cover the mail and gidnumber attributes as well as the group search key"> posixGroup,hordeGroup</configlist> <configstring name="writedn" desc="DN used to bind for creating and editing LDAP groups." required="false"/> <configstring name="writepw" desc="Password for bind DN." required="false"/> <configsection name="search"> <configswitch name="filter_type" desc="How to specify a filter for the group lists">objectclass <case name="objectclass" desc="One or more objectclass filters"> <configlist name="objectclass" desc="The objectclass filter used to search for groups. Can be a single objectclass or a list."> posixGroup</configlist> </case> <case name="filter" desc="A complete LDAP filter expression"> <configstring name="filter" desc="The LDAP RFC formatted filter used to search for groups."/> </case> </configswitch> </configsection> </configldap> </configsection> </case> <case name="Ldap" desc="LDAP"> <configsection name="params"> <configldap switchname="driverconfig"> <configstring name="gid" desc="The group search key">cn</configstring> <configstring name="memberuid" desc="Group membership field"> memberUid</configstring> <configswitch name="attrisdn" required="false" desc="Are the user member attributes returned from LDAP expected to be fully qualified DNs?">false <case name="false" desc="No"/> <case name="true" desc="Yes"> <configldapuser/> </case> </configswitch> <configlist name="newgroup_objectclass" desc="What objectclasses should a new group be member of? These objectclasses should cover the mail and gidnumber attributes as well as the group search key"> posixGroup,hordeGroup</configlist> <configstring name="writedn" desc="DN used to bind for creating and editing LDAP groups." required="false"/> <configstring name="writepw" desc="Password for bind DN." required="false"/> <configsection name="search"> <configswitch name="filter_type" desc="How to specify a filter for the group lists">objectclass <case name="objectclass" desc="One or more objectclass filters"> <configlist name="objectclass" desc="The objectclass filter used to search for groups. Can be a single objectclass or a list."> posixGroup</configlist> </case> <case name="filter" desc="A complete LDAP filter expression"> <configstring name="filter" desc="The LDAP RFC formatted filter used to search for groups."/> </case> </configswitch> </configsection> </configldap> </configsection> </case> <case name="Mock" desc="No Groups"/> <case name="Sql" desc="SQL"> <configsection name="params"> <configsql switchname="driverconfig" /> </configsection> </case> </configswitch> </configsection> </configtab> <configtab name="perms" desc="Permissions"> <configsection name="perms"> <configheader>Permissions Settings</configheader> <configswitch name="driver" desc="What backend should we use for Horde Permissions?">Sql <case name="Null" desc="Disable Permissions"/> <case name="Sql" desc="SQL"> <configsql switchname="driverconfig" /> </case> </configswitch> </configsection> </configtab> <configtab name="share" desc="Shares"> <configheader>Shares Settings</configheader> <configdescription>Shares are objects or lists that can be shared with other users, e.g. calendars that other users can be given read or write access to.</configdescription> <configsection name="share"> <configheader>Allow Sharing?</configheader> <configboolean name="no_sharing" required="false" desc="Prevent users from editing permissions on their shares. This will keep a user from granting other users (or guests) access to their address book, notebook, calendar, etc.">false</configboolean> <configboolean name="auto_create" required="false" desc="Automatically create personal default shares for any users that don't own any shares?">true</configboolean> <configboolean name="world" required="false" desc="If you enable this option, users will be able to share their resources with all (authenticated and guest) users on the system.">true</configboolean> <configboolean name="any_group" required="false" desc="If you enable this option, users will be able to share their resources with any group, regardless of whether or not they are a member. If you disable it, users will only be able to share their resources with groups they are members of.">false</configboolean> <configboolean name="hidden" required="false" desc="If you enable this option, the shares that a user has access to will NOT be displayed automatically, but only if the user subscribed to them.">false</configboolean> <configheader>Share Caching</configheader> <configdescription>Enabling share caching improves performance because the share backend will only be queried once per session. But it also increases the users' session sizes, and share changes won't take effect before the users log in the next time.</configdescription> <configboolean name="cache" required="false" desc="Enable share caching?">false</configboolean> <configheader>Shares Driver</configheader> <configdescription> You can use different driver types for the Horde Share system. The default driver is the SQL-NG driver. </configdescription> <configenum name="driver" desc="What backend should we use for Horde Shares?">Sqlng <values> <value desc="IMAP/Kolab">Kolab</value> <value desc="Next-Generation SQL">Sqlng</value> <value desc="SQL">Sql</value> </values> </configenum> </configsection> </configtab> <configtab name="cache" desc="Caching"> <configsection name="cache"> <configheader>Caching Settings</configheader> <configinteger name="default_lifetime" desc="How long, in seconds, should data be cached by default?">86400</configinteger> <configswitch name="driver" desc="If you want to enable the Horde Cache, select a driver here. This is used to speed up portions of Horde by storing commonly processed objects.">File <case name="Null" desc="Don't cache any data (NOT RECOMMENDED)"/> <case name="Apc" desc="Use the APC cache (NOT RECOMMENDED)"> <configdescription> APC is not recommended for general purpose caching as it is not persistent and the size of the cached data for even a small installation (25+ users) will likely exceed the default APC storage size. </configdescription> <configsection name="params"> <configstring name="prefix" required="false" desc="The prefix to use for cache entries."/> </configsection> </case> <case name="File" desc="Store data in filesystem"> <configsection name="params"> <configstring name="dir" required="false" desc="The location to store the cached files"/> <configinteger name="sub" required="false" desc="If non-zero, the number of subdirectories to create to store the file (see, e.g., http://php.net/manual/en/ref.session.php#ini.session.save-path). When creating the directory tree, the md5sum of the cache id will be used. Thus, each level of the tree will have up to 16 subdirectories named [0-9a-f].">0</configinteger> <configstring name="prefix" required="false" desc="The filename prefix to use for the cache files."/> </configsection> </case> <case name="Hashtable" desc="Use a Distributed Hash Table server"> <configsection name="params"> <configstring name="prefix" required="false" desc="The prefix to use for cache entries."/> </configsection> </case> <case name="Nosql" desc="NoSQL-based cache storage"> <configsection name="params"> <confignosql switchname="driverconfig" /> </configsection> </case> <case name="Sql" desc="SQL-based cache storage (NOT RECOMMENDED)"> <configdescription> SQL is not recommended for caching as the overhead required to store/retreive the data cancels much of the benefit of caching. </configdescription> <configsection name="params"> <configsql switchname="driverconfig"> <configstring name="table" required="false" desc="The name of the cache table in the database [horde_cache]"/> </configsql> </configsection> </case> <case name="Xcache" desc="Use the xCache cache (NOT RECOMMENDED)"> <configdescription> xCache is not recommended for general purpose caching as it is not persistent and the size of the cached data for even a small installation (25+ users) will likely exceed the default xCache storage size. </configdescription> <configsection name="params"> <configstring name="prefix" required="false" desc="The prefix to use for cache entries."/> </configsection> </case> </configswitch> <configswitch name="use_memorycache" required="false" desc="Use a separate memory cache driver to store data in memory? If data is not found in this driver, we will fall back to accessing the persistent backend. This setting has no effect if already using a memory caching backend."> <case name="" desc="None"/> <case name="Apc" desc="APC"/> <case name="Eaccelerator" desc="eAccelerator"/> <case name="Hashtable" desc="Hashtable"/> <case name="Xcache" desc="xCache"/> </configswitch> </configsection> <configheader>CSS Caching</configheader> <configdescription> CSS caching packages all stylesheets used in a page into a single file sent to the browser. It also allows compression and optimization of this file to reduce the data size. Caching reduces server load, speeds up the user's browsing experience, and is HIGHLY RECOMMENDED. </configdescription> <configswitch name="cachecss" desc="Cache CSS?">false <case name="false" desc="No"> <configsection name="cachecssparams"> <configboolean name="url_version_param" desc="Add version information to CSS URLs?">true</configboolean> </configsection> </case> <case name="true" desc="Yes"> <configsection name="cachecssparams"> <configswitch name="driver" desc="How should we store the cached data?"> <case name="filesystem" desc="Filesystem (recommended)"> <configdescription> For filesystem caching to work, the "static" directory in the horde base must be writable by the user the web server is running as. If running Horde in a cluster (or behind a single web frontend), to use filesystem caching it is best to have every PHP backend server have access to a shared drive that is visible and mounted to the "static" directory on the web frontend. (NOTE: if you manually change the CSS files, you will need to manually delete the cached CSS static files to see the changes.) </configdescription> </case> <case name="horde_cache" desc="Horde Cache"> <configdescription> <strong>Requires a configured Horde caching backend.</strong> This method is STRONGLY DISCOURAGED. Browsers will likely cache this data and ignore updates, even though we append a "cache-busting" unique version parameter to the URL. You almost certainly want to use 'filesystem' instead. </configdescription> </case> </configswitch> <configboolean name="filemtime" desc="Expire cache if the modification time of a CSS file has changed? This setting is useful for development installations. It should not be used in production environments, as it requires a filestat of every CSS file loaded on a page">false</configboolean> <configinteger name="lifetime" desc="Lifetime of the cached files, in seconds.">86400</configinteger> </configsection> </case> </configswitch> <configheader>Javascript Caching</configheader> <configdescription> Javascript caching packages all static javascript files used in a page into more efficient chunks to send to the browser. It also allows compression and optimizations of this file to reduce the data size. Caching reduces server load, speeds up the user's browsing experience, and is HIGHLY RECOMMENDED. </configdescription> <configswitch name="cachejs" desc="Cache javascript?">false <case name="false" desc="No"> <configsection name="cachejsparams"> <configboolean name="url_version_param" desc="Add version information to javascript URLs?">true</configboolean> </configsection> </case> <case name="true" desc="Yes"> <configsection name="cachejsparams"> <configswitch name="driver" desc="How should we store the cached data?"> <case name="filesystem" desc="Filesystem (recommended)"> <configdescription> For filesystem caching to work, the "static" directory in the horde base must be writable by the user the web server is running as. If running Horde in a cluster (or behind a single web frontend), to use filesystem caching it is best to have every PHP backend server have access to a shared drive that is visible and mounted to the "static" directory on the web frontend. </configdescription> </case> <case name="horde_cache" desc="Horde Cache"> <configdescription> <strong>Requires a configured Horde caching backend.</strong> This method is STRONGLY DISCOURAGED. Browsers will likely cache this data and ignore updates, even though we append a "cache-busting" unique version parameter to the URL. You almost certainly want to use 'filesystem' instead. </configdescription> </case> </configswitch> <configswitch name="compress" desc="How should we compress the cached files?">php <case name="none" desc="No compression" /> <case name="closure" desc="Google Closure Compiler (Best compression, slowest speed)"> <configstring name="javapath" desc="The path to the Java application launcher.">/opt/java/jre/bin/java</configstring> <configstring name="closurepath" desc="The path to the Closure compiler .jar file"></configstring> <configstring name="cmdline" required="false" desc="Any additional command line arguments to use."></configstring> </case> <case name="php" desc="Built-in compressor (Medium compression, good speed)" /> <case name="uglifyjs" desc="UglifyJS (NodeJS compressor; good compression, good speed)"> <configstring name="uglifyjspath" desc="The path to the uglifyjs binary"></configstring> <configstring name="uglifyjscmdline" desc="The command line options to use">-c</configstring> </case> <case name="yui" desc="YUI Compressor (Best compression, slowest speed)"> <configstring name="javapath" desc="The path to the Java application launcher.">/opt/java/jre/bin/java</configstring> <configstring name="yuipath" desc="The path to the YUI compressor .jar file"></configstring> <configstring name="cmdline" required="false" desc="Any additional command line arguments to use."></configstring> </case> </configswitch> <configinteger name="lifetime" desc="Lifetime of the cached files, in seconds.">604800</configinteger> </configsection> </case> </configswitch> <configheader>Theme Caching</configheader> <configdescription> Theme caching optimizes display of themed elements. Caching reduces server load (specifically by dramatically reducing filesystem access), and is HIGHLY RECOMMENDED. <strong>Requires a configured Horde caching backend.</strong> </configdescription> <configswitch name="cachethemes" desc="Cache themes?">false <case name="false" desc="No" /> <case name="true" desc="Yes"> <configsection name="cachethemesparams"> <configswitch name="check" desc="The method to use to check for updated theme information.">appversion <case name="appversion" desc="Application versions"> <configdescription> The theme cache will be updated only when a new Horde version is installed. This is the RECOMMENDED setting for most installations. </configdescription> </case> <case name="none" desc="None"> <configdescription> The theme cache is never checked for consistency. Once created, it will be used until the cache entry expires. </configdescription> </case> </configswitch> <configinteger name="lifetime" desc="Lifetime of the cached files, in seconds.">604800</configinteger> </configsection> </case> </configswitch> </configtab> <configtab name="lock" desc="Locking"> <configsection name="lock"> <configheader>Locking Settings</configheader> <configswitch name="driver" desc="If you want to enable resource locking you must choose a driver here.">Sql <case name="Null" desc="Disable Horde Locks"/> <case name="Nosql" desc="NoSQL-based locking"> <configsection name="params"> <confignosql switchname="driverconfig" /> </configsection> </case> <case name="Sql" desc="SQL-based locking"> <configsection name="params"> <configsql switchname="driverconfig"> <configstring name="table" required="false" desc="The name of the locking table in the database [horde_locks]"/> </configsql> </configsection> </case> </configswitch> </configsection> </configtab> <configtab name="token" desc="Tokens"> <configsection name="token"> <configheader>Tokens Settings</configheader> <configinteger name="timeout" required="false" desc="The period (in seconds) after which an id is purged"/> <configswitch name="driver" desc="If you want to enable Form Tokens, select a driver here. This is used by the Horde::Form:: API and some other parts of Horde to ensure that a form can only be submitted once.">Sql <case name="Null" desc="Disable Form Tokens"/> <case name="File" desc="Local filesystem token storage"> <configsection name="params"> <configstring name="token_dir" required="false" desc="The directory where to keep token files"/> </configsection> </case> <case name="Nosql" desc="NoSQL-based token storage"> <configsection name="params"> <confignosql switchname="driverconfig" /> </configsection> </case> <case name="Sql" desc="SQL-based token storage"> <configsection name="params"> <configsql switchname="driverconfig"> <configstring name="table" required="false" desc="The name of the tokens table in the database [horde_tokens]"/> </configsql> </configsection> </case> </configswitch> </configsection> </configtab> <configtab name="history" desc="History"> <configsection name="history"> <configheader>History Settings</configheader> <configswitch name="driver" desc="If you want to enable history tracking, select a driver here. This is required by various subsystems.">Sql <case name="None" desc="Disable history"/> <case name="Nosql" desc="NoSQL-based history storage"> <configsection name="params"> <confignosql switchname="driverconfig" /> </configsection> </case> <case name="Sql" desc="SQL-based history storage"> <configsection name="params"> <configsql switchname="driverconfig" /> </configsection> </case> </configswitch> </configsection> </configtab> <configtab name="dav" desc="DAV"> <configsection name="davstorage"> <configheader>DAV Settings</configheader> <configswitch name="driver" desc="If you want to use CalDAV or CardDAV, select a driver here. Please note that History system needs to be enabled too.">Sql <case name="Null" desc="Disable CalDAV/CardDAV support"/> <case name="Sql" desc="SQL-based metadata storage"> <configsection name="params"> <configsql switchname="driverconfig"/> </configsection> </case> </configswitch> </configsection> </configtab> <configtab name="mailer" desc="Mailer"> <configsection name="mailer"> <configheader>Mailer Settings</configheader> <configswitch name="type" desc="What method should we use for sending mail?">sendmail <case name="null" desc="Disable mailing" /> <case name="sendmail" desc="Local sendmail binary"> <configsection name="params"> <configstring name="sendmail_path" required="false" desc="The location of the sendmail binary on the filesystem [/usr/sbin/sendmail]">/usr/lib/sendmail</configstring> <configstring name="sendmail_args" required="false" desc="Any extra parameters to pass to the sendmail or sendmail wrapper binary">-oi</configstring> <configstring name="sendmail_eol" required="false" desc="The end-of-line (EOL) sequence to use when piping the message to the sendmail binary. It is not possible to reliably auto-configure sendmail, so if your messages are being sent incorrectly, you should adjust this value (if blank, the system default is used)."></configstring> </configsection> </case> <case name="smtp" desc="SMTP server (HIGHLY RECOMMENDED)"> <configsection name="params"> <configstring name="host" required="false" desc="The server to connect to [localhost]"/> <configinteger name="port" required="false" desc="The port to connect to [25]. This is HIGHLY RECOMMENDED to be 587, the mail submission port. (RFC 6409/STD 72; sending mail via port 25 is DEPRECATED.)"/> <configenum name="secure" desc="The encryption to use to connect to the SMTP server.">tls <values> <value>none</value> <value>tls</value> <value>ssl</value> </values> </configenum> <configstring name="localhost" required="false" desc="The local hostname / domain [localhost]"/> <configswitch name="auth" desc="Authenticate to SMTP server?">false <case name="false" desc="No" /> <case name="true" desc="Yes"> <configdescription>SMTP Authentication requires a TLS connection. There is no need to configure the secure connection as it is always used by Horde.</configdescription> <configstring name="username" required="false" desc="The master username to use for SMTP auth. Will be used if username_auth is false OR for unauthenticated Horde accesses."/> <configboolean name="username_auth" required="false" desc="If authenticated, use the Horde authentication username?">true</configboolean> <configstring name="password" required="false" desc="The master password to use for SMTP auth. Will be used if password_auth is false OR for unauthenticated Horde accesses."/> <configboolean name="password_auth" required="false" desc="If authenticated, use the Horde authentication password?">true</configboolean> </case> </configswitch> <configboolean name="lmtp" required="false" desc="Is this an LMTP (Local Mail Transfer Protocol) server?">false</configboolean> </configsection> </case> </configswitch> </configsection> </configtab> <configtab name="vfs" desc="Virtual File Storage"> <configsection name="vfs"> <configheader>Virtual File Storage Settings</configheader> <configvfs baseconfig="true" switchname="type" default="Sql"/> </configsection> </configtab> <configtab name="session" desc="Session Handler"> <configsection name="sessionhandler"> <configheader>Session Handler Settings</configheader> <configdescription> <strong>Unless you are running Horde on a PHP cluster, there is NO reason to use any session handler backend other than Builtin (i.e. session data stored on local filesystem).</strong> </configdescription> <configswitch name="type" desc="What sessionhandler driver should we use?">Builtin <case name="Builtin" desc="Use the default PHP session handler (file-based by default)"> <configdescription> If you have configured a custom session extension in php.ini (such as native memcache sessions) then you should use this option. Horde doesn't force PHP to use the file-based session handler, so your php.ini settings settings will be deferred to. </configdescription> </case> <case name="External" desc="Use your own custom session handler"> <configsection name="params"> <configstring name="open" desc="Your open() function"/> <configstring name="close" desc="Your close() function"/> <configstring name="read" desc="Your read() function"/> <configstring name="write" desc="Your write() function"/> <configstring name="destroy" desc="Your destroy() function"/> <configstring name="gc" desc="Your gc() function"/> </configsection> </case> <case name="File" desc="Filesystem storage"> <configsection name="params"> <configstring name="path" desc="The path to save the session files in.">/tmp/</configstring> </configsection> </case> <case name="HashTable" desc="Distributed Hash Table"> <configsection name="params"> <configswitch name="track" required="false" desc="Keep track of active session information? Tracking requires extra load to maintain.">false <case name="false" desc="No" /> <case name="true" desc="Yes" /> </configswitch> </configsection> </case> <case name="Nosql" desc="NoSQL Database"> <configsection name="params"> <confignosql switchname="driverconfig" /> </configsection> </case> <case name="Sql" desc="SQL Database"> <configsection name="params"> <configsql switchname="driverconfig"> <configstring name="table" required="false" desc="The name of the preference table in the database [horde_sessionhandler]"/> </configsql> </configsection> </case> </configswitch> <configboolean name="hashtable" desc="Use a distributed hash table to cache session information?">false</configboolean> </configsection> </configtab> <configtab name="proxy" desc="HTTP Proxy"> <configsection name="http"> <configsection name="proxy"> <configheader>HTTP Proxy Settings</configheader> <configdescription> If you need to use a proxy for fetching HTTP resources (feeds, security keys, external calendars or free/busy information, etc.), configure it here. </configdescription> <configstring name="proxy_host" required="false" desc="Proxy host"/> <configinteger name="proxy_port" required="false" desc="Proxy port"/> <configstring name="proxy_user" required="false" desc="Proxy user if necessary"/> <configstring name="proxy_pass" required="false" desc="Proxy password"/> </configsection> </configsection> </configtab> <configtab name="spell" desc="Spell Checker"> <configsection name="spell"> <configheader>Spell Checker Settings</configheader> <configswitch name="driver" required="false" desc="Choose a Spell Checking backend"> <case name="" desc="None" /> <case name="aspell" desc="aspell (command line)"> <configsection name="params"> <configstring name="path" required="false" desc="Enter the location of the aspell binary" /> </configsection> </case> </configswitch> </configsection> </configtab> <configtab name="gnupg" desc="GnuPG"> <configsection name="gnupg"> <configheader>GnuPG Settings</configheader> <configstring name="path" required="false" desc="If you want users to have the option of using the GNU Privacy Guard program to decrypt/encrypt PGP files, enter the location of the 'gpg' binary here. If this is empty this feature will be disabled. Additional command line arguments, if needed locally (e.g. extensions), can be added at the end of this entry."/> <configmultienum name="keyserver" required="false" desc="The address of the public PGP keyserver(s) to use.">pool.sks-keyservers.net <values> <value>pool.sks-keyservers.net</value> <value>subkeys.pgp.net</value> <value>pgp.mit.edu</value> </values> </configmultienum> <configinteger name="timeout" required="false" desc="The timeout for connecting to the PGP keyserver. Timeouts are not supported on all systems.">10</configinteger> </configsection> </configtab> <configtab name="openssl" desc="OpenSSL"> <configsection name="openssl"> <configheader>OpenSSL Settings</configheader> <configstring name="cafile" required="false" desc="The location of the root certificates bundle, e.g. /etc/ssl/certs. See http://www.php.net/manual/en/openssl.cert.verification.php for details."/> <configstring name="path" required="false" desc="The location of the OpenSSL binary on your system, e.g. /usr/bin/openssl. This program is REQUIRED to import personal S/MIME certificate information, as there is no native PHP function that can read pkcs12 files."/> </configsection> </configtab> <configtab name="themes" desc="Themes"> <configheader>Theme Settings</configheader> <configboolean name="nobase64_img" required="false" desc="Always send full URLs for image data? By default, Horde will send image data within the page itself if the browser supports it. This eliminates the need for additional server connections to grab the image data, at the expense of slightly larger page sizes.">false</configboolean> </configtab> <configtab name="image" desc="Image Manipulation"> <configsection name="image"> <configheader>Image Manipulation Settings</configheader> <configswitch name="driver" description="What driver should we use for manipulating images?">false <case name="false" desc="None"/> <case name="Imagick" desc="The PECL Imagick Library (recommended)"/> <case name="Im" desc="Imagemagick"> <configstring name="convert" desc="Path to the 'convert' binary"/> <configstring name="identify" desc="Path the 'identify' binary"/> </case> <case name="Gd" desc="The PHP GD2 extensions (not recommended)"/> </configswitch> </configsection> <configsection name="exif" desc="Image Metadata"> <configheader>Image Metadata Driver Settings</configheader> <configswitch name="driver" description="What driver should we use for obtaining image metadata?">Bundled <case name="Exiftool" desc="Exiftool (recommended)"> <configsection name="params"> <configstring name="exiftool" desc="Path to the exiftool binary on your system"></configstring> </configsection> </case> <case name="Php" desc="Native PHP functions" /> <case name="Bundled" desc="Bundled implementation in PHP" /> </configswitch> </configsection> </configtab> <configtab name="mime" desc="MIME Detection"> <configsection name="mime"> <configheader>MIME Detection Settings</configheader> <configstring name="magic_db" required="false" desc="Location of the MIME magic database. This only needs to be set if PHP cannot auto-determine the value (the output from the test script will clearly indiciate if this is an issue)."/> </configsection> </configtab> <configtab name="geoip" desc="Country Lookup"> <configsection name="geoip"> <configheader>Country Lookup Settings</configheader> <configstring name="datafile" required="false" desc="Horde, by default, can do Hostname -> Country lookup using the top level domain (e.g. 'uk', 'de') of the hostname. However, many popular top level domains (e.g. 'com', 'net') span more than one country. In these instances, Horde can use the MaxMind GeoIP Hostname to Country lookup to try to determine the correct country. To activate this functionality, the geoip PECL extension must be installed. If that extension doesn't exist, Horde can use a PHP only method of querying the database if the GeoIP.dat country database is present on your local system. This file can be downloaded free of charge from http://www.maxmind.com/download/geoip/database/. If this database is present, specify the full path name to the database below. If empty, the GeoIP lookup will not be performed."/> </configsection> </configtab> <configtab name="timezone" desc="Timezone Lookup"> <configsection name="timezone"> <configheader>Timezone Lookup Settings</configheader> <configstring name="location" required="false" desc="Horde may lookup timezone information from a global timezone database, also known as Olson database. You can enter any http://, ftp:// or file:// location here.">ftp://ftp.iana.org/tz/tzdata-latest.tar.gz</configstring> </configsection> </configtab> <configtab name="problems" desc="Problem Reporting"> <configsection name="problems"> <configheader>Problem Reporting Settings</configheader> <configswitch name="tickets" desc="If a ticket system with a tickets/addTicket API method is present, should we create tickets for problem reports instead of emailing them?">false <case name="true" desc="Yes"> <configphp name="ticket_params" desc="Enter as a PHP array any additional arguments for the created ticket (queue, state, priority, etc). Example for Whups: array('queue' => 2, 'state' => 1, 'priority' => 1, 'type' => 1). You will need to look up the appropriate IDs in Whups's database, or whatever is appropriate for the ticket system you are using.">array()</configphp> </case> <case name="false" desc="No"> <configstring name="email" desc="Where should problem report emails be sent?">webmaster@example.com</configstring> <configstring name="maildomain" desc="If Horde cannot determine a user's email address, this domain will be appended to their username.">example.com</configstring> <configstring name="username" required="false" desc="If requiring SMTP authentication without a global SMTP user (in section "Mailer" and allowing problem reporting for not authenticated users (in section "Menu Settings"), what username should be use for SMTP authentication?"/> <configstring name="password" required="false" desc="The password to use"/> </case> </configswitch> <configboolean name="attachments" required="false" desc="Allow users to upload file attachments to the problem report?">true</configboolean> </configsection> </configtab> <configtab name="menu" desc="Menu"> <configheader>Menu Settings</configheader> <configsection name="menu"> <configsection name="links"> <configenum name="help" desc="Should we display help links in the menu?">all <values> <value desc="All users">all</value> <value desc="Authenticated users">authenticated</value> <value desc="Never">never</value> </values> </configenum> <configenum name="prefs" desc="Should we display preferences links in the menu? You still need to configure a preference backend in the "Preferences" section.">authenticated <values> <value desc="All users">all</value> <value desc="Authenticated users">authenticated</value> <value desc="Never">never</value> </values> </configenum> <configenum name="problem" desc="Should we display problem reporting links in the menu?">all <values> <value desc="All users">all</value> <value desc="Authenticated users">authenticated</value> <value desc="Never">never</value> </values> </configenum> <configenum name="login" desc="Should we display a login link in the menu when not logged in?">all <values> <value desc="All users">all</value> <value desc="Never">never</value> </values> </configenum> <configenum name="logout" desc="Should we display a logout link in the menu when logged in?">authenticated <values> <value desc="Authenticated users">authenticated</value> <value desc="Never">never</value> </values> </configenum> <configenum name="login" desc="Should we display a login link in the menu when not logged in?">all <values> <value desc="All users">all</value> <value desc="Never">never</value> </values> </configenum> <configenum name="logout" desc="Should we display a logout link in the menu when logged in?">authenticated <values> <value desc="Authenticated users">authenticated</value> <value desc="Never">never</value> </values> </configenum> </configsection> </configsection> </configtab> <configtab name="block" desc="Portal Blocks"> <configsection name="portal"> <configheader>Portal Blocks Settings</configheader> <configmultienum name="fixed_blocks" required="false" desc="Which blocks should always be displayed in the portal?"> <values> <configspecial application="horde" name="blocks" /> </values> </configmultienum> </configsection> <configheader>Fortune Configuration</configheader> <configsection name="fortune"> <configstring name="exec_path" required="false" desc="Path to fortune executable, e.g. /usr/games/fortune"/> </configsection> <configheader>Account Info Configuration</configheader> <configsection name="accounts"> <configswitch name="driver" desc="What driver should we use?">null <case name="null" desc="None"/> <case name="localhost" desc="Localhost"> <configsection name="params"> <configstring name="quota_path" desc="Path to the quota program"> /usr/bin/quota</configstring> <configstring name="grep_path" desc="Path to the grep program"> /bin/grep</configstring> <configboolean name="translateMountPoint" desc="Should we translate home directories to mount point device names?">false</configboolean> <configstring name="translationTable" desc="File to translate directory names to mount point device names?">/etc/mtab</configstring> </configsection> </case> <case name="finger" desc="Finger"> <configsection name="params"> <configstring name="finger_path" desc="Path to the finger program">/usr/bin/finger</configstring> <configstring name="host" desc="Host to request finger information from" required="false"/> </configsection> </case> <case name="ldap" desc="LDAP"> <configsection name="params"> <configldap switchname="driverconfig"> <configstring name="attr" desc="LDAP attribute to search on"> uid</configstring> <configboolean name="strip" desc="Strip domain from user name?">false</configboolean> </configldap> </configsection> </case> <case name="kolab" desc="Kolab (LDAP)"> <configsection name="params"> <configdescription>This will use the parameters set in the Kolab Groupware Server tab. You must enable Kolab integration for this to work.</configdescription> <configstring name="attr" desc="LDAP attribute to search on">uid</configstring> <configboolean name="strip" desc="Strip domain from user name?">false</configboolean> </configsection> </case> </configswitch> </configsection> </configtab> <configtab name="user" desc="User Capabilities and Constraints"> <configsection name="user"> <configheader>User Capabilities and Constraints</configheader> <configboolean name="verify_from_addr" desc="If users are adding new From: addresses to their identities, should we send them a confirmation message to verify that the email address is really theirs?">false</configboolean> <configswitch name="select_view" desc="Allow user to select the application view mode on login?">true <case name="true" desc="Yes"/> <case name="false" desc="No"> <configenum name="force_view" desc="Force an application view to be used for all users?"> <values> <value desc="None (use user's browser and application preferences)"></value> <value desc="Basic">basic</value> <value desc="Dynamic">dynamic</value> <value desc="Mobile">mobile</value> <value desc="Smartphone">smartmobile</value> </values> </configenum> </case> </configswitch> </configsection> </configtab> <configtab name="api" desc="API Keys"> <configsection name="api"> <configheader>API Keys Settings</configheader> <configstring name="googlemaps" desc="Google Maps API Key" required="false"/> <configstring name="googlesafebrowsing" desc="Google Safe Browsing API Key" required="false"/> <configstring name="googlesearch" desc="Google AJAX Search API Key" required="false"/> <configstring name="bing" desc="Bing Maps API Key" required="false" /> </configsection> <configsection name="facebook"> <configheader>Facebook Integration Settings</configheader> <configdescription>If you want to allow your users to interact with their Facebook profiles, and you've set up the necessary settings on Facebook, you can enter the key and secret here. See http://wiki.horde.org/Doc/Admin/Config/Horde/Facebook for details.</configdescription> <configswitch name="enabled">false <case name="false" desc="Disabled" /> <case name="true" desc="Enabled"> <configstring name="id" desc="Application API ID"></configstring> <configstring name="secret" desc="Application Secret"></configstring> </case> </configswitch> </configsection> <configsection name="twitter"> <configheader>Twitter Integration Settings</configheader> <configdescription>If you want to allow your users to interact with their Twitter account, enable this section. You must setup an application on Twitter and obtain the OAuth secret and key from Twitter. See http://wiki.horde.org/Doc/Admin/Config/Horde/Twitter for details. </configdescription> <configswitch name="enabled">false <case name="false" desc="Disabled" /> <case name="true" desc="Enabled"> <configstring name="key" required="false" desc="OAuth Consumer Key:"></configstring> <configstring name="secret" required="false" desc="OAuth Consumer Secret:"></configstring> </case> </configswitch> </configsection> <configheader>Url Shortening</configheader> <configenum name="urlshortener" desc="Should Horde use a URL shortening service? This will be used when submitting URLs to social network providers."> <values> <value desc="None">false</value> <value desc="TinyUrl">TinyUrl</value> </values> </configenum> <configsection name="weather"> <configheader>Weather Services</configheader> <configdescription>If you want to provide weather information to your users you must select a provider and provide your API keys.</configdescription> <configswitch name="provider">false <case name="false" desc="None" /> <case name="WeatherUnderground" desc="Weather Underground - Recommended, but relatively low daily limits for free accounts."> <configsection name="params"> <configstring name="key" desc="API Key. For information on registration and obtaining an API key for this driver, see http://www.wunderground.com/weather/api/."> </configstring> <configinteger name="lifetime" desc="Lifetime of the cached weather information, in seconds.">21600 </configinteger> </configsection> </case> <case name="Wwo" desc="World Weather Online API. Free, requires registration."> <configsection name="params"> <configstring name="key" desc="API Key. For information on registration and obtaining an API key for this driver, see http://worldweatheronline.com"></configstring> <configenum name="apiversion" desc="Select the API version to use. See your WWO registration details if you are not sure which to choose.">1 <values> <value>1</value> <value>2</value> </values> </configenum> <configinteger name="lifetime" desc="Lifetime of the cached weather information, in seconds.">21600 </configinteger> </configsection> </case> </configswitch> </configsection> </configtab> <configtab name="imap" desc="IMAP Server"> <configsection name="imap"> <configheader>IMAP Server Settings</configheader> <configdescription> If you intend to store user data like shares and groupware data on an IMAP server then you will need to ensure that the following fields correspond to your IMAP server setup. The IMAP groupware storage will use version 2 of the Kolab XML format. See http://wiki.kolab.org/Kolab_Format_Intro for details. </configdescription> <configswitch name="enabled" quote="false" desc="Use an IMAP server?">false <case name="false" desc="Disabled" /> <case name="true" desc="Enabled"> <configheader>IMAP Server Settings</configheader> <configstring name="server" desc="Server address">localhost</configstring> <configinteger name="port" desc="Server port">143</configinteger> <configenum name="secure" desc="The encryption to use to connect to the IMAP server.">tls <values> <value>none</value> <value>tls</value> <value>ssl</value> </values> </configenum> <configstring name="maildomain" desc="Default maildomain">example.com</configstring> <configboolean name="cache_folders" desc="Cache IMAP folders?" required="true">true</configboolean> </case> </configswitch> </configsection> </configtab> <configtab name="imsp" desc="IMSP Server"> <configsection name="imsp"> <configheader>IMSP Server Settings</configheader> <configdescription>If you plan to use any of Horde's IMSP server support, enable this option and configure the server settings below. Note that you must still configure/enable specific IMSP support in the appropriate section.</configdescription> <configswitch name="enabled">false <case name="false" desc="Disabled" /> <case name="true" desc="Enabled"> <configheader>IMSP Server Settings</configheader> <configstring name="server" desc="Server Address:">localhost</configstring> <configstring name="port" desc="Server port:">406</configstring> <configswitch name="auth_method" desc="The authentication method to use">Plaintext <case name="Plaintext" desc="Plaintext" /> <case name="CramMd5" desc="CRAM-MD5" /> <case name="Imtest" desc="Cyrus imtest"> <configstring name="socket" desc="Path to the directory that will hold the socket. (The socket will be named 'imsp_username.sck')."> /tmp/</configstring> <configstring name="command" desc="Path to imtest binary"> /cyrus/usr/cyrus/bin/imtest</configstring> <configenum name="auth_mechanism" description="What authentication method do you want to use with the imtest utility?"> <values> <value desc="Plaintext (LOGIN)">LOGIN</value> <value desc="GSSAPI">gssapi</value> </values> </configenum> </case> </configswitch> </case> </configswitch> </configsection> </configtab> <configtab name="kolab" desc="Kolab Server"> <configsection name="kolab"> <configheader>Kolab Server Settings</configheader> <configdescription> <strong>*** IF YOU HAVE NO IDEA WHAT KOLAB IS THEN YOU CAN SAFELY IGNORE THIS TAB ***</strong><br /> Kolab is in no way required for normal Horde usage. If, however, you intend to use Horde as a webclient for Kolab then you will need to ensure that the following fields correspond to those required by your Kolab installation. You can find some of the required values in the <code> $KOLAB_ROOT/etc/kolab/kolab.conf</code> configuration file. Please note that the old iCal/vCard storage format has been dropped in favour of the new XML storage format &amp; IMAP folder annotations; subsequently the Horde Kolab modules will only work with version 2 of the Kolab server.<br /> If you would like to find out more about Kolab then please visit the Kolab community website at http://www.kolab.org/ </configdescription> <configswitch name="enabled" quote="false" desc="Horde/Kolab integration status">false <case name="false" desc="Disabled" /> <case name="true" desc="Enabled"> <configheader>Kolab LDAP Server Settings</configheader> <configsection name="ldap"> <configstring name="server" desc="Server address:">localhost</configstring> <configinteger name="port" desc="Server port:">389</configinteger> <configstring name="basedn" desc="Base DN:">dc=example,dc=com</configstring> <configstring name="phpdn" desc="Search DN:">cn=nobody,cn=internal,dc=example,dc=com</configstring> <configstring name="phppw" desc="Search Password:"/> </configsection> <configheader>Kolab Cyrus IMAP Server Settings</configheader> <configsection name="imap"> <configstring name="server" desc="Server address:">localhost</configstring> <configinteger name="port" desc="Server port:">143</configinteger> <configinteger name="sieveport" desc="Sieve port:">2000</configinteger> <configstring name="maildomain" desc="Default maildomain:">example.com</configstring> <configboolean name="cache_folders" desc="Cache IMAP folders:" required="true">true</configboolean> </configsection> <configheader>Kolab SMTP Server Settings</configheader> <configsection name="smtp"> <configstring name="server" desc="Server address:">localhost</configstring> <configinteger name="port" desc="Server port:">25</configinteger> </configsection> <configheader>Kolab Free/Busy Application Settings</configheader> <configsection name="freebusy"> <configdescription> Enter the leading part of the URL to the Kolab Free/Busy application here. This will usually be "https://localhost/freebusy" but if you installed it so that you reach the application at "https://freebusy.example.org" then you would enter "https://freebusy.example.org". The URL "https://freebusy.example.org/freebusy" would thus need the setting "https://freebusy.example.org/freebusy". </configdescription> <configstring name="server" desc="Application address:">https://localhost/freebusy</configstring> </configsection> </case> </configswitch> </configsection> </configtab> <configtab name="hashtable" desc="Distributed Hash Table"> <configsection name="hashtable"> <configdescription>A distributed hash table is a way of sharing data across multiple servers by associating a piece of data with a static key. It is useful for cache-like operations, since it is usually much faster to set and retrieve the data from the hash table than the underlying data storage driver.</configdescription> <configswitch name="driver" desc="What backend should we use for the distributed hash table?">none <case name="none" desc="None" /> <case name="Memcache" desc="Memcache Server"> <configsection name="params"> <configlist name="hostspec" required="false" desc="What hostname(s) is the memcache server(s) running on, or what is the name of the system DSN(s)? Specify multiple servers by separating with commas.">localhost</configlist> <configlist name="port" required="false" desc="Port(s) the memcache server(s) are running on. If more than one host is used, specify ports for respective servers, separated by commas.">11211</configlist> <configlist name="weight" required="false" desc="The weight to give each memcache server. If more than one host is used, specify weights for respective servers, separated by commas."></configlist> <configboolean name="persistent" required="false" desc="Enable persistent connections to server(s).">false</configboolean> <configswitch name="compression" quote="false" desc="Enable compression when storing entries on server.">false <case name="false" desc="No" /> <case name="true" desc="Yes"> <configinteger name="c_threshold" required="false" desc="The threshold length before compressing data.">0</configinteger> </case> </configswitch> <configphp name="prefix" required="false" desc="Prefix to use for the memcache keys. PHP expressions are allowed."></configphp> <configphp name="large_items" required="false" desc="Memcache natively supports data of limited length only (default: 1 MB). If this option is true, Horde will transparently work around this limitation.">true</configphp> </configsection> </case> <case name="Predis" desc="Redis Server"> <configsection name="params"> <configswitch name="protocol" desc="Protocol used to connect to the Redis server?">tcp <case name="unix" desc="UNIX Sockets"> <configstring name="socket" required="true" desc="Location of UNIX socket"/> </case> <case name="tcp" desc="TCP/IP"> <configlist name="hostspec" required="false" desc="Hostname(s) the Redis server(s) are running on, or the name of the system DSN(s). Specify multiple servers by separating with commas.">localhost</configlist> <configlist name="port" required="false" desc="Port(s) the Redis server(s) are running on. If more than one host is used, specify ports for respective servers, separated by commas.">6379</configlist> <configswitch name="replication" desc="Replication Protocol">none <case name="none" desc="None" /> <case name="sentinel" desc="Sentinel"> <configstring name="service" required="true" desc="Name of the Service">mymaster</configstring> </case> </configswitch> </case> </configswitch> <configstring name="password" required="false" desc="Password to authenticate to the Redis server with."/> <configboolean name="persistent" required="false" desc="Enable persistent connections to Redis server(s)?">false</configboolean> </configsection> </case> </configswitch> </configsection> </configtab> <configtab name="activesync" desc="ActiveSync"> <configsection name="activesync"> <configdescription>The use of ActiveSync in the United States is PROHIBITED due to patent issues. If you are NOT in the United States, or you have a license to use ActiveSync, you may enable ActiveSync below and create an alias on your webserver to redirect /Microsoft-Server-ActiveSync to /horde/rpc.php. See http://wiki.horde.org/ActiveSync for more information. Please note that History system needs to be enabled too. </configdescription> <configswitch name="enabled" quote="false" desc="Enable ActiveSync server?">false <case name="false" desc="Disabled" /> <case name="true" desc="Enabled"> <configheader>Storage</configheader> <configdescription>ActiveSync needs to store information about device properties and state data such as syncronization keys and hierarchy data. Choose the storage backend to use.</configdescription> <configswitch name="storage">Sql <case name="Nosql" desc="NoSQL Database"> <configsection name="params"> <confignosql switchname="driverconfig" /> </configsection> </case> <case name="Sql" desc="SQL Database"> <configsection name="params"> <configsql switchname="driverconfig" /> </configsection> </case> </configswitch> <configheader>Capabilities</configheader> <configboolean name="emailsync" desc="Enable Email support?">true </configboolean> <configenum name="version" desc="What is the highest version of EAS that Horde should support? All versions are backwards compatible so selecting a higher version also includes support for the lower versions as well. Set to EAS 14.1 unless you have a good reason not to.">14.1 <values> <value desc="Exchange 2003 (EAS 2.5)">2.5</value> <value desc="Exchange 2007 (EAS 12.0)">12</value> <value desc="Exchange 2007sp1 (EAS 12.1)">12.1</value> <value desc="Exchange 2010sp1 (EAS 14.0)">14</value> <value desc="Exchange 2010sp2 (EAS 14.1)">14.1</value> </values> </configenum> <configheader>Authentication</configheader> <configdescription>ActiveSync can be configured to authenticate against Horde using either HTTP Basic authentication, X509 client certificates, or both. HTTP Basic will authenticate the credentials passed from the client against the configured Horde authentication backend. If client certificates are used you will need to properly configure your webserver for this as well as provide some mechanism for using hordeauth with the IMAP server. See http://wiki.horde.org/ActiveSync for more details on client certificate authentication. If selecting both basic and client certificates, make sure you are not already using client certificate authentication in Horde; if client certificates are used for general Horde authentication then they must be used here as well. If unsure, select Basic. </configdescription> <configsection name="auth"> <configswitch name="type" desc="Select the authentication methods that should be supported.">basic <case name="basic" desc="HTTP Basic"/> <case name="cert" desc="Client Certificates"> <configsection name="params"> <configstring name="username_field" desc="The X509 field containing the username"> SSL_CLIENT_S_DN_CN</configstring> <configswitch name="password_source" desc="Where should Horde attempt to find user passwords?"> <case name="none" desc="Either no passwords are needed, or the postauthenticate hook will provide them."/> <case name="unified" desc="A single password will be used for all users. ONLY USE THIS IF YOU KNOW WHAT YOU ARE DOING! YOUR SYSTEM MUST BE PROPERLY SECURED!"> <configstring name="password" desc="The password to use."> </configstring> </case> </configswitch> </configsection> </case> <case name="basic_cert" desc="HTTP Basic with Client Certificates"> <configsection name="params"> <configstring name="username_field" desc="The X509 field containing the username"> SSL_CLIENT_S_DN_CN</configstring> <configswitch name="password_source" desc="Where should Horde attempt to find user passwords?"> <case name="none" desc="Either no passwords are needed, or the postauthenticate hook will provide them."/> <case name="unified" desc="A single password will be used for all users. ONLY USE THIS IF YOU KNOW WHAT YOU ARE DOING! YOUR SYSTEM MUST BE PROPERLY SECURED!"> <configstring name="password" desc="The password to use."> </configstring> </case> </configswitch> </configsection> </case> </configswitch> </configsection> <configheader>Autodiscovery</configheader> <configenum name="autodiscovery" desc="Some devices attempt to use an Autodiscovery service to configure the device's account using only the user's email address and password. For this to work you must create an alias on your webserver to point /autodiscover/autodiscover.xml to /horde/rpc.php. Also, Horde must be able to determine the user's username given the email address. Set the method you want Horde to use to attempt to determine this below. If this fails, the device will fall back to requiring manual account configuration. See http://wiki.horde.org/ActiveSync for more information"> <values> <value desc="Use the full email address as the username">full</value> <value desc="Use only the username - everything after and including the first @ will be stripped.">user</value> <value desc="Use a custom hook. You must create this hook in the hooks.php file.">hook</value> </values> </configenum> <configswitch name="outlookdiscovery" desc="Horde can answer Autodiscover requests from Microsoft Outlook clients to send configuration information for things like IMAP/POP3/SMTP servers. Should this be enabled? NOTE: This does not enable syncing between Horde and Microsoft Outlook!"> <case name="false" desc="No" /> <case name="true" desc="Yes"> <configsection name="hosts"> <configsection name="imap"> <configstring name="host" desc="IMAP host" required="false"></configstring> <configinteger name="port" desc="IMAP port" required="false"></configinteger> <configboolean name="ssl" desc="Use SSL?" /> </configsection> <configsection name="pop"> <configstring name="host" desc="POP3 host" required="false"></configstring> <configinteger name="port" desc="POP3 port" required="false"></configinteger> <configboolean name="ssl" desc="Use SSL?" /> </configsection> <configsection name="smtp"> <configstring name="host" desc="SMTP host"></configstring> <configinteger name="port" desc="SMTP port" required="false"></configinteger> <configboolean name="popauth" desc="Require Pop Auth?" required="false" /> <configboolean name="ssl" desc="Use SSL?" /> </configsection> </configsection> </case> </configswitch> <configheader>Logging</configheader> <configsection name="logging"> <configswitch name="type" desc="For debugging, it may be useful have a log of the Wbxml stream along with some other activesync-related data. If you want to do this, set this to either Per Device or Single File and enter the appropriate path. If detailed debug logging is not needed, set this to None.">false <case name="false" desc="None" /> <case name="perdevice" desc="Per Device"> <configstring name="path" desc="Path to custom log directory." /> <configenum name="level" desc="Should Horde include all the raw data in the Wbxml log stream? If set to Detailed, the entire raw content is logged. If set to Protocol, all protocol level detail is included, but any Wbxml tag content over 50 bytes is logged only as the size of the data." required="false">protocol <values> <value desc="Protocol">2</value> <value desc="Detailed">1</value> </values> </configenum> </case> <case name="onefile" desc="Single file"> <configstring name="path" desc="Log file name." /> </case> </configswitch> </configsection> <configsection name="ping"> <configheader>Ping Settings</configheader> <configdescription>The Heartbeat Interval specifies the length of time, in seconds, that the server SHOULD wait before notifying the client of changes in a folder on the server. These settings allow you to indicate the allowable range for this setting. Note that not all clients will request this information. NOTE: Some Android devices do not implement this correctly. If you plan on synching Android devices, you should make sure that this range is wide enough to allow Android's default of 470 seconds. </configdescription> <configswitch name="deviceping" desc="Allow devices to manage the heartbeat or force Horde to use a specific heartbeat for every device?">true <case name="true" desc="Device managed heartbeat"> <configinteger name="heartbeatmin" desc="The minimum number of seconds to wait before sending results. This value must be greater then zero."> 60</configinteger> <configinteger name="heartbeatmax" desc="The maximum number of seconds to wait before sending results. Note this value must not be greater then 3540 (59 minutes).">2700</configinteger> <configinteger name="heartbeatdefault" desc="If the client does not request a heartbeat interval, this interval will be used by default."> 480</configinteger> </case> <case name="false" desc="Forced heartbeat"> <configinteger name="forcedheartbeat" desc="The number of seconds to force the server to wait before sending PING results.">60 </configinteger> </case> </configswitch> <configinteger name="waitinterval" desc="How many seconds should elapse between checks for changes? Increasing this value will cause the server to wait longer between checks for changes during the heartbeat, essentially reducing the number of checks done during each heartbeat. Lowering this value will increase the number of checks that are down during each heartbeat.">15</configinteger> </configsection> </case> </configswitch> </configsection> </configtab> </configuration>
Simpan