imip-agent

docs/wiki/Configuration

1355:6975cdaac4a4
2017-10-20 Paul Boddie Simplify the interface of the rule periods computation function.
     1 = Configuration =     2      3 When deploying imip-agent, configuration of the way it integrates with     4 other software components must be performed. Once this has been done,     5 certain details are then carried forward into the configuration of imip-agent     6 itself.     7      8 == Configuring the Integration ==     9     10 The `conf` directory provides a selection of template configuration files    11 for different software components that may integrate with imip-agent. To    12 simplify the process of customising these files, a helper tool is provided    13 to apply configuration choices and to generate configuration files that may    14 then be deployed within the configuration of these other components.    15     16 Taking an example set of choices, the tool is run as follows:    17     18 {{{    19 conf/tools/configure.sh conf/configure.example outconf    20 }}}    21     22 This will generate parameterised versions of several files within `conf`    23 and place them in a similar directory structure within the newly-created    24 directory `outconf`, using the settings found in `conf/configure.example`.    25     26 It is recommended that the example definitions file be copied and edited,    27 and that each definition or choice in the new definitions file be adjusted    28 according to the specific needs of the deployment. A summary of the choices    29 are given below.    30     31 {{{#!table    32 '''Choice''' || '''Example Value''' || '''Description'''    33 ==    34 `MAIL_DOMAIN` || `example.com`    35 || The mail domain for which imip-agent will be handling messages    36 ==    37 `MAILBOX_DELIVERY` || `LocalSMTP`    38 || How messages are delivered to mailboxes, either using `LocalSMTP`    39 .. ([[../MailIntegration/LocalSMTP|local SMTP]]) or `LMTP`    40 .. ([[../MailIntegration/LMTP|LMTP]]) mechanisms    41 ==    42 `MAILBOX_DELIVERY_LMTP_GROUP` || `no`    43 || Whether a special lmtp group will be used even with local SMTP,    44 .. as discussed in the [[../SystemUsers|system users and groups]]    45 .. documentation    46 ==    47 `LMTP_SOCKET` || `/var/run/cyrus/socket/lmtp`    48 || The location of the LMTP socket used to communicate with a mail    49 .. storage solution (if LMTP is employed)    50 ==    51 `LOCAL_SYSTEM_USERS` || `no`    52 || Whether local system users are supported, as described in the    53 .. [[../MailIntegration/LocalSMTP|local SMTP]] documentation.    54 ==    55 `USER_DATABASE` || `Simple`    56 || How the database of calendar users is managed, either using `Simple`    57 .. ([[../MailIntegration/Simple|simple]]) or `LDAP`    58 .. ([[../MailIntegration/LDAP|LDAP]]) mechanisms    59 ==    60 <colspan="3"> ''LDAP-specific choices (for when calendar users are managed    61 using [[../MailIntegration/LDAP|LDAP]])''    62 ==    63 `LDAP_SCHEME` || `ldap`    64 || LDAP access mechanism, either using `ldap` or `ldaps`    65 ==    66 `LDAP_HOST` || `localhost`    67 ||<rowspan="2"> LDAP server connection details, with the port being omitted    68 .. unless a non-standard port has been chosen    69 ==    70 `LDAP_PORT` ||    71 ==    72 `LDAP_BASE_DN` || `"dc=example,dc=com"`    73 || Search criteria used in the selection of calendar users    74 ==    75 `LDAP_SERVICE_BIND_DN` || `"uid=imip-agent,ou=Special Users,dc=example,dc=com"`    76 ||<rowspan="2"> Credentials for the identity employed by imip-agent to connect    77 .. to the LDAP server    78 ==    79 `LDAP_SERVICE_PASSWORD` ||    80 }}}    81     82 The eventual destination of each of the customised files obviously depends on    83 the nature of the component such files will be configuring.    84     85 == Configuring the Software Itself ==    86     87 There are three levels of configuration in imip-agent:    88     89  * `config.sh` provides system-level and tool configuration    90  * `config.txt` provides the configuration of the software itself    91  * User preferences reside as files in separate user-specific directories    92     93 These files are by default installed into the `/etc/imip-agent` directory    94 and they can be changed in that location once the system is installed.    95     96 === System-Level and Tool Configuration ===    97     98 The `config.sh` file must indicate choices in the following areas:    99    100  * The [[../DataStore|data store]] type to be employed   101    102  * The [[../SystemUsers|system users and groups]] involved with running the   103  software and storing data   104    105 Since the `tools/install.sh` script depends on this configuration, changes   106 must be made to the file in the `tools/config.sh` location before installation   107 can occur.   108    109 {{{#!table   110 '''Setting''' || '''Example Value''' || '''Description'''   111 ==   112 `IMIP_AGENT_USER` || `imip-agent`   113 ||<rowspan="2"> Indicates the system user and group identity that is used   114 .. to run the software and access resources, decided when choosing a   115 .. strategy for [[../SystemUsers|system users and groups]]   116 ==   117 `IMIP_AGENT_GROUP` || `lmtp`   118 ==   119 `INSTALL_DIR` || `/var/lib/imip-agent`   120 ||<rowspan="3"> Installation locations for data, Web resources and   121 .. configuration respectively   122 ==   123 `WEB_INSTALL_DIR` || `/var/www/imip-agent`   124 ==   125 `CONFIG_DIR` || `/etc/imip-agent`   126 }}}   127    128 === Software Configuration ===   129    130 Any changes to filesystem locations may need to be incorporated into the   131 `config.txt` file, which is found in the `imiptools/config.txt` location of   132 the distribution. There is, however, no urgency in changing this file   133 before installation, and it can be edited in its installed location to   134 achieve the same effects.   135    136 The agent system configuration dictates how the software behaves, and the   137 `config.txt` file provides system-level settings (filesystem locations   138 and file permissions), service-level settings (e-mail address and Web site   139 choices), and default policies for users of the software.   140    141 === User Preferences ===   142    143 Although the software configuration in `config.txt` provides default policies,   144 users can choose to override these defaults by editing their own preferences.   145 The most convenient way of doing this is to use the profile page provided by   146 the [[../CalendarManager|management interface]].   147    148 The settings for the different policies are described in the   149 [[../Preferences|preferences guide]].