====== Installation ====== The preferred way of installing Icinga Web 2 is to use the official package repositories depending on which operating system and distribution you are running. But it is also possible to install Icinga Web 2 directly from source. ====== Installing Requirements ====== * A web server, e.g. Apache or nginx * PHP >= 5.3.0 w/ gettext and OpenSSL support * MySQL or PostgreSQL PHP libraries when using a database for authentication or storing user preferences into a database * LDAP PHP library when using Active Directory or LDAP for authentication * Icinga 1.x w/ Livestatus or IDO, Icinga 2 w/ Livestatus or IDO feature enabled ====== Installing Icinga Web 2 from Source ====== **Step 1: Getting the Source** First of all, you need to download the sources. Icinga Web 2 is available through a Git repository. You can clone this repository either via git or http protocol using the following URL, or can download from here:{{:unattended_installations:icingaweb2-06d9e41.tar.gz|}} http://git.icinga.org/icingaweb2.git **Step 2: Install the Source** Choose a target directory and move Icinga Web 2 there. mkdir /usr/share/icingaweb2 tar -zxvf icingaweb2-06d9e41.tar.gz mv icingaweb2 /usr/share/icingaweb2 **Step 3: Configuring the Web Server** Use //**icingacli**// to generate web server configuration for either Apache or nginx. cd /usr/share/icingaweb2 **Apache:** ./bin/icingacli setup config webserver apache --document-root /usr/share/icingaweb2/public Save the output as new file in your webserver's configuration directory. **Step 4: Preparing Web Setup** Because both web and CLI must have access to configuration and logs, permissions will be managed using a special system group. The web server user and CLI user have to be added to this system group. Add the system group **icingaweb2** in the first place. addgroup --system icingaweb2 Add your web server's user to the system group **icingaweb2**: usermod -a -G icingaweb2 www-data Use **icingacli** to create the configuration directory which defaults to **/etc/icingaweb2**: ./bin/icingacli setup config directory When using the web setup you are required to authenticate using a token. In order to generate a token use the **icingacli**: ./bin/icingacli setup token create In case you do not remember the token you can show it using the **icingacli**: ./bin/icingacli setup token show **Step 5: Web Setup** Visit Icinga Web 2 in your browser and complete installation using the web setup: **/icingaweb2/setup**